Performance consistency tells us a lot about the architecture of these SSDs and how they handle internal defragmentation. The reason we do not have consistent IO latency with SSDs is because inevitably all controllers have to do some amount of defragmentation or garbage collection in order to continue operating at high speeds. When and how an SSD decides to run its defrag or cleanup routines directly impacts the user experience as inconsistent performance results in application slowdowns.
To test IO consistency, we fill a secure erased SSD with sequential data to ensure that all user accessible LBAs have data associated with them. Next we kick off a 4KB random write workload across all LBAs at a queue depth of 32 using incompressible data. The test is run for just over half an hour and we record instantaneous IOPS every second.
We are also testing drives with added over-provisioning by limiting the LBA range. This gives us a look into the drive’s behavior with varying levels of empty space, which is frankly a more realistic approach for client workloads.
Each of the three graphs has its own purpose. The first one is of the whole duration of the test in log scale. The second and third one zoom into the beginning of steady-state operation (t=1400s) but on different scales: the second one uses log scale for easy comparison whereas the third one uses linear scale for better visualization of differences between drives. Click the dropdown selections below each graph to switch the source data.
The IO consistency of the Ultra II is not too good. At steady-state it averages about 2,500 IOPS, whereas MX100 and 840 EVO manage around 4,000-5,000. However, what is positive is the fact that it takes about 200 seconds before the performance starts to drop, which is mostly due to the fact that the Ultra II does not provide as many IOPS in the first place.
Since we are dealing with a value client drive, I would not consider the IO consistency to be a big issue because it is very unlikely that the drive will be used in a workload that is even remotely comparable to our performance consistency benchmark, but nevertheless it is always interesting to dive into the architecture of the drive. While the Ultra II is not the fastest SSD, it is still relatively consistent, which is ultimately the key to a smooth user experience.
To test TRIM, I filled the Ultra II with sequential 128KB data and proceeded with a 30-minute random 4KB write (QD32) workload to put the drive into steady-state. After that I TRIM'ed the drive by issuing a quick format in Windows and ran HD Tach to produce the graph below.