SQLIO is one of my favorite free tools for
storage benchmarking. For SQL Server, one of the most important
factors in performance is disk throughput. How fast is your
storage? What happens to performance if your workload doubles or
something runs in the background? Where is your system running
today, and what baseline do you have to compare the performance
against?
SQLIO provides a command-line tool that can
simulate OLTP traffic on a storage system. Most people complain
that it is too hard to use for large batch operations. I created a
tool a while back for my personal use to overcome this obstacle and
to save myself great amounts of time. After showing it to multiple
clients, each of them asked to have a copy for their internal use.
After some time spent cleaning up the tool, I have now released it
to the general public for you all to use, free of charge.
This tool provides a test bundle that you can download and stage
on a server that you wish to evaluate. Configure your workload file
location and size and test runtime, and sit back while your system
runs through a full set of performance tests. Upload the output
file and my tool performs a quick analysis for you and presents you
with a spreadsheet with nice charts and graphs that are suitable
for all audiences.
Your average SQLIO test output looks like this:
C:\sqlio>sqlio -kW -t4 -s10 -dD -o128 -fsequential -b64 -BH -LS -Fparam.txt
sqlio v1.5.SG
using system counter for latency timings, -1800967296 counts per second
parameter file used: param.txt
file d:\sqliotestfile.dat with 2 threads (0-1) using mask 0x0 (0)
2 threads writing for 10 secs to file d:\sqliotestfile.dat
using 64KB sequential IOs
enabling multiple I/Os per thread with 128 outstanding
buffering set to use hardware disk cache (but not file cache)
using specified size: 8000 MB for file: d:\sqliotestfile.dat
initialization done
CUMULATIVE DATA:
throughput metrics:
IOs/sec: 2226.23
MBs/sec: 139.13
latency metrics:
Min_Latency(ms): 0
Avg_Latency(ms): 104
Max_Latency(ms): 2451
histogram:
ms: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24+
%: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 96
|
The analysis presents you with graphs that look like this:


And charts like this:

The items are great for a quick glance. If something does not
look right, further analysis is always warranted.
Full instructions for the tool are here, and if you are ready,
click
here to try it out!