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 drop 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 consecutively in four different cases. First we measure the “fresh” SSD speed. Then we measure the 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.
This is where Marvell 88SS9174 based SSDs become the stars of this show. They not only ace the TRIM execution by fully restoring their performance to the original level, but can also boast excellent efficiency of the background garbage collection algorithms, which prove capable of restoring the data-packed SSD practically to its new state. SandForce controllers, as we have already seen many times in our previous tests, don’t get anywhere close to that.
As for the three devices that are the main characters of our today’s review, Corsair Performance Pro stands out the most. Its background garbage collection is practically as efficient as TRIM execution. Plextor M3S is also good in this respect, although it doesn’t restore its performance fully to the original level. And as for Crucial m4, its garbage collection works relatively slowly compared to the other two SSDs.
However, background garbage collection kicking in when TRIM is not working cuts both ways. On the one hand, drives that are capable of restoring their parameters without TRIM are great for those applications where TRIM simply doesn’t work at all. Namely, they are strongly recommended for RAID arrays or operating systems that don’t support TRIM command, such as Windows XP, FreeBSD with ZFS or Mac OS X (although TRIM may be activated in the latest Lion versions by modifying the core extension). But on the other hand it is important to understand that background garbage collection working without TRIM causes continuous data shuffling in the flash memory, which inevitably eats up its resource.
Unfortunately, Marvell 88SS9174 controller offers very scarce S.M.A.R.T. parameters, which prevents us from estimating the Write Amplification typical of the SSDs based on it. But without doubt this Write Amplification is substantially higher than by SandForce based SSDs. In other words, Marvell 88SS9174 based solid state drives may exhaust the flash memory resource much faster than the alternative products. Therefore, it is really good that Corsair Performance Pro and Plextor M3S SSDs use relatively long-lasting memory with 5000 rewrites reserve. The third SSD, Crucial m4, uses more complicated flash-memory with only 3000 rewrites, and the garbage collection isn’t too aggressive over there, too.
Going back to the performance numbers we have to point out that in steady state the SSDs with Marvell and SandForce controllers won’t rank in the same manner as they did in the previous section, even if the operating system supports TRIM. One SandForce based drives have been filled with data completely at least once, their performance irreparably degrades, while SSDs with Marvell controllers inside manage to avoid this fate. As a result, the solid state drives that have already been in use and have reached their steady state demonstrate different write speeds (the diagrams show the speeds in CrystalDiskMark 3.0.1 with random incompressible data).
Although SSDs on Marvell controllers are in a winning situation here due to the far from ideal implementation of the TRIM execution in SandForce based drives, the overall picture doesn’t really change. Marvell controller once again puts the products based on it in leading positions during sequential writing and random writing with deep requests queue. However, SandForce based drives remain unbeatable during regular normal writing of small random data blocks.