IOzone Filesystem Benchmark


The Infoworld Best of Open Source award

IOzone is a filesystem benchmark tool. The benchmark generates and measures a variety of file operations. Iozone has been ported to many machines and runs under many operating systems.

Iozone is useful for performing a broad filesystem analysis of a vendorís computer platform. The benchmark tests file I/O performance for the following operations:

    Read, write, re-read, re-write, read backwards, read strided, fread, fwrite, random read, pread ,mmap, aio_read, aio_write
The HFS Normal Read graph illustrates the single stream performance of reading files in various record

The Read Throughput Scaling graph reveals the total I/O that the system delivers to multiple processes or threads as the number of disks in a striped filesystem are varied.  Click on image for a larger view.

Benchmark Features:

  • ANSII C source
  • POSIX async I/O
  • Mmap() file I/O
  • Normal file I/O
  • Single stream measurement
  • Multiple stream measurement
  • Distributed fileserver measurements (Cluster)
  • POSIX pthreads
  • Multi-process measurement
  • Excel importable output for graph generation
  • Latency plots
  • 64bit compatible source
  • Large file compatible
  • Stonewalling in throughput tests to eliminate straggler effects
  • Processor cache size configurable
  • Selectable measurements with fsync, O_SYNC
  • Builds for: AIX, BSDI, HP-UX, IRIX, FreeBSD, Linux, OpenBSD, NetBSD, OSFV3, OSFV4, OSFV5, SCO OpenServer, Solaris, MAC OS X, Windows (95/98/Me/NT/2K/XP)

While computers are typically purchased with an application in mind it is also likely that over time the application mix will change. Many vendors have enhanced their operating systems to perform well for some frequently used applications. Although this accelerates the I/O for those few applications it is also likely that the system may not perform well for other applications that were not targeted by the operating system. An example of this type of enhancement is: Database. Many operating systems vendors have tested and tuned the filesystem so it works well with databases. While the database users are happy, the other users may not be so happy as the entire system may be giving all of the system resources to the database users at the expense of all other users. As time rolls on the system administrator may decide that a few more office automation tasks could be shifted to this machine. The load may now shift from a random reader application (database) to a sequential reader. The users may discover that the machine is very slow when running this new application and become dissatisfied with the decision to purchase this platform. By using Iozone to get a broad filesystem performance coverage the buyer is much more likely to see any hot or cold spots and pick a platform and operating system that is more well balanced.

The NFS3 Read Latency graph shows the latency of 4k read operations over an NFS Version 3 filesystem mounted on a client running Iozone. Click on image for a larger view.

The NFS3 Read Latency graph shows the latency of 4k read operations over an NFS Version 3 filesystem mounted on a client running Iozone.  Click on image for a larger view.

The NFS3 Re-read Latency graph shows the re-read latency of 4k reads over an NFS Version 3 filesystem.  One can clearly see the effects of the client side cache. Here the latencies are the same as local buffer cache latencies.  Click on image for larger view.

The NFS3 Re-read Latency graph shows the re-read latency of 4k reads over an NFS Version 3 filesystem. One can clearly see the effects of the client side cache. Here the latencies are the same as local buffer cache latencies. Click on image for larger view.

Download Documentation: [ Iozone License ] [ PDF ] [ Postscript gzip ] [ MS Word Doc ]

Download Source:
[Latest tarball] [Latest files] [Stable tarball] [Stable files]
[Linux SRPM ]
[Linux i386 RPM ]
[Windows ]
[Contact capps@iozone.org to purchase the Excel spreadsheet with extensive Visual Basic macros to automatically generate the 3D graphs. Click to see the example output. ]

Typical Linux result example with annotations.
(Click on tabs at the bottom of the graph to see all of the results):

Linux Iozone graph example.


Typical Windows2000 result example with annotations.
(Click on tabs at the bottom of the graph to see all of the results):

Windows 2000 Iozone graph example.


Apple's Xserver.
(Click on tabs at the bottom of the graph to see all of the results):

Apple's Xserver.


Comparisions of various filesystem types.
(Click on tabs at the bottom of the graph to see all of the results):

File system comparisons.

NFS Presentation:

Powerpoint: NFS PowerPoint presentation.

MS Word: NFS MS Word presentation.

PDF : Revised NFS Client performance presentation.

MS Excel: NFS Throughput example.

Questions: email capps@iozone.org

Interested in NFSV4 ?: NFSV4 info


Iozone Lab Tour 1: Click Here


Iozone Lab Tour 2: Click Here

Don't forget to tryout the new "fileop" that is included in the Iozone kit.

Fileop graph example.


The Windows version of Iozone uses the Cygwin runtime. The sources for this may be obtained by clicking on the link below. However, I strongly recommend that the user visit http://www.cygwin.com and obtain everything from the original site. They have great stuff there and you'll thank me :-)

Cygwin DLL source code


I also volunteer at a special needs school. They are a non-profit school for special needs children (K->12). The link below is a quick ref and contact list for the school. (Any donations would be very welcome :-)

Great Lakes Academy.


Last Updated: Oct 28th 16:00:00 EST 2006

webmaster@iozone.org