Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

zcav(8) [debian man page]

zcav(8) 						      System Manager's Manual							   zcav(8)

NAME
zcav - program to test raw hard drive throughput. SYNOPSIS
zcav [-b block-size[:chunk-size]] [-c count] [-r [first-block]:last-block] [-w] [-s skip-rate] [-u uid-to-use:gid-to-use] [-g gid-to-use] [-l log-file] [-f] file-name [-l log-file [-f] file-name]... DESCRIPTION
This manual page documents briefly the zcav, program. Modern hard drives have a constant rotational speed but have varying numbers of sectors per track (outside tracks are longer and have more sectors). This is referred to as Zoned Constant Angular Velocity (or ZCAV). The outer tracks will have a higher data transfer rate due to having more sectors per track, these tracks generally have the lower track/sector numbers. This program tests the ZCAV performance of a hard drive, by reading the entire data on it a specified number of times. The file name given as the first parameter, it can be specified as -, for standard input. This file will be opened as read-only and in usual operation it will be /dev/hdX or /dev/ide/host0/busX/targetY/lun0/disc depending on whether you use devfs or not (NB operating systems other than Linux will have different device names). The output should be able to be easily graphed with gnuplot which is what I use to view the results. OPTIONS
-b the size (in Meg) of the blocks to read/write (default 100M), optionally followed by a ':' and the chunk size for read/write opera- tions (default 1M). Note that the chunk size must be less than or equal to the block size and must also be significantly less than the size of the RAM in the machine. Also note that for the write test there will be a fsync() after writing every chunk. -c the number of times to read/write the entire disk. -r the range of data (in Meg) to read/write on each pass (default the entire device). Useful if you want to quickly test part of a large drive. If a single number is given then that is the last block to read, if two numbers then it's the start and end of a range. Values are in megs, but they are rounded down to the block size. -s skip rate. The option -s 10 will cause it to read every 10th block and skip the rest. -f the file-name for the input data. This isn't needed on well configured systems that have a recent Glibc where you can specify the file name without the -f flag. -u user-id to use. When running as root specify the UID to run the tests as, it is not recommended to use root, so if you want to run as root use -u root. Also if you want to specify the group to run as then use the user:group format. If you specify a user by name but no group then the primary group of that user will be chosen. If you specify a user by number and no group then the group will be nogroup. -g group-id to use. Same as using :group for the -u parameter, just a different way to specify it for compatibility with other pro- grams. -w write zero blocks to the disk instead of reading from the disk - will destroy data! AUTHOR
This program, it's manual page, and the Debian package were written by Russell Coker <russell@coker.com.au>. AVAILABILITY
The source is available from http://www.coker.com.au/bonnie++ . See http://etbe.coker.com.au/category/benchmark for further information. zcav(8)

Check Out this Related Man Page

getc_putc(8)						      System Manager's Manual						      getc_putc(8)

NAME
getc_putc - program to test hard drive performance. SYNOPSIS
getc_putc [-d dir] [-s size(KiB)] [-m machine-name] [-u uid-to-use:gid-to-use] [-g gid-to-use] DESCRIPTION
This manual page documents briefly the getc_putc, program. This is a simple adjunct to the bonnie++ benchmark. It is used to test various ways of doing IO one byte at a time, usually you don't need to do enough of this for it to be a performance issue for it to matter much which way you do it. But sometimes it's necessary (for example whan parsing IO from a terminal and then launching another process which will take over all IO, such as a simple shell). The real benefits of this are to help settle some arguements about the performance of such things, and to educate novices about how bad per-byte IO really is. OPTIONS
For getc_putc every option is of the form of a hyphen followed by a letter and then the next parameter contains the value. -d the directory to use for the tests. -s the size of the file for byte IO performance measured in kilobytes. NB You can specify the size in mega-bytes if you add 'm' to the end of the number. The default for this test is to test with a 40MiB file. Of the file only 1/32 of it will be used for write() and read() system calls (anything else takes too long), and only 1/4 of it will be used for locked getc() and putc(). -m name of the machine - for display purposes only. -u user-id to use. When running as root specify the UID to use for the tests. It is not recommended to use root, so if you really want to run as root then use -u root. Also if you want to specify the group to run as then use the user:group format. If you spec- ify a user by name but no group then the primary group of that user will be chosen. If you specify a user by number and no group then the group will be nogroup. -g group-id to use. Same as using :group for the -u parameter, just a different way to specify it for compatibility with other pro- grams. -q quiet mode. If specified then some of the extra informational messages will be suppressed. Also the csv data will be the only output on standard out and the plain text data will be on standard error. This means you can run getc_putc -q >> file.csv to record your csv data. OUTPUT
The primary output is plain-text in 80 columns which is designed to fit well when pasted into email and which will work well with Braille displays. The second type of output is CSV (Comma Seperated Values). This can easily be imported into any spread-sheet or database program. For every test the result is a speed in KiB/s. I do not display the CPU time because it presumably is 99% of the power of a single CPU (or something very close to that). AUTHOR
This program, it's manual page, and the Debian package were written by Russell Coker <russell@coker.com.au>. The documentation, the Perl scripts, and all the code for testing the creation of thousands of files was written by Russell Coker, but the entire package is under joint copyright with Tim Bray. SIGNALS
Handles SIGINT and does a cleanup (which may take some time), a second SIGINT or a SIGQUIT will cause it to immidiately die. SIGXCPU and SIGXFSZ act like SIGINT. Ignores SIGHUP. AVAILABILITY
The source is available from http://www.coker.com.au/bonnie++ . See http://etbe.coker.com.au/category/benchmark for further information. SEE ALSO
bonnie++(8), zcav(8) getc_putc(8)
Man Page