bonnie - file system and disk I/O benchmark
./bonnie.sh [ -d scratch_directory ] [ -i test_iterations ] [ -m machine_name ] [ -s file_size ]
bonnie is a file system and disk I/O benchmark and measurement tool that analyzes file system performance and bottlenecks. It exercises sequential input and output (per char, per block, and per rewrite) and performs random seeks.
The script bonnie.sh runs the bonnie benchmark with varying numbers of iterations (repetitions) and file sizes, and summarizes the results. Average values are calculated for all executed iterations.
bonnie can also be used as a system stress test. When used as a stress test, 100 to 500 iterations are necessary. File sizes can vary depending on available disk or RAID space. Verify that the required space is available in /export/home or the scratch directory before starting the benchmark (see the Storage Controller Certification Level 2 Test Plan for more information).
The test can be executed either as root or as a regular user. Note that a regular user account might experience permission problems when writing to or removing files from some directories.
- -d scratch_directory
- Scratch directory. The default directory is /export/home/bonnie.tmp. If -d is set, bonnie writes files to the directory specified by scratch_directory instead of to the default directory.
- -i test_iterations
- Number of test iterations. The default number of iterations is 5.
- -m machine_name
- Machine name/label. The default machine name is output from uname -n.
- -s file_size
- File size. The default file size is 200 Mbytes.
Copy the bonnie directory tree to /export/home or to another directory on your local system. If the /export/home/bonnie.tmp directory already exists, change its permissions to 777:
# chmod 777 /export/home/bonnie.tmpMake sure /export/home or the scratch directory is located on the disk connected to the controller being tested.
Test results are stored in /export/home/bonnie.tmp/bonnie.results by default or in scratch_directory/bonnie.results if -d scratch_directory is set.
-------Sequential Output-------- ---Sequential Input-- --Random-- -Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --Seeks--- Machine MB K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU /sec %CPU Sun4/260 78 285 90.9 650 26.4 305 20.0 282 95.5 803 28.3 38.5 15.2 Mips M2k 180 387 44.0 442 6.1 360 5.4 416 48.1 1701 14.8 26.3 3.1 Sequent 95 140 97.8 1017 66.2 251 17.7 122 95.7 713 34.9 31.0 15.9 4M i386 25 130 90.5 199 26.1 179 46.1 121 93.5 400 59.7 10.5 23.8 NeXT 125 241 94.7 347 39.3 253 31.7 246 94.8 772 49.6 27.7 20.8 VAX 8650 200 208 89.0 232 8.3 143 7.4 197 65.0 373 8.6 17.3 4.6
The duration of this test depends on the storage type and the parameters you specify. For example, this test takes less than 4 minutes using the following parameters on an Ultra 320 SCSI disk:
# ./bonnie.sh -i 5 -s 200
None
# ./bonnie.sh -i 100 &
Copyright 2005 Sun Microsystems, Inc. All rights reserved.