|Model||RevoDrive 3 X2|
Ivy Bridge is coming, and with it, a wave of new motherboards based on Intel's latest platform hub. The Benchmarking Sweatshop has been preparing for the deluge by tweaking the mix of peripheral tests we use to punish I/O ports. Real-world file transfers have been added to the mix thanks to some clever coding by our resident developer. To remove potential bottlenecks for those tests, we've had to source a very fast solid-state drive.
The lab is already brimming with the latest and greatest 2.5" SSDs, providing no shortage of candidates to plug into 6Gbps Serial ATA ports and the docking station we have primed for USB 3.0 testing. These 2.5-inchers may not be quite fast enough to saturate the latest SATA and USB interfaces, but they're as good as it gets for compatible devices. The bottleneck is unfortunate but unavoidable. Fortunately, it only applies to one half of the equation. Our file transfer tests use separate source and target drives, which frees us from the shackles of Serial ATA and USB for the other half.
Once you shed those interfaces, 2.5" solid-state drives start to look rather, well, slow. The next step up is PCI Express, whose now-ubiquitous second generation offers about as much bandwidth per lane as 6Gbps SATA and USB 3.0—plus the ability to dedicate multiple lanes to a single device. Bottleneck, begone!
A lot of the PCIe-based SSDs on the market are multi-thousand-dollar offerings designed explicitly for enterprise applications; they're a little outside the realm of what's reasonable for even an expensive desktop. OCZ's RevoDrive 3 X2 240GB is considerably more attainable, however. For not much more than a high-end graphics card, this PCI Express NAND sandwich claims it can push transfer rates up to 1500MB/s—three times the peak speed of the fastest 2.5" SSDs. That sort of potential throughput is perfect for our motherboard testing, and it made us curious about how the RevoDrive stack might stack up against more traditional SSDs. So, we decided to take a closer look.
Virtually an SSD
My, that's a handsome expansion card. Not an ounce of bling adorns the RevoDrive's black circuit boards. The matching back plate is riddled with venting holes that impart a bit of industrial style while providing a path for ambient airflow around the low-key heatsink. Under that hunk of finned metal sits OCZ's SuperScale storage controller, which ties together four cutting-edge SandForce controller chips and a four-lane PCI Express 2.0 connector. OCZ calls this arrangement its Virtualized Controller Architecture, or VCA.
One might expect the SuperScale chip to be a simple RAID controller that stripes data across an array of SandForce SSDs. That's not exactly what's going on here, although OCZ has resisted our attempts to tease out precise details about of how everything works. It does, however, say that the SuperScale controller "combines processing and full DMA (direct memory access) cores, as well as internal PCIe, SATA and SAS interfaces." Indeed, there are no bridge chips to be found anywhere on the card.
There has been some speculation that the SuperScale chip is in fact a Marvell SAS controller. That wouldn't be surprising, but we were too chicken to yank the glued-on heatsink for further inspection. OCZ has surely silk-screened its own name on the chip, anyway.
What matters more than the underlying silicon is the virtualization layer that makes four SandForce SSDs appear to Windows as a single drive. This VCA voodoo includes "unique command queuing and queue balance algorithms" that run on the SuperScale chip rather than on the host CPU. Instead of arbitrarily striping data across the SandForce controllers, VCA appears to distribute incoming I/O requests intelligently between the Native Command Queues associated with each chip. Here's the arrangement in block diagram form:
We've asked for more details on how the "Complex Command Queuing Structure" works, but OCZ is thus far keeping specifics close to its chest. There doesn't appear to be much integration between VCA and the SandForce controllers, though. OCZ says the SuperScale chip is tuned for the performance characteristics of the SandForce SF-2281, but claims "minor software changes" could adapt the scheme for other NAND controllers, including its own Indilinx Everest chip.
The RevoDrive's NAND controllers operate as they would in a stand-alone SSD, complete with their own layer of secrecy, this time surrounding SandForce's DuraWrite compression mojo, which remains intact under VCA. The SandForce feature set also includes a RAISE die redundancy scheme that protects against data loss due to physical flash failures. However, RAISE is disabled in the RevoDrive 3 120GB and the X2 240GB. The scheme consumes a slice of NAND capacity, and that space may be required by VCA overhead in those lower-capacity models.
Regardless of the capacity, the data flowing through the RevoDrive is protected against power loss. If the lights go out, OCZ says the card's built-in capacitance can provide enough juice to complete all in-flight I/Os.
Designed primarily for enterprise SSDs, OCZ's Virtualized Controller Architecture includes a number of features specific to that market. Some of those perks aren't supported by the RevoDrive 3, including a special "recovery" mode and the ability to create a virtual pool of logical drives. Although it's not advertised explicitly in the product literature, the RevoDrive does inherit support for the SCSI command set from VCA 2.0. OCZ also mentions compatibility with TRIM and its SCSI equivalent, dubbed UNMAP. There's just one problem: neither works in current versions of Windows, which is kind of a big deal.
TRIM and its counterpart were introduced to combat the block-rewrite penalty associated with solid-state storage. This hit to write performance arises from the very nature of flash storage, which is much slower when writing to occupied flash pages. When data is deleted by the OS, the relevant flash pages are marked as available but not erased, allowing the SSD to run out of empty flash pages even when there's plenty of available storage capacity. TRIM informs the solid-state drive that the flash pages associated with deleted data can be wiped; the SSD is then free to clear those pages as it sees fit.
Although Microsoft added TRIM support in Windows 7, it only works with AHCI devices. The RevoDrive 3 is a Storport device, which is Microsoft's recommended interface for "high-performance buses, such as fibre channel buses, and RAID adapters." One might expect this interface to support the SCSI UNMAP command, but that's not the case, according to OCZ. Windows 8's Storport driver is expected to add an extension that supports TRIM, though.
Given these limitations, the RevoDrive essentially cannot make use of TRIM and SCSI UNMAP in Windows 7. Fortunately, the garbage collection routines built into the SandForce controllers should prevent the RevoDrive's long-term write performance from completely tanking. These algorithms, managed independently by the storage controller, periodically reorganize data to ensure that empty flash pages are available for incoming writes.
Garbage collection routes tend to run during idle periods, so the RevoDrive may be slow to recover after particularly punishing workloads. Our suite is full of demanding tests, and there are few opportunities for background garbage collection to kick in. We also test drives in a simulated used state to best represent their long-term performance, which means the RevoDrive faces an uphill battle against traditional SSDs with OS-level TRIM support.
TRIM issues aside, the RevoDrive 3 is very much a Windows-compatible storage device. Once the drivers are installed (which can be done with an existing OS or during the installation of a new one), the Revo appears as a SCSI disk. That drive can then be used as secondary storage or configured as a boot device.