4285ch02.fm Draft Document for Review May 4, 2007 11:35 am
72 Linux Performance and Tuning Guidelines
򐂰make see: Finally after a minimum of three runs the results can be viewed using the make
see command. The results will be displayed and can be copied to a spreadsheet
application for further analysis or graphical representation of the data.
The LMbench benchmark can be found at http://sourceforge.net/projects/lmbench/
2.4.2 IOzone
IOzone is a file system benchmark that can be utilized to simulate a wide variety of different
disk access patterns. Since the configuration possibilities of IOzone are very detailed it is
possible to simulate a targeted workload profile very precisely. In essence IOzone writes one
or multiple files of variable size using variable block sizes.
While IOzone offers a very comfortable automatic benchmarking mode it is usually more
efficient to define the workload characteristic such as file size, I/O size and access pattern. If
a file system has to be evaluated for a database workload it would be sensible to cause
IOzone to create a random access pattern to a rather large file at large block sizes instead of
streaming a large file with a small block size. Some of the most important options for IOzone
are:
-b <output.xls> Tells IOzone to store the results in a Microsoft® Excel® compatible
spreadsheet
-C Displays output for each child process (can be used to check if all
children really run simultaneously)
-f <filename> Can be used to tell IOzone where to write the data
-i <number of test> This option is used to specify what test are to be run. You will always
have to specify -i 0 in order to write the test file for the first time.
Useful tests are -i 1 for streaming reads and -i 2 for random read and
random write access as well as -i 8 for a workload with mixed random
access
-h Displays the onscreen help
-r Tells IOzone what record or I/O size that should be used for the tests.
The record size should be as close as possible to the record size that
will be used by the targeted workload
-k <number of async I/Os>
Uses the async I/O feature of kernel 2.6 that often is used by
databases such as IBM DB2®
-m Should the targeted application use multiple internal buffers then this
behavior can be simulated using the -m flag
-s <size in KB> Specifies the file size for the benchmark. For asynchronous file
systems (the default mounting option for most file systems) IOzone
should be used with a file size of at least twice the systems memory in
order to really measure disk performance. The size can also be
specified in MB or GB using m or g respectively directly after the file
size.
-+u Is an experimental switch that can be used to measure the processor
utilization during the test