Garbage Collection & The TRIM Bug

Like any RAID array of SSDs, there's currently no way to pass TRIM along to member drives. Once data is written to the RAID array it remains tracked and accounted for until the addresses are overwritten. This is the performance over time degradation issue we talked about at the beginning of our SSD coverage a couple of years ago.

SSD controller manufacturers have avoided the TRIM issue by equipping drives with idle garbage collection. The principle behind idle garbage collection is simple. When the SSD controller detects a period of no activity, it can query the file system for available addresses, and then internally mark those addresses for cleaning.

The RevoDrive x2 features idle garbage collection, which for most users should be sufficient to keep the drive running at full speed. There is a problem however. Current SandForce drives have a bug that impacts TRIM (and idle garbage collection). If you fill all available NAND on a SandForce drive by writing incompressible data to all user accessible LBAs and all spare area, the drive will no longer be able to restore itself to full performance via TRIM or any idle garbage collection. This impacts the RevoDrive x2 as well as standard SandForce SSDs.

I'm still in the early stages of measuring the real world impact of this bug and I made SandForce aware of it two weeks ago. At this point I'd simply caution against operating a SandForce drive near capacity filled with primarily incompressible data (e.g. compressed videos, photos). The problem is even more sensitive on a card like the RevoDrive x2 since there's no way to secure erase the drive to fully recover from a reduced performance state.

Expect to hear more about this in the next major SSD article on AnandTech.

Final Words

The RevoDrive x2, like its predecessor, continues to be a very niche product. Both sequential and random performance are measured in the multiple hundreds of megabytes per second. Like all SandForce drives, the RevoDrive x2's performance is highly dependent on the type of data you're moving. Highly compressible data will see speeds as high as 800MB/s, while incompressible data may behave more like it would on a single SSD from Crucial. The beauty of SandForce's technology is you get great performance on traditional desktop workloads, but as always you need to be mindful of what you're storing on the drive when you decide to go with SF.

The reality for OCZ however is there’s no performance benefit to purchasing a RevoDrive x2 over four Vertex 2s and creating your own RAID array. We’re talking about a simple RAID-0 here, something any performance mainstream motherboard supports right out of the box. To make for an even tougher sell, the RevoDrive x2 will likely cost more than four Vertex 2s. The original Revo was supposed to be slightly more affordable than an array of Vertex 2s, but a quick look at Newegg shows us that you pay a $40 premium for the Revo.

 

What OCZ (and other companies) ultimately need to do is introduce a SSD controller with a native PCI Express interface (or something else other than SATA). SandForce’s recent SF-2000 announcement showed us that SATA is an interface that simply can’t keep up with SSD controller evolution. At peak read/write speed of 500MB/s, even 6Gbps SATA is barely enough. It took us years to get to 6Gbps SATA, yet in about one year SandForce will have gone from maxing out 3Gbps SATA on sequential reads to nearing the limits of 6Gbps SATA. 

On the surface, OCZ is offering us what we want - a high performance PCIe SSD. However the RevoDrive needs to offer something more than ease of installation. 

All of the major controller players are hard at work on PCIe based SSDs, but I haven’t been made aware of immediate plans to release any of them. The focus continues to be winning 2.5” SATA SSD market share at this point. 

Random & Sequential Read/Write Performance
Comments Locked

46 Comments

View All Comments

  • disappointed1 - Thursday, November 4, 2010 - link

    Of course, DMI itself is "a (perhaps modified) PCI-E x4 v1.1 interface"
  • disappointed1 - Thursday, November 4, 2010 - link

    oops, Intel block diagrams depict that as 2GB/s
  • Stuka87 - Thursday, November 4, 2010 - link

    That bandwidth isn't dedicated to the drives though. Its shared with other devices.
  • leexgx - Friday, November 5, 2010 - link

    intel ICH max's out at around 700-800MB/s with RAID 0 more ssds does not add muh more data rate {adds maybe 20-50MB/s per extra ssd}(random access speed mite be higher), it has been tested
  • Googer - Thursday, November 4, 2010 - link

    Fusion IO seems to have the right idea by (according to them) getting rid of the raid controller (aka the middle man) and feeding the data directly to the bus. Perhaps it's time OCz and others start looking at their approach to things.

    http://www.fusionio.com/
  • disappointed1 - Thursday, November 4, 2010 - link

    They're not bootable and cost thousands of dollars - totally different market segment.
  • disappointed1 - Thursday, November 4, 2010 - link

    Thanks for a more straightforward review Anand. Since this is largely the same as the previously-reviewed IBIS, I think in addition to rehashing those benchmarks, it would be more interesting to get hard data on your claim that...

    "The reality for OCZ however is there’s no performance benefit to purchasing a RevoDrive x2 over four Vertex 2s and creating your own RAID array"

    I'd love to see what 4x SF-1200 drives do on an ICH10R, or a discreet RAID card running off the IOH.
  • RealMurphy - Thursday, November 4, 2010 - link

    * Drive is able to sustain massive read bandwidth - check
    * Drive is able to sustain massive write bandwidth - check
    * a lot of IOps - check
    * but why the heck PCI-X? Unless I'm totally mistaken and this is one of the few PCI-X 2.0 devices, you have NO error correction what so ever on this path and only puny even parity checking which will eventually fail and let's you read/write junk :( (caveat, maybe I misinterpret the PCI(-X) specs, if so please correct me)...
  • Powerlurker - Thursday, November 4, 2010 - link

    Supposedly, it's because OCZ realized that a PCI-X controller plus PCI-X to PCIe bridge cost significantly less then a native PCIe RAID controller.
  • ypsylon - Thursday, November 4, 2010 - link

    Bad investment and misguided. You can easily achieve these results with basic software RAID card (like Highpoint Rocket RAID 6xx) and 4 cheap SSDs. And if you buy proper RAID controller (say Areca 1261ML) and plug anything between 4 and 16 small SSDs in RAID 0 or 10 you will simply trounce Revo in every possible way. While it is more expansive short term, you can always freely expand storage space with bigger SSDs without too much hassle. You can't do that with Revo.

    Honestly SSDs are still a premium product. And for a premium product Revo is not good enough. I would certainly buy Photofast GM-Powerdrive, not Revo. Of course it is more expansive (2.5x) but it offers twice the performance (PCI-Ex x8 not x4 like in RevoDrive), and full hardware RAID support from R0 to 60 (not some software rubbish from SilImg, brrr).

    I like the idea of the FusionIO, but it is not for normal PC users. It is fine investment tho if you own gold mine, oil derrick, first name is $heikh, you are footballer, work for a mafia, or you are a banker. Take your pick! ;)

Log in

Don't have an account? Sign up now