Performance Monitoring and Optimization
Performance questions test whether you can pick the right metric, locate the constrained layer, and choose a control that actually changes behavior.
Metrics and where they live
- Core metrics: IOPS, MB/s (throughput), response time in milliseconds, queue depth, % busy and cache hit ratio. Look at them per storage group, per SRP, per front-end port and per RDF group.
- Real-time views answer "what is happening now"; historical views answer "what changed". Unisphere for PowerMax exposes both, and
symstat -sid 123 -type sg -i 30 -c 10samples storage group statistics every 30 seconds, ten times. - Service level compliance compares an SRP's configured workload profile with the observed behavior of its storage groups; sustained non-compliance generates alerts and deserves investigation rather than dismissal.
Triage order
- Host and multipath (is one HBA carrying everything?).
- Fabric: port % busy, CRC and link errors.
- Array front end: queue depth and response time per port.
- SRP and back end: drive utilization, snapshot or clone activity.
- Replication: SRDF link lag and RDF group response time.
Controls you can apply
- Host I/O limits cap IOPS and MB/s for a storage group (through limit groups attached to views or groups). The two limits apply independently, so a MB/s limit alone will not cap small-block IOPS.
- Service level choice sets the workload profile; moving a workload means provisioning or migrating it to a different SRP.
- Snapshots and clones add background activity; heavy link or restore work shows up as latency on the source side.
Worked example
A storage group reports 12 ms average response time while the SRP average is 1.4 ms. The group's IOPS is pinned at exactly 20,000, which is its configured host I/O limit, and front-end queue depth is high for that group only. Diagnosis: the limit is shaping traffic and the resulting queueing produces the latency. The back end is not the bottleneck. The fix is to raise or remove the limit (or accept it as intentional protection), not to add drives or change service level.
Traps
- Judging a single-host problem from array-wide averages.
- Confusing IOPS limits with throughput limits.
- Assuming high cache hit ratio means fast response time; queueing can dominate.
- Looking only at the SRP when a host I/O limit is the constraint.
- Treating real-time samples as history, or historical averages as current state.