6

What is the simplest way to check read/write performance to a specific location (e.g. a mounted iSCSI device).

I suspect I can't use hdparm because that's lower level. Am I right?

7 Answers 7

12

bonnie++ is an aging but good one, as well as iozone.

6

Found this link: Quick SAN Performance Test, NFS, iSCSI, IOZONE – Part I

time sh -c "dd if=/dev/zero of=/tmp/disk_write_test.tmp bs=64k count=125000 && sync"

Note from the article:

  • Use more than the machine's free memory to make sure caching isn't being taken into account

Or, to force the caching off

time sh -c "dd if=/dev/zero of=/mnt/home/disk_write_test.tmp bs=64k count=125000 oflag=direct"
4
  • 1
    instead of running dd ... && sync, you can just use "oflag=direct" as a dd parameter. This causes dd to write using the O_DIRECT flag, which bypasses the vmfs cache. This means your time isn't slowed down due to linux syncing all it's cache to all it's devices (including the ones you're not testing), and has the additional benefit of meaning you can inspect dd's output rate directly. Feb 10, 2011 at 21:08
  • Thanks, have added it. Does that do away with the need to fill up the machine's RAM too?
    – pufferfish
    Feb 14, 2011 at 12:43
  • hmmm... it's REALLY slow using the "oflag=direct" flag (0.5MB/s vs 100MB/s). Can get it up to about 80MB/s if I use a huge bs like 65536
    – pufferfish
    Feb 14, 2011 at 13:40
  • Running dd ... && sync has the advantage that it works on multiple operating systems, beyond just GNU/Linux. Jan 27, 2015 at 20:40
3

I use sysbench:

sysbench --test=fileio prepare

sysbench --test=fileio --file-test-mode=rndrw run

sysbench --test=fileio --file-test-mode=seqrewr run

There are a lot of configuration options but that will give you a good idea.

Cheers

1

there are many tools available for the performance test. Like if you want to test sequencial read,random read/write etc. iozone is too much elaborate in its output. couple of others are also discussed here. file system performance test

0

iozone, bonnie and bonnie++ are common benchmark tools.

0

Check out bonnie++.

0

'dd' is really a good way to do it. To get an accurate test though you probably want to make sure that device is not mounted, and you actually 'dd' straight to the block device itself, or one of its partitions. If it is a multipath'd device, you should use the dm-device instead, i.e.: /dev/dm-* or /dev/mapper/*, or if you have a custom configuration, whatever the pathing is to your MP devices.

1
  • 2
    Actually I'm interested in the "real" performance, via the mount. So I shouldn't use the block device itself right?
    – pufferfish
    Feb 10, 2011 at 15:53

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .