Bonnie

The program bonnie allows you to test the performance of writing to your filesystem. Advantage and Disadvantage compared with hdparm is that as well the harddisk as the filesystem is benchmarked. That means, you can also do a comparison on filesystems.

= Get bonnie = Get bonnie by means of your distribution as described at installing software, e.g. for SUSE Linux like this: yast -i bonnie

= Run bonnie = On my rather new (2009-10-08) computer, bonnie looks like this: Bonnie 1.4: File './Bonnie.3371', size: 1048576000, volumes: 1 Writing with putc... done: 66841 kB/s  91.3 %CPU Rewriting... done: 73888 kB/s   7.1 %CPU Writing intelligently... done: 422090 kB/s 72.7 %CPU Reading with getc... done: 81753 kB/s 100.0 %CPU Reading intelligently... done: 2907612 kB/s 100.0 %CPU Seeker 1...Seeker 2...Seeker 3...start 'em...done...done...done... ---Sequential Output (nosync)--- ---Sequential Input-- --Rnd Seek- -Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --04k (03)- Machine   MB K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU   /sec %CPU ls3523 1*1000 66841 91.3422090 72.7 73888 7.1 81753  1002907612  100  414.4  0.4
 * 1) bonnie -s 1000

Be aware that a big computer memory can provide a big file system cache. This would result in the testing done in memory instead of on disk. To overcome this, set the test file size to a high value using the parameter -s.

= Results = The results of bonnie will be influenced by
 * your disk's speed (that is what you want to measure)
 * your filesystem (that is what you may want to measure)
 * your computer's processor and other components
 * the amount of available RAM as it can be used as file system cache
 * the parameters you handed over to bonnie
 * bonnie's version and the compiler's version that was used to build it
 * your kernel's version and maybe other packages' like glibc

= See also =
 * iozone - another disk and file system benchmark
 * Bonnie's homepage