man sg_read (Administration système) - read blocks of data continually from same offset

NAME

sg_read - read blocks of data continually from same offset

SYNOPSIS

sg_read [OPTION]...

DESCRIPTION

Read data from a Linux SCSI generic (sg) device, a raw devices or a normal file with each read command issued to the same offset. This will test (or time) disk caching and/or SCSI (or some other) bus throughput.

bpt=BLOCKS
each read operation will be made using this number of blocks (or less if near the end of count). Default is 128. Note also that each read operation starts at the same offset (as given by skip or 0).
bs=BYTES
this must be the block size of the physical device (defaults to 512)
count=BLOCKS
read this number of blocks. This argument must be given
if=FILE
read from this FILE. This argument must be given
skip=BLOCKS
all read operations will start offset by BLOCKS bs-sized blocks from the start of input (file or device)
time=0 | 1 | 2
When 0 (default) doesn't perform timing. when 1, times transfer and does throughput calculation, starting at the first issued command until completion. When 2, times transfer and does throughput calculation, starting at the second issued command until completion

The input file must be either a sg device, a raw device or a normal file. A raw device must be bound to a block device prior to using sg_raw. See raw(8) for more information about binding raw devices.

BYTES and BLOCKS may be followed by the following multiplicative suffixes: c C *1; b B *512; k *1,024; K *1,000; m *1,048,576; M *1,000,000; g *1,073,741,824; and G *1,000,000,000

EXAMPLES

Let us assume that /dev/sg0 is a disk and we wish to time the disk's cache performance.

sg_read if=/dev/sg0 bs=512 count=1M time=2

This command will continually read 128 512 byte blocks from block 0. The "128" is the default value for "bpt" while "block 0" is chosen because the "skip" argument was not given. This will continue until 1,000,000 blocks are read. The idea behind using "time=2" is that the first 64 KB read operation will involve reading the magnetic media while the remaining read operations will "hit" the disk's cache. The output of thid command will look like this:

time from second command to end was 8.51 secs, 60.19 MB/sec

1000000+0 records in, SCSI commands issued: 7813

AUTHORS

Written by Doug Gilbert.

REPORTING BUGS

Report bugs to <dgilbert@interlog.com>.

COPYRIGHT

Copyright © 2000-2002 Douglas Gilbert

This software is distributed under the GPL version 2. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

SEE ALSO

To time streaming media read or write time see sg_dd is in the sg_utils package. The lmbench package contains lmdd which is also interesting. raw(8), dd(1)