2

After a quick search on Freshmeat I found nothing. Anybody know of a good utility?

I normally use time (dd if=/dev/zero of=newfile ...) to test write speed and hdparm -t to test read speed.

Thanks.

Stewie
  • 49
  • 1
  • 2

3 Answers3

5

Take a look at bonnie and bonnie++, they will give you pretty much information.

http://www.coker.com.au/bonnie++/

sege
  • 61
  • 2
  • I tried compiling the bonnie that I found on Freshmeat but it was DOA. I'll try the one you suggested. Thanks. – Stewie Jul 29 '11 at 14:57
  • @Stewie: On what OS are you? On most distributions Bonnie and/or Bonnie++ are available to install from the standard repositories. – Sven Jul 29 '11 at 15:07
  • forget about bonnie and use bonnie++. It's included in nearly every linux distro and also available for other OSes (eg. MacPorts for darwin/osx) – Luke404 Sep 17 '13 at 16:39
2

You can also take a look at IOZone. Its a command line tool that runs under many operating systems and should be available to install with your standard package tools.

From their website:

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

zygis
  • 101
  • 2
0

dd and bonnie++ are good instruments if you need, simple, specific, synthetic measurements. They're good, for example, to establish a baseline performance of a "naked" disk (mb/sec and latency) before adding layers over it (raid, lvm, drbd, iSCSI, etc...) and then check if you lost some performance somewhere. I wouldn't use hdparm for that.

IOZone, Iometer are better at simulating actual workloads. There are also some more specific tools, like Postal to simulate email workloads and a number of SQL-related tools to benchmark databases (these are usually db-specific benchmark tools and will measure the whole performance of the system, that includes a number of factors other than disks alone)

Luke404
  • 5,708
  • 3
  • 44
  • 58