Vertex usure in practiceHere is a practical example of the deterioration in performance of an SSD, using the 30 GB Vertex when the TRIM function is not used.
Case 1: Sequential performance – Sequential access only
First of all, here are the sequential read and write speeds (in KB/s) when we carry out only this type of access (one read, one write, one read, one write, one read anda final write, each time on the whole of the SSD, ie 30 GB):
There’s a slight fall in performance between a new and a used drive, read speeds dropping from 206 to 196 MB/s and writes from 159 to 145 MB/s. Not a huge difference all the same.Case 2: Sequential performance – Random then sequential access
This time we started with a new drive (after HDD Erase or being flashed) that is then “used” by writing by block of 4 KB randomly for 30 minutes.
Sequential read performance deteriorated from the first run. The second read that took place after the first sequential write gives even lower performances that start to go back up as of the third run. The average read speeds then are 148, 93 and 116 MB/s compared to a top score of 206 MB/s for a new SSD.
Write speeds are even worse and this as soon as we attempted sequential writes with an allocation talbe previously used for random writes: 25.6 MB/s at first then 40.8 and 50 MB/s, the allocation table slowly and painfully re-organising itself. Case 3: Random performance
Now here is an observation of the change in performance (in I/Os per second) during random writes of 4 KB files. We launched the test on the new SSD, 6 x 5 minutes, then a second time on an SSD with cells that were previously filled sequentially.
The problem here is what value should be used in the test: some say that a Vertex handles 3270 I/Os per second, but even a new Vertex is quickly way down on this. On an SSD that has previously been filled, performances still fall but the curve then stabilizes.
The TRIM utility
Lets see how the TRIM utility developped by Indilinx counters this phenomenon that is pretty troubling, as was the case with the Intel X25-M SSD. The software launches easily in Windows XP or 32 bit Vista, but isn’t yet completely stable in 64 bit. Once launched it reads the file system allocation table and tells the SSD which LBA addresses are not being used via the TRIM command.
Hey presto! Sequential read and write and random write performances are back to their original levels. This is very good news that will only improve when the TRIM function is implemented directly on the operating system and works on the fly. In the meantime, those who have a Vertex and who note a significant drop in performance only have to use the utility to get back to the original levels on the remaining free space.