(De)Fragmentation over time
Now what we’ve all been waiting for.  This was the most interesting point of the new firmware, and consequently, the most difficult and time consuming to evaluate.  I’ll walk you through it with the captions below:

OCZ Vertex beta firmware with background 'Garbage Collection' - Storage 31

193.0 / 73.8
We start with the Vertex after being beaten on with our test suite.

OCZ Vertex beta firmware with background 'Garbage Collection' - Storage 32

180.7 / 103.2
I let it sit idle for a while and re-ran the bench.

OCZ Vertex beta firmware with background 'Garbage Collection' - Storage 33

204.0 / 156.0
A little more idle time and another bench pass.

OCZ Vertex beta firmware with background 'Garbage Collection' - Storage 34

223.2 / 167.4
It did not take much for writes to return to full speed.  Since the read pass is performed first, final realignment helped along by the sequential write is not seen until the benchmark is re-ran.

OCZ Vertex beta firmware with background 'Garbage Collection' - Storage 35

230.7 / 168.7
One final pass brought us back to brandy-new conditions.

So with a little bit of time, and a few write passes, the beta firmware managed to do what no previous Indilinx firmware was able to do on its own.  I did some further testing with greater levels of fragmentation.  This required more activity cycles to bring the drive back to 100%, but it did make it there, even after hitting it with a 30-minute pass of random writes.

Further analysis of this feature’s current operation revealed that it seems to need some kind of activity to prompt the background task into starting.  Regardless of how long I waited between passes, each pass only accomplished a finite amount of data alignment.  I gave one test run nearly 12 hours of idle between passes and the improvement was similar to that seen with only a 5-10 minute gap between passes.  This should not be a big deal in practice, as an active OS on a Vertex should give it the intermittent activity needed to keep fragmentation to a minimum.

The one unknown is if the write pass itself is helping to realign the flash block data, or perhaps it is delaying it.  Up crops that whole Schrödinger’s cat thing again.  Oh the joys of SSD fragmentation testing.  We do it so you don’t have to :).

Perhaps the biggest take-home on all of this is the fact that sequential performance was restored to like-new conditions, on it’s own, and completely independent of any partition being present on the drive.  Other controllers, like those from Samsung, have resorted to a so called ‘auto-TRIM’ feature, which is only compatible with NTFS partitions at present, and can not work properly when those units are behind a RAID.

« PreviousNext »