The SSD Workload Performance Analysis

Conclusion

Our testing focused on three of the most powerful flash SSDs from Intel and Samsung, and was aimed at analyzing the performance impact of heavily changing workloads. This issue is becoming more and more important, as wear leveling and performance optimization algorithms try to adjust to certain workload types, probably causing other workloads to become slower than expected. Block-level fragmentation is the main issue here, as flash SSDs store data in pieces in a way that is different from your file system, as well as the way traditional hard drives operate.

Performance Issues

Our benchmark cycle alternated traditional throughput and I/O benchmarks three times, and added three more throughput test runs to see whether or not the SSDs are capable of returning from degraded throughput levels to the sequential performance levels you actually paid for. As expected, all SSDs showed a performance decrease, but only the two products based on MLC flash exhibited significant performance drops. The impact on I/O performance is typically small and acceptable, while throughput on the two MLC flash SSDs by Intel and Samsung suffered quite a bit.

Intel’s X25-M has been the fastest consumer drive and it typically still is, but only if you update the firmware with the latest available version. While the X25-M showed severe performance reduction in sequential writes after heavy I/O, it managed to handle the changing workloads much better with the latest firmware. Samsung’s PB22-J flash SSD also showed performance drops following the change of workload, but the drops were much smaller across the board.

And Solutions

We believe that firmware updates for flash-based SSDs could become more popular, and at least as important as software updates for your motherboard. There still is room for optimization, and all serious flash SSD vendors will take advantage of it. Hence, it makes sense to install the latest firmware version, not only to avoid severe performance drops, but also to make sure your SSD performance is maximized.

The other solution is to make sure that you don’t throw lots of changing workloads at your MLC flash SSD, as this does result in a noticeable performance impact. Such workloads would be intensive P2P downloads and activities that lead to fragmentation. While fragmentation on a file level, as you may be familiar with it, isn’t an issue for flash SSDs, block level fragmentation is. In such a case, the SSD has to store data across multiple flash cells; this requires frequent read, erase, and write processes, which is what takes the most time on MLC flash SSDs. This happens inside the flash SSD and cannot be influenced by the SATA controller or the operating system. At the same time, you should also avoid running conventional defragmentation tools on a flash SSD—they only appear to tidy up file storage, while actually contributing to block level fragmentation.

Finally, we want to remind you that a flash SSD, which doesn’t have to answer to drastically changing workloads, will not show performance drops as significant as in seen in this analysis. Temporary files and similar random information won’t become an issue unless they become a serious workload for the SSD. Fast SSDs, like those used for this article, are definitely faster than any conventional hard drive.