TRIM and Performance over Time

When I first tested the C300 I noted that it fell victim to the same bug that plagued Intel’s X25-M: throw a bunch of random writes at the drive and it’ll get backed into a corner that it’ll never get out of. The scenario that you have to create to force the drive into this condition isn’t realistic at all, however that isn’t to say that over months or years of heavy use that you wouldn’t find yourself in the same situation. Either way, Crucial corrected the problem and spent weeks validating the firmware fix. Crucial did continue to sell drives during this period, which I wasn’t exactly happy about.

Either way the problem is now fixed with the 0002 firmware revision. It’s a destructive firmware update so you’ll lose any and all data on your drive after applying it. I also had a strange issue where the update had to be applied twice on my 256GB drive before it would work properly. Here’s what the C300’s performance looks like after being hammered for 20 minutes with random writes:

Ouch. Writes drop down to a dismal 20MB/s. But now if we TRIM the contents of the drive the performance curve looks like this:

Writes are at about 140MB/s and reads are in the low 200s. Everything is back to normal.

Now note that unlike the SandForce drives, Crucial’s controller/firmware combination will let the drive get into this state. Even if I throw randomly generated data at a SandForce drive the performance remains very high (the drive in the chart below is OCZ's Vertex 2):

Note that the lower line actually represents read performance - write speed is still up above 180MB/s.

The C300’s performance is simply not as resilient as what SandForce has to offer. For the majority of users this isn’t a problem. Typical desktop workloads shouldn’t get the drive into this state. Add in the efficiency of Crucial’s TRIM implementation and you should never see such a drop. However if your workload is atypical or particularly write intensive, the C300 may not be a good fit.

The C300 does perform background garbage collection. I’ve never particularly been a fan of idle GC simply because it fixes a problem after it’s created rather than avoiding the problem altogether. If you don’t have TRIM however (running RAID, Mac OS X, any Windows OS other than 7), idle GC is all you can rely on.

How well does it work? I subjected my 128GB C300 to almost the same torture test I mentioned above. I filled the drive to 80% of its total capacity and then threw random writes all over the drive for 20 minutes straight. Performance was predictably bad:

I left 20% of the drive empty because free space is needed for the idle GC to take effect. Here’s what the drive’s performance looked like after being idle for 3 hours:

Not exactly a drastic improvement. The idle GC just isn’t very aggressive. Compared to what Indilinx and SandForce have done, Crucial’s implementation just doesn’t cut it. For Windows 7 users running a single drive this shouldn't matter since you have TRIM. But if you're running RAID or another OS, the C300 isn't as desirable.

Power Consumption Final Words
Comments Locked

51 Comments

View All Comments

  • Breit - Tuesday, July 13, 2010 - link

    There are 4 different Vertex 2 drives from OCZ as i know:
    -> the standard Vertex 2, which uses MLC flash and has ~13% overprovisioning (~91GB usable capacity for the 100/128GB model)
    -> then there is a Vertex 2e, which is the same as the normal Vertex 2, but with a modified firmware for ~7% overprovisioning (~111GB usable capacity for the 100/128GB model)
    -> then there is a Vertex 2 pro, wich also uses MLC flash and also has ~13% overprovisioning, but also has a supercap to help out on a sudden power loss (more like an enterprise feature)
    -> and an last there is the Vertex 2 EX: this drive uses SLC flash and therefor is way to expensive for normal desktop use

    the first 3 should perform nearly identical. the last is supposed to be quite superior in performance, but i havn't seen any reliable performance numbers as of yet - anand? ;).
  • hotlips69 - Tuesday, July 13, 2010 - link

    Thx for the info!

    Why would anyone buy the Vertex 2 "standard" over the Vertex "2e" if it performs the same, but has a larger usuable capacity?

    Would there not be a performance hit if there is only 7% provisioning compared to 13% if the drive got full???
  • DanNeely - Tuesday, July 13, 2010 - link

    In normal desktop use there's no reason to get the standard drive. Sandforce initially designed its controllers for the enterprise market and servers can be much more brutal on a drive than end user computers are. On a server workload the extra scratch space was useful, but when they moved over to consumer drives it had no benefit. The 2e was released with an updated firmware once it became clear the controller was just wasting space.
  • jedighost - Tuesday, July 13, 2010 - link

    Let me answer: there will be OCZ 'Vertex 2' firmware updates coming out that will allow you to "switch" between 100GB and 120GB on the same drive. So far no significant performance difference have been found, but time is an interesting factor here, noone had months or years to test it, and users who visit forums and write their experiences are usually not known for torturing their SSDs 24/7 just to see what happens/kill them/wear them out.

    Based on the data available at the OCZ Support Forums, grab the 100GB or 120GB version, whichever you can cheaper, and later on you will be able to choose how much provisioning you want, 7 or 13%.

    When your 120GB Vertex 2 SSD is full and you write 8GBs of data (7% of 128GB) in a short period, yes, then there can be degradation. But how likely is that, really?

    Also, in average, you can write an MLC cell 10,000 times before you wear it out. This means, to evenly wear out all the cells of your Vertex 2, you need to write 10,000x120GB=1200 TERABYTES on your drive. Sure, when you only write a smaller than 4KB file, the whole cell has to be rewritten, but still, as a system drive, which is not supposed to contain huge files, in the size of several Gigs (raided Raptors are for that), when will you write 1000 Terabytes? By that time, your SSD is long outdated, because 10 years passed by.

    More concretely: if you write 275 GBs EVERYday to your SSD for 10 years, 365 days a year, then you wrote 1000 TBs. Lets say i didn't calculate with a bunch of factors, and I am wrong to 3:1 degree and your drives wears out in 200TBs, that is 100GBs a day for 10 years. When will you "rewrite" the whole size of your SSD in daily usage?

    Catch my drift?

    Buy your drive and don't worry, just enjoy it, the same as I did. Have regular backups as this is still new technology, but be ready to be blown away if this is going to be your first SSD - you will realize that it was not stronger CPUs and overclocking that was needed to make a system snappy, but eliminating the most-overlooked bottleneck: the old HDD.
  • jedighost - Tuesday, July 13, 2010 - link

    Actually i made a quick calculation: assuming you can write with 100MB/sec to your Vertex 2 continuously, 24/7, it would still take *120 days* to wear out all the cells, writing to them 10,000 times each. No mortal user had the time to try this yet. :))
  • sor - Saturday, December 11, 2010 - link

    FYI, in December '09 Micron announced that their MLC write durability increased significantly. Anything that has their 34nm chips (C300, maybe others) will have much better durability than your figures.
  • Drazick - Tuesday, July 13, 2010 - link

    It seems the smart move would be waiting for the next generation of SSD's by Intel.
    Assuming it would be a SATA 3 drives paired with P65 it should beat anything on the table at the moment.
  • Jonathan Dum - Tuesday, July 13, 2010 - link

    Not to mention 25nm NAND from Intel/Micron... longest wait ever. Though I wonder when all the other guys like OCZ will get 25nm?
  • james.jwb - Tuesday, July 13, 2010 - link

    Anand, what are your recommendations for around the 60-80GB mark? Any changes from your conclusion above?
  • Phate-13 - Tuesday, July 13, 2010 - link

    I will say it again, and keep saying it till it happens. Most people are not interested in 100-300GB SSD (except for lower prices obviously) or in 30-40GB SSD's. It's the 50-80GB ones that most people are interested in. That's about the sweet spot of capacity that is needed.

    The Crucial RealSSD C300 64GB is x times more interesting then it's bigger brothers, it's much cheaper, not only in absolute terms, but also in capacity/euro. And by far the best buy atm in my eyes.

    The line-up I want to see would be about something like this:
    - Kingston V-series S2 64GB
    - Western Digital SiliconEdge Blue 64GB
    - Crucial RealSSD C300 64GB
    - OCZ Solid II 60GB
    - OCZ Onyx 64GB
    - OCZ Agility 2 60GB
    - OCZ Vertex 2 60GB
    - Corsair Force 60GB
    And perhaps some of the other, cheaper Corsair SSD's.

Log in

Don't have an account? Sign up now