Schrödinger’s Cat Reborn
Accurately Benchmarking the X25-M
Most people are used to the fact that a given hard disk drive will yield similar benchmark results regardless of how many times you run it through its paces. Early SSDs followed suit, as wear leveling routines have very little impact on performance over time. The introduction of combined writes has added a completely new dynamic to the mix, meaning that getting accurate real-world figures from an X25-M presents the same problems faced by physicists attempting quantum measurement. Since this particular SSD ‘adapts’ to usage patterns, the mere act of benchmarking it results in an altered outcome. Benchmarks are synthetic in nature, and in most cases do not represent what actually happens on a daily basis. Different benches utilize different IO patterns to achieve their results, and we found all of them to impact the Intel SSD in their own unique way. Some would act to slow drive performance, while others would effectively reset it to a ‘like new’ condition, forcing us to start from scratch before we could resume our testing. Ryan and I poured over a hundred man-hours into testing in an effort to bring you a fair assessment of ‘typical’ X25-M performance.
Simulating the Real
Dozens of different scenarios were played out on our drives. XP / Vista installs, repeated application / game installs, batch copying of files, and custom IOMeter access patterns were all liberally applied to the X25-M. Various combinations of the above all seemed to point to one common denominator – all three of our SSDs suffered a drop in performance regardless of the type of workload applied to them. The next sections will explore the issues at hand while simultaneously addressing any steps that can be done to counter the effects at play.
Write combining sounds like a great idea on the surface, but things that seem too good to be true normally are, and there is no free lunch here either.
Since the flash locations are isolated from the OS by a lookup table, these fragments can not (presently) be directly manipulated by the OS, leaving any defragmentation efforts to the SSD itself. These fragmented areas will remain until they are overwritten by larger contiguous files. The end result is that the drive is not so much ‘adapting’ as it is approaching a steady state level of internal fragmentation as a result of the mix of small / large files being written to it. When we put the screws to the X25-M in the lab, we found that a ‘used’ X25-M will always perform worse than a ‘new’ one, regardless of any adaptive algorithms that may be at play. We also found that in some cases, the drive would drop to significantly below manufacturer specs.
If after reading this you quickly ran some benches on your own X25-M and found yourself in the ‘slowness’ category, you should realize there are ways to recover. We will attempt these by following Intel’s own advice on the matter, exploring two of their suggested methods.