v7000 VDisk Cache Test
Each node canister in the control enclosure has the cache memory, the internal drives to store software and logs, and the processing power to run the Storwize V7000 virtualizing and management software. The two nodes within a canister make an I/O group that is attached to the SAN fabric. VDisks are also associated with the I/O group. I/O traffic for a particular VDisk is, at any one time, managed exclusively by the nodes in a single I/O group. You can even set a particular node in an I/O group as the preferred node for the VDisk. In this case, read I/O to that VDisk is processed by first referencing the cache in the preferred node of the VDisk. If the preferred node is inaccessible, then the cache of the partner node is referenced. Likewise, write operations to a VDisk are first targeted at the preferred node of that VDisk. The write operation is then cached in the preferred node and a copy of the data is made in the cache of the partner node in the I/O group. Only then is the write deemed as complete. The data so written is destaged to the disk at a later time.
The key purpose of the VDisk cache is to buffer I/O, allow the quick completion of I/O operations, and to avoid (or at least, minimize) direct disk accesses. If the cache does not contain the data that the read I/O references and does not have the space to accommodate the data blocks written to it by the write I/O, direct disk accesses are bound to increase. Reading from and writing directly to disk are expensive operations that consume time and resources. If this is to be avoided, the VDisk cache has to be optimally sized and utilized. But, how does one know how well the cache is being used? For this, you can use the v7000 Disk Cache test. For each VDisk in the IBM Storwize v7000 storage system, this test monitors the I/O load on the VDisk, reports how well the cache services the read and write I/O load, and in the process, indicates whether/not the cache has been effectively utilized. I/O processing bottlenecks (if any) in the VDisk and inoptimal cache usage can thus be detected and the reasons for the same investigated.
Target of the test : An IBM Storwize v7000 storage system
Agent deploying the test : A remote agent
Outputs of the test : One set of results for the cache of each VDisk of the IBM Storwize v7000 storage system being monitored.
Parameter | Description |
---|---|
Test Period |
How often should the test be executed. |
Host |
The host for which the test is to be configured. |
Port |
The port number at which the specified host listens to. By default, this is NULL. |
Timeout |
Specify the duration (in seconds) beyond which the test will timeout in the Timeout text box. The default value is 60 seconds. |
Measurement | Description | Measurement Unit | Interpretation |
---|---|---|---|
Sectors read |
Indicates the rate at which the sectors are read from this VDisk. |
Sectors/Sec |
Comparing these measures across the VDisks helps you to identify the VDisks that are currently busy processing the I/O operations. |
Sectors written |
Indicates the rate at which the sectors are written on this VDisk. |
Sectors/Sec |
|
Prestage sector count |
Indicates the rate at which prestage sectors were initiated by the cache of this VDisk. |
Sectors/Sec |
To reduce latency, the storage systems typically uses prestage operations to retrieve data from a disk drive into a cache before the data is retrieved by the next host I/O request. The value of this measure therefore indicates how much data per second was read-ahead into the cache by the storage system. Ideally, this value should be high, so that enough data is prestaged. |
Read cache sector hits |
Indicates the number of sectors (of prestaged or non-prestaged data) that were read from the cache every second to service read I/O requests to this VDisk. |
Sectors/Sec |
Ideally, the value of this measure should be high. A consistent drop in this value is a cause for concern, as it could indicate that read I/O requests are not being frequently serviced by the cache. This in turn implies low cache usage and high disk usage. |
Read cache prestaged sector hits |
Indicates the number of sectors (of prestaged data) that were read from the cache every second to service read I/O requests to this VDisk. |
Sectors/Sec |
Ideally, the value of this measure should be high. A high value could indicate that many host I/O requests were serviced by data that was read into the cache, well ahead of the requests. Since prestaging reduces latency to a great extent, a high value is a sign of good cache health. |
Read cache sector misses |
Indicates the rate at which the sectors were read for a read I/O request to this VDisk that has cache misses. |
Sectors/Sec |
A low value is desired for this measure. A high value indicates too many cache misses, which in turn, is indicative of poor cache configuration. |
Track destage sector count |
Indicates the rate at which the sectors were written for the track writes initiated by this VDisk’s cache. |
Sectors/Sec |
|
Flush through sector writes |
Indicates the rate at which the sectors were written using flush through write mode for the write requests to this VDisk. |
Sectors/Sec |
|
Write through sector writes |
Indicates the rate at which the sectors were written using write through write mode for the write requests to this VDisk. |
Sectors/Sec |
In the write-through mode, write is done synchronously to both the cache and to the disk. Write-through is the mode to set where workload is high. |
Fast write sector writes |
Indicates the rate at which the sectors were written using fast write mode for the write requests to this VDisk. |
Sectors/Sec |
Fast write cache (FWC) is an optional nonvolatile cache that provides redundancy with the standard adapter cache. The FWC tracks writes that have not been committed to disk. Fast write cache can significantly improve the response time for write operations. However, care must be taken not to flood the cache with write requests faster than the rate at which the cache can destage its data. FWC can also adversely affect the maximum I/O rate because additional processing is required in the adapter card to determine if the data that is being transferred is in the cache.
|
Lack of memory fast write track sec |
Indicates the rate at which the sectors that were processed in fast-write mode were written using write-through mode owing to lack of memory in this VDisk’s cache. |
Sectors/Sec |
|
Dirty data write hit sectors |
Indicates the rate at which the write requests to this VDisk were serviced by sectors from dirty data in the cache. |
Sectors/Sec |
|
Write cached data |
Indicates the amount of modified/dirty data that is held in this VDisk cache. |
MB |
A consistent increase in the value of this measure indicates that data destaging is not occurring frequently – i.e., data is not being flushed to the disk at regular intervals. If the situation persists, the cache may fill up to capacity and may reject subsequent entries. This can increase cache misses and degrade I/O performance of the storage system. |
Read and write cached data |
Indicates the amount of data that is held in this VDisk cache. |
MB |
A consistent increase in the value of this measure could indicate one or both of the following:
If the situation persists, the cache may fill up to capacity and may reject subsequent entries. This can increase cache misses and degrade I/O performance of the storage system. To avoid such an eventuality, you may want to fine-tune your cache algorithm to make it more efficient. |