========== iozone ========== IOzone is designed to be a filesystem benchmark tool. It is configured to run on any of the ext2, ext3, reiserfs, JFS, or XFS filesystems in OSDL STP. The benchmark generates and measures a variety of file operations, such as: sequential read, sequential write, read strided (RAID), fread, fwrite, random read, and random write. It also supports using multiple I/O threads. However, all of its I/Os are in the same direction and of fixed sizes in each size group. It is designed to measure filesystem performance at a variety of I/O request sizes and to produce a report showing the relationship between throughput and I/O request size. IOzone is a complete system benchmark (file system, disk drivers, disk subsystem, RAID, memory bus, memory subsystem, OS system calls). However, for comparing file systems, it is best used in its "buffer cache performance comparison" mode [opinion]. This mode uses file sizes that are smaller than the buffer cache so that actual disk I/O is limited and the filesystem code becomes more critical. IOzone can show differences in I/O throughput when the file size is contained in processor cache, OS cache (RAM), and too large to fit into cache. Sometimes these three levels (or plateaus) are visible in the data, especially when graphed. IOzone can also be used to show throughput performance as a function of number of processes and number of disks being used in a filesystem, such as RAID striping.