There are plenty of benchmarking tools available but storage professionals mostly use IOmeter. Unfortunately IOmeter is a little tricky to use. You really need to read the user manual first. I have frequently seen users trying to run IOmeter tests without success. Being human, most of us hate to read the manual and with IOmeter this can lead to problems. I hope this short post will help you to get the wanted results. First off, you need to know that IOmeter recognizes 2 different volume types:

• un-partitioned disks (blue icon disk), or
• formatted disks (yellow icon with a red slash though it)

With un-partitioned disks you can start the test at once, but to run with formatted disks you need a test file. The test file must be placed in the root directory and named: iobw.tst. By default IOmeter will create the test file if not found. The problem is that nowadays volumes are very big, and IOmeter runs very slowly. It’s much faster to create the test file using the TestFileCreator.exe from Open-E. Please run it in order to create iobw.tst with any size you desire. You can run: TestFileCreator.exe 100G in order to create a file of exactly 100GB.

To find out your storage performance there are a few typical test configurations you may want to run. Here are some example results of a FC Volume created on DSS V6 with FC HBA dual 4Gb and MPIO.

So, if your goal is to obtain the maximum MB/sec please create a test set up with 2-4 workers, using a block size of 256k and 100% sequential read or write. In our case the sequential read shows the best result: 772 MB/sec! Please make your settings very carefully and make sure all workers use the same test configuration! If you forget to add your [256kB, 100% sequential read] configuration to every worker you will be surprised with very low results because the default test settings use 2kB block and mixed random/sequential and read/write pattern. So instead of the desired 772MB/sec you might see 100 times less, i.e. ~ 7MB/sec.

Download DSS V7

20 Comments

  • Ernie /

    27, 01 2017 03:07:39

    Your suggested test is for 100% Sequential Reads. Note that most modern storage systems have a “look ahead” feature that preloads the next block of storage in to RAM. This would return a large number that might not necessarily represent real world more random type access.

    Reply
  • Danielle /

    10, 03 2018 12:46:06

    Hi,
    How do you use the TestFileCreator software? I can’t find the iobw.tst file its creating. Also I’m not sure if this is normal but nothing pops up when I open it.
    Thanks!

    Reply
  • Chris /

    05, 04 2019 10:12:57

    Is there a way to get IOMeter to stop automatically after a single sequential pass on a drive?
    Whenever I run the benchmark, it just continues to run!

    Reply
  • Bernd Leuenroth /

    03, 07 2021 06:16:44

    When trying to orchestrate a test in which an IOmeter test run takes place simultaneously from several
    Windows10 workstations on a network drive, I found that IOmeter version 1.1.0 is not suitable for Windows10
    task scheduler when the task is bound to run in the background with “highest priorities” and without a
    logged-in user.

    Instead of the expected results in CSV files, crashes occur, which generate the following events:

    Event ID: 1000
    Source: Application Error
    Faulting application name: IOmeter.exe, Version: 1.1.0.0
    Exception code: 0xc0000409

    Event ID: 1000
    Source: Application Error
    Faulting application name: Dynamo.exe, Version: 1.1.0.0
    Exception code: 0xc0000005

    In the zip archive

    http://www.ewetel.net/~bernd.leuenroth/2021-06-13_IOmeterX/IOmeterV1.1.1.zip

    you can find a solution to the problem described above.

    The following files are included:

    – the executable files IOmeterX.exe and the associated DynamoX.exe
    – README.DE.txt in German
    – README.EN.txt in English
    – IOmeterX.patch source code patch file for the changes between iometer-1.1.0-src.tar and IOmeterX v1.1.1
    optional: Apply the source code patch on a Linux machine: cd iometer-1.1.0 ; patch -p0 -i IOmeterX.patch

    Installation:

    Extract *.exe into the same directory where IOmeter.exe was installed.
    Then call IOmeterX.exe instead of IOmeter.exe.

    Reply

Leave a Comment