User guide
138 Statistics
Read-Ahead Statistics
If sequential read commands are sent to the controller, it assumes that the commands which follow
may also be sequential. It can then go and perform a read of the data, before the host requests it.
This improves performance, particularly for smaller reads. The size of the read-ahead is calculated
based on the original command size, so the controller does not read too much data. The controller
maintains statistics for all read-ahead commands performed.
Figure 108. Statistics Screen - Read-Ahead Tab
Statistic Description
Sequential Command Interval
In determining whether to perform a read-ahead
or not, the controller will search back in the
command queue whenever it receives a new
read command that is not satisfied by an existing
read-ahead cache buffer. In a multi threaded
operating system, commands from one thread
may be interspersed with commands from
another thread.
This requires that the controller not just check the
immediately previous command. The controller
will search back for a number of commands, to
see if the new command is exactly sequential
to any one of these previous commands. If it
is, then the controller determines that the data
access pattern is sequential, and so performs a
read-ahead. These statistics record the average
number of commands the controller must search
back for when it finds a sequential command
match, the maximum number, and also the
percentage for each one of these values. These
give an indication of the multi threaded nature of
the host.