Monitoring Performance

Use the Performance Monitor to monitor Storage Subsystem performance in real-time and save performance data to a file for later analysis.

Important:

How to Monitor Performance

1 From the Subsystem Management Window, do one of the following:
  • Select the Performance Monitor toolbar button .
  • Select the Storage Subsystem >> Monitor Performance pull-down menu option.
  • Select the Storage Subsystem node in the Logical View, then Monitor Performance from the right-mouse pop-up menu.

    Result: The Performance Monitor dialog is displayed.
2 Select Settings to specify the logical drives and/or controllers to monitor and to specify the polling interval. To change the polling interval, choose a number of seconds in the spin box. Each time the polling interval elapses, the Performance Monitor re-queries the Storage Subsystem and updates the statistics in the table.
3 Select Start.

Result:

  • The Start: field at the bottom of the dialog records the current date and time. This information is displayed on the screen until you select Stop. (When you select Stop, the Stop: field at the bottom of the dialog records the stop date and time).
  • The Time Monitored: field displays the elapsed time between the present time and the time the Start button was selected.
  • Values are displayed for the selected devices in the Performance Monitor data table. It is updated at the interval specified in the Polling Interval setting. Press Update to force an immediate poll of the Storage Subsystem. For more information, see Interpreting Storage Subsystem Performance Data.
4 Select Stop to stop monitoring the Storage Subsystem.

Interpreting Storage Subsystem Performance Data

The columns in the Performance Monitor data table are described next. Use this data to make performance tuning decisions for your Storage Subsystem. For more information, see How to Tune Storage Subsystem Performance.

Column Description
Devices The Device column can display the following values:
  • Controller, shown as Controller in Slot A or B - Represents the totals for all logical drives owned by the controller, not just the logical drives presently selected for monitoring.
  • Logical Drive, shown as Logical Drive name; where Logical Drive name is the name assigned to the logical drive when it was created or after it was renamed.
  • Storage Subsystem Totals - represents the totals for both controllers in an active-active controller pair, regardless if one, both, or neither are selected for monitoring.
Total I/Os The number of total I/Os performed by this device since the Start button was pressed. When this number exceeds 99,999, it is displayed in thousands (K), beginning with 100K until the number reaches 9999K, at which time it is displayed in millions (M). For amounts greater than 9999K but less than 100M, the value is displayed in tenths (for example, 12.3M).
Read Percentage The percentage of total I/Os (previous column) that are read operations for this device. Write percentage can be calculated as 100 minus this value.
Cache Hit Percentage The percentage of reads that are fulfilled by data from the cache rather than requiring an actual read from disk.
Current KB/second The current KB/second, or transfer rate. Current means the number of KB/second since the last time the polling interval elapsed, causing an update to occur, or since the Update button was pressed.
Maximum KB/second The highest value achieved by the current KB/second column for this polling session (since Start was selected.)
Current IO/second The current I/Os per second. Current means the number of I/Os per/second since the last time the polling interval elapsed, causing an update to occur; or, since Update was pressed.
Maximum IO/second The highest value achieved by the current I/Os per/second column for this polling session (since Start was selected.)

How to Save Performance Data to a File

1 Select Save As on the Performance Monitor main screen to save the currently displayed performance statistics.

Result: The Save Performance Statistics dialog is displayed.
2 Save the selected events by choosing an appropriate directory and filename.

The Save dialog can filter on files with a .perf extension. Therefore, you may want to save the file with a .perf extension using the filename conventions you used for any previous performance monitor statistics files. The .perf extension is the default.
3 Type the file name of your choice in the File name text box.

Example: Name the file feb14A.perf.
4 Select the file type of your choice in the Files of type text box.

File Type Select this type when...
Report Format You want to save the data in a report form for viewing or printing.
Comma Delimited Format You want to save the data in a form that can be imported into a commercial spreadsheet application for further analysis (most leading commercial spreadsheet applications recognize a comma delimiter and use the delimiter to import the data into spreadsheet cells appropriately.)
5 Select Save.

Result: A file containing the performance statistics, with a .perf extension or another extension you have specified, is saved to the directory.

How to Tune Storage Subsystem Performance

Use Performance Monitor data to make Storage Subsystem tuning decisions, as described in the table below.

Data Implications for performance tuning
Total I/Os This data is useful for monitoring the I/O activity of a specific controller and a specific logical drive. This is needed to identify possible high-traffic I/O areas.

Identify actual I/O patterns to the individual logical drives and compare those with the expectations based on the application. If a particular logical drive has considerably more I/O activity, consider moving the logical drive to the other controller in the Storage Subsystem.

You might notice a disparity in the Total I/Os (workload) of controllers, for example, the workload of one controller is heavy or is increasing over time while the workload of the other controller is lighter or more stable. In this case, you might consider changing the controller ownership of one or more arrays to the controller with the lighter workload. Use the logical drive Total I/O statistics to determine which arrays to move. See Changing Controller Ownership.

If you notice the workload across the Storage Subsystem (Storage Subsystem Totals Total I/O statistic) continues to increase over time while application performance decreases, this might indicate the need to add additional Storage Subsystems to your enterprise so that you can continue to meet application needs at an acceptable performance level.
Read Percentage Use the Read Percentage for a logical drive to determine actual application behavior. If there is a low percentage of read activity relative to write activity, you might consider changing the RAID level of an array from RAID 5 to RAID 1 for faster performance. See Changing the RAID Level of an Array.
Cache Hit Percentage A higher percentage is desirable for optimal application performance.

The cache hit percentage of all of the logical drives may be low or trending downward. At the Storage Subsystem or controller level, this can indicate the need to install more controller cache memory if you do not have the maximum amount of memory installed.

If an individual logical drive is experiencing a low cache hit percentage, consider enabling cache read ahead for that logical drive. Cache read ahead can increase the cache hit percentage for a sequential I/O workload.

Determining the effectiveness of a logical drive cache read ahead multiplier

To determine if your I/O has sequential characteristics, try enabling a conservative cache read-ahead multiplier (4, for example) using the Logical Drive >> Properties option. Then, examine the logical drive cache hit percentage to see if it has improved. If it has, indicating that your I/O has a sequential pattern, enable a more aggressive cache read-ahead multiplier (8, for example). Continue to customize logical drive cache read-ahead to arrive at the optimal multiplier (in the case of a random I/O pattern, the optimal multiplier is zero). See, Specifying Logical Drive Properties. There is a positive correlation between the cache hit percentage and I/O rates.
Current KB/sec and Maximum KB/sec The transfer rates of the controller are determined by the application I/O size and the I/O rate. In general, a small application I/O request size results in a lower transfer rate but provides a faster I/O rate and a shorter response time. With larger application I/O request sizes, higher throughput rates are possible. Understanding your typical application I/O patterns can give you an idea of the maximum I/O transfer rates that are possible for a given Storage Subsystem.

Consider a Storage Subsystem equipped with controllers and fibre channel interfaces that supports a maximum of 100 MB per second transfer rate, or 100,000 KB per second. You are typically achieving an average transfer rate of 20,000 KB per second on the Storage Subsystem. This KB per second average transfer rate is a function of the typical I/O size for the applications using the Storage Subsystem. (The typical I/O size for your applications is 4K, 5,000 I/Os can be transferred per second to reach an average transfer rate of 20,000 KB.) In this case, I/O size is small and there is system overhead associated with each I/O transferred, so you can never expect to see transfer rates that approach 100,000 KB per second. However, if your typical I/O size is large, a transfer rate within a range of 80,000 - 90,000 KB per second might be achieved.

Wide Ultra SCSI supports sustained data transfer rates of up to 40MB/second with large host I/O sizes. The maximum transfer rates with relatively small I/O sizes, 4096 bytes, is approximately 17 MB/second.
Current I/O per sec and Maximum I/O per sec Factors that affect I/Os per second statistics include access pattern (random or sequential), I/O size, RAID level, segment size, and number of drives in the arrays or Storage Subsystem. The higher the cache hit rate, the higher I/O rates will be.

Performance improvements due to a segment size change can be seen in the I/Os per second statistics for a logical drive. Use I/O patterns to determine the optimal segment size. For more information, see Changing Segment Size.

Higher write I/O rates are experienced with write caching enabled compared to disabled. In deciding whether to enable write caching for an individual logical drive, consider the current and maximum I/Os per second. You should expect to see higher rates for sequential I/O patterns than for random I/O patterns. Regardless of your I/O pattern, it is recommended that write caching be enabled to maximize I/O rate and shorten application response time. For more information, see Specifying Logical Drive Properties.