The I/O time is the mean operating time for an I/O job. With openSM2, the I/O time can be output on a file-specific basis via the measurement program FILE-STATISTICS (see the “openSM2” manual [7 (Related publications)]). The I/O time generally consists of the following measurements:
where:
RDhit | Number of read hits. |
WRhit | Number of write hits (only for write or read/write cache). |
tHit | Duration of a hit (0.1 ms to 0.2 ms depending on CPU and cache medium). |
RDmiss | Number of read misses (only for read or read/write cache). |
tGB | Duration of segment caching, generally dependent on disk type and load as well |
RD | Number of read accesses to disk (only for write cache). |
WR | Number of write accesses to disk (only for read cache). |
tdisk | Mean disk access time = mean positioning time and rotational delay + transfer |
To improve I/O time, a minimum read hit rate, dependent on the segment size, should be achieved (see also
figure 7). File access times will always be improved for write jobs, provided write caching is enabled and free DAB segments are available.
Detailed evaluation
A) Read cache
The I/O time for read jobs is essentially determined by the hit rate. To improve the I/O time, a minimum hit rate, dependent on the segment size, should be achieved (see the figure below).
where:
RDhit | is dependent on the cache size set, the access behavior |
WRhit = 0 | Write jobs are always executed on disk (WR). If the block concerned |
RDmiss | A miss causes segment caching to be initiated. |
RD = 0 | Read jobs are always served from the cache area. |
Figure 7: I/O times using the read cache (100% read share, random access, 2KB block size)
The figure 7 shows how the I/O time is reduced by DAB. The reduction is relative to the I/O time of the data media with direct disk drive access (e.g. approximately 11 ms for 3421, approximately 0.5 to 3.5 ms for a Symmetrix disk storage system with 100% or 70% overall hit rate). The hit rate and therefore the I/O times with AutoDAB are generally within the shaded area.
B) Write cache
With write jobs, the segments to be written are always transferred to the DAB cache area first, thus ensuring an excellent I/O time. Depending on the FORCE-OUT operand (see "CPU utilization"), the DAB task asynchronously saves written segments to disk, attempting to chain several segments. With a very small cache area, there may be a temporary lack of free segments; in this case, the segments are written directly to disk (cache overflow).
where:
RDhit | is dependent on the cache size set, the access behavior of write jobs and the |
WRhit | Segments to be written are always transferred to the cache first, provided there |
RDmiss = 0 | A read miss causes the data to be read from disk without being cached, i.e. a normal read access (RD) to disk is executed. |
C) Read/write cache
Again, all write jobs are accelerated here. This results in improved I/O time even with relatively low read hit rates. Again, I/O time improvement is dependent on hit rate and segment size.
where:
RDhit / WRhit | are dependent on the cache size set, the access behavior and the segment size |
RD = 0 WR = 0 | see A) read cache. see B) write cache. |
The behavior shown in figure 7 also applies to the read/write cache. The values for the read/write cache are close to those for the pure read cache in the highlighted area.