How to use IOMETER for testing raw storage throughput...just straight dumping and pulling data from disks
sequentially. Another entry will show how to simulate different workloads (like SQL).
1.
Download and Install IOMeter
2. Verify that the volume or drive that you want to test is already connected, partitioned, and formatted on the computer that is running the stress test. (you may also test mapped network drives)
3. Launch IOMeter and select your computer name in the
Topology field (
System in my example)
4. Select
Worker 1.
5. The first tab,
Disk Targets, should already be selected will display all of the volumes available to benchmark. Select the volume (or
Target as IOMeter refers to them) that you want to test. (
Note: You can only test one target at a time)
6. Enter a numerical value for
Maximum Disk Size. IOMeter will create a file called iobw.tst on the volume for running its tests. Be sure to create a test file larger than the memory buffers on your storage device, otherwise you will only see cache I/O which is deceiving. I usually test with a 10GB Disk Size, so I enter
2048000.
Note: 204800 sectors = 1GB on a disk partitioned with 512KB sectors (the default), so a 10GB file would be 2048000, etc. (be sure you have this much free space on the target)
7. Change the value of
# of Outstanding I/Os from 1 to
1 per target
8. Change the value of
Write IO Data Pattern from
Repeating bytes to
Full Random (and click OK)
Note: If you have already performed steps 9-20 before, click the Open button (first button from the left) and select the configuration file you previously saved and skip ahead to step 18. Here's a downloadable ICF file if you'd like to use it and skip ahead.
9. Select the
Access Specifications tab and click
New.
10. Only set the following access specifications:
Transfer Request Size =
256 Kilobytes
(text field)
Percent Random/Sequential Distribution =
100% Sequential (slider bar)
Percent Read/Write Distribution =
100% Write (slider bar)
11. Under the name file I enter in
256K_Write. Select
OK.
12. Scroll down to the bottom of the “Global Access Specifications” field and select the new script and click on the
<< Add button.
(Note: Steps 11-14 are repeat of steps 7-10 to create a Read version of the same job)
13. Select the
Access Specifications tab and click
New.
14. Only set the following access specifications:
Transfer Request Size =
256 Kilobytes
(text field)
Percent Random/Sequential Distribution =
100% Sequential (slider bar)
Percent Read/Write Distribution =
100% Read (slider bar)
15. Under the name file I enter in
256K_Read. Select
OK.
16. Scroll down to the bottom of the
Global Access Specifications field and select the new script named 256K_Read and click the
Add button in the middle.
17. Select the
Results Display tab and change the
Update Frequency to
1.
18. Select the
Test Setup tab. Modify the
Run Time field to
15 Minutes.
19. Enter
180 Seconds for the
Ramp Up Time.
20. Click the
Save button along the top (2nd from the left) and save this configuration file for future tests. This will allow you to skip steps 9-19 by simply loading the configuration file.
21. Click on the tab
Results Display so that you can watch the test run and then click the button along the top with the green flag on it to start the tests.
You can now use this configuration file to run tests on various types of storage to see the performance in comparison to each other.
Note: The first time you run your benchmarks on a particular type of storage, you will not see anything immediately in the Results Display. This is because IOMeter must first create a test file on the storage device.
For comparison's sake, some test results I've seen with this test: