Q. How can I easily stress test my storage subsystem?
A. Diskspd is a free tool for performing a variety of testing on your storage subsystem with combinations of testing parameters. Download it here. Once downloaded, there are a number of key parameters. Below is an example usage of the tool:
C:\tools\diskspd.exe -c5G -d60 -r -w90 -t8 -o8 -b8K -h -L C:\ClusterStorage\Volume1\testfile.dat
In this example I am testing a cluster shared volume and the tool creates a file to perform the testing, in this case testfile.dat (-L). The other parameters I use are as follows:
|-c5G||-c is the size of the file used. In this case 5 GB which should be as large as possible since a small file will skew the results (because of short stroking)|
|-d60||-d is the duration of the test, in this case 60 seconds which should be considered the minimum for most tests|
|-r||-r specifies random IOs, alternatively use -s for sequential|
|-w90||-w configures the percentage of the IOs that are writes, in this case 90% which would mean 10% reads|
|-t8||-t is the number of threads per file, in this case 8. For small IOs you should have a large number of threads, ideally equal to the number of cores on the system|
|-o8||Number of outstanding IOs|
|-b8k||Size of the IO. 8KB in this case|
|-h||Disable hardware and software caching|
Jose Barreto has a great blog post on this tool, which I recommend reading.