This article provides steps on how to get the Input/Output Operations Per Second (IOPS) consistency SSD with FIO Visualizer tool
1. Prepare the drive with SSD Preconditioning
Before running the benchmark, you need to prepare the drive. This usually calls “SSD Preconditioning”, i.e. achieving sustained performance state on "fresh" drive. Here are basic steps to follow to get reliable results at the end. Secure erase SSD:
Fill SSD with sequential data twice of its capacity. This will guarantee all available memory is filled with a data including factory provisioned area. DD (Data duplicator) is the easiest way to do so:
dd if=/dev/zero bs=1024k of=/dev/"devicename"
2. Decide on workloads:
If you're running sequential workload to estimate the read or write throughput then skip the next step.
Fill the drive with 4k random data. The same rule, total amount of data is twice drive's capacity.
Use FIO for this purpose. Here is an example script for NVMe SSD:
name=4k random write 4 ios in the queue in 32 queues
You are now ready to run your workload. Usually, measurements start after 5 minutes of runtime in order to let the SSD FW adapting to the workload. It will enter the drive into sustained performance state.3. Run the script below.
It can be modified based on the desired result. ie., randrw to randread.
For more information how to test the drive using FIO, visit How to benchmark SSDs with FIO Visualizer