Chapter 2. Monitoring and benchmark tools 73
Draft Document for Review May 4, 2007 11:35 am 4285ch02.fm
Using IOzone to measure the random read performance of a given disk subsystem mounted
at /perf for a file of 10 GB size at 32KB I/O size (these characteristics could model a simple
database) would look as follows:
Example 2-26 A sample IOzone command line
./iozone -b results.xls -R -i 0 -i 2 -f /perf/iozone.file -r 32 -s 10g
Finally, the obtained result can be imported into your spreadsheet application of choice and
then transformed into graphs. Using a graphical output of the data might make it easier to
analyze a large amount of data and to identify trends. A sample output of the example above
(refer to Example2-26) might look like the graphic displayed in Figure 2-17.
Figure 2-17 A graphic produced out of the sample results of Example 2-26
If IOzone is used with file sizes that either fit into the system’s memory or cache it can also be
used to gain some data about cache and memory throughput. It should however be noted that
due to the file system overheads IOzone will report only 70-80% of a system’s bandwidth.
The IOzone benchmark can be found at http://www.iozone.org/
2.4.3 netperf
netperf is a performance benchmark tool especially focusing on TCP/IP networking
performance. It also supports UNIX domain socket and SCTP benchmarking.
netperf is designed based on a client-server model. netserver runs on a target system and
netperf runs on the client. netperf controls the netserver and passes configuration data to
Note: Any benchmark using files that fit into the systems memory and that are stored on
asynchronous file systems will measure the memory throughput rather than the disk
subsystem performance. Hence you should either mount the file system of interest with the
sync option or use a file size roughly twice the size of the systems memory.
0
20000
40000
60000
80000
100000
120000
kB/sec
Writer Report Re-writer Report Random Read
Report
Random Write
Report
10 GB File Access at 32 KB I/O Size