Degradation and Steady-State Performance
Unfortunately, SSDs are not always as fast as in their “fresh” state. In most cases their performance goes down after some time and in real life we deal with completely different write speeds than what we see on the diagrams in the previous chapter of our review. The reason for this phenomenon is the following: as the SSD runs out of free pages in the flash memory, its controller has to clear memory page blocks before saving data into them, which causes substantial delays. Although, modern SSD controllers can alleviate the performance hit by erasing unused flash memory pages ahead of time, when idle. They use two techniques for that: idle-time garbage collection and TRIM.
Of course, users are more interested in the consistent performance of their SSDs over a long period of time rather than the peak speed they are going to see only during the initial short-term usage period, while the drive is still “fresh”. The SSD makers, however, declare the speed characteristics of “fresh” SSDs for marketing reasons. That’s why we decided to test the performance hit that occurs when a “fresh” SSD becomes a “steady” one.
To get a complete picture of SSD performance degradation we ran special tests based on the SNIA SSSI TWG PTS (Solid State Storage Performance Test Specification) methodology. The main idea of this approach is to measure write speed in four different cases. First we measure the “fresh” SSD speed. Then we measure their speed after the SSD has been fully filled with data twice. The third test occurs after a 30-minute break during which the controller can partially restore performance by running the idle-time garbage collection. And finally, we measure the speed after issuing a TRIM command.
We ran the tests in synthetic IOMeter 1.1.0 RC1 benchmark, where we measured random write speed when working with 4 KB data blocks aligned to flash memory pages at 32 requests queue depth. The test data were pseudo-random.
Like other second-generation SandForce-based products, the Intel SSD 520 slows down when it transitions from its fresh out-of-the-box to steady state. In our performance degradation tests we see its performance plummet by a factor of five at random-address options, and the garbage collection technique doesn’t help much, at least when the SSD remains filled with data. Thus, the 14% over-provisioning of the Intel SSD 520 proves to be useless in this case.
The TRIM implementation is not perfect, either. The SSD can’t be returned to its original speed with that command. Well, this seems to be a common trait of all SandForce-based products which cannot be corrected with firmware optimizations.
The write speed results you have seen in the previous section are only reflective of the performance of the SSDs in their “fresh” out-of-box state. But as they get filled with data, their performance can stabilize at a lower level. The write speed of the steady-state SSDs, as measured with CrystalDiskMark 3.0.1, is shown in the next diagrams.
The Crucial m4 takes top positions in the diagrams thanks to its perfect TRIM implementation but we are more interested in the abnormally low performance of the Intel SSD 520 at random writing when the request queue is long. This result was repeatable, so that's just one more peculiarity of Intel's exclusive firmware. The Intel SSD 520 must be given credit for delivering good performance in the rest of the tests whereas the long queue depth is typical of server rather than desktop applications.