Bonnie++ is based on the Bonnie hard drive benchmark by Tim Bray. The most notable features that have been added are support for >2G of storage and testing operations involving thousands of files in a directory. This program is used by ReiserFS developers, but can be useful for anyone who wants to know how fast their hard drive or file system is. It now includes ZCAV in the package. This program tests the performance of different zones on the hard drive. ZCAV has been released separately before but will now only be released as part of the Bonnie++ suite.
| Tags | Benchmark Filesystems |
|---|---|
| Licenses | GPL |
| Operating Systems | POSIX |
| Implementation | C++ |
Recent releases


Changes: This release was made to build on OpenSolaris again. More files are supported for the small files test (10^7 isn't enough files). Now the limit is 16^10 files. A significant functional improvement was made for bon_csv2html, which now gets all the colors right. Support for Direct IO was added. Support was removed for OS/2 and NT (which never worked properly anyway).


Changes: This release adds support for direct I/O.


Changes: The program now works correctly with 64-bit file access (which means bonnie++ should work correctly on machines with more than 1G of RAM). Zcav support now skips chunks of the disk to give a faster result (some modern disks can take several hours for a single pass otherwise). All units were changed to GiB and MiB. The zcav output units were changed to match the new bigger and faster disks.


Changes: ZCAV now works better with larger and faster disks. The default block size is 256MiB and output is displayed in MiB/s and GiB. It also displays the progress on multiple loops. Units were changed to KiB, MiB, and GiB in all programs and documentation.


Changes: Some failures to check the return code of chdir() were fixed.
- All comments
Recent commentsRe: OS X
> I used to use this when I was
> benchmarking some linux drives and
> thought it was great.
>
> Now I would like to use it to benchmark
> the drives on my Mac.
>
> Is there a port of Bonnie++ for Mac? If
> not, any plans for one?
>
> Max.
Bonnie++ works on Mac OS X. There is two problems.
The first is that readdir is unreliable on HFS+, one
should use fts_read instead which is not part of posix.
The second is a small wrong type casting in
getc_putc.cpp.
The problem is in line 168 :
wrote = write(FILE_FD, buf, min(sizeof(buf), (unsigned
int)file_size - size));
The type of sizeof is size_t. The typecast make Apple's
C++ choke on this line.
OS X
I used to use this when I was benchmarking some linux drives and thought it was great.
Now I would like to use it to benchmark the drives on my Mac.
Is there a port of Bonnie++ for Mac? If not, any plans for one?
Max.
If you like Bonnie you'll love Iozone
If you like Bonnie then you'll love Iozone.
Iozone has many more features than Bonnie
ever dreamed of. Such as:
Posix Async I/O
Throughput with processes or threads.
Cluster throughput testing.
mmap() testing.
Replay application access behavior testing.
and many more....
See: http://www.iozone.org