Three months ago we previewed the first client focused SF-2200 SSD: OCZ's Vertex 3. The 240GB sample OCZ sent for the preview was four firmware revisions older than what ended up shipping to retail last month, but we hoped that the preview numbers were indicative of final performance.

The first drives off the line when OCZ went to production were 120GB capacity models. These drives have 128GiB of NAND on board and 111GiB of user accessible space, the remaining 12.7% is used for redundancy in the event of NAND failure and spare area for bad block allocation and block recycling.

Unfortunately the 120GB models didn't perform as well as the 240GB sample we previewed. To understand why, we need to understand a bit about basic SSD architecture. SandForce's SF-2200 controller has 8 channels that it can access concurrently, it looks sort of like this:

Each arrowed line represents a single 8-byte channel. In reality, SF's NAND channels are routed from one side of the chip so you'll actually see all NAND devices to the right of the controller on actual shipping hardware.

Even though there are 8 NAND channels on the controller, you can put multiple NAND devices on a single channel. Two NAND devices can't be actively transferring data at the same time. Instead what happens is one chip is accessed while another is either idle or busy with internal operations.

When you read from or write to NAND you don't write directly to the pages, you instead deal with an intermediate register that holds the data as it comes from or goes to a page in NAND. The process of reading/programming is a multi-step endeavor that doesn't complete in a single cycle. Thus you can hand off a read request to one NAND device and then while it's fetching the data from an internal page, you can go off and program a separate NAND device on the same channel.

Because of this parallelism that's akin to pipelining, with the right workload and a controller that's smart enough to interleave operations across NAND devices, an 8-channel drive with 16 NAND devices can outperform the same drive with 8 NAND devices. Note that the advantage can't be double since ultimately you can only transfer data to/from one device at a time, but there's room for non-insignificant improvement. Confused?

Let's look at a hypothetical SSD where a read operation takes 5 cycles. With a single die per channel, 8-byte wide data bus and no interleaving that gives us peak bandwidth of 8 bytes every 5 clocks. With a large workload, after 15 clock cycles at most we could get 24 bytes of data from this NAND device.

Hypothetical single channel SSD, 1 read can be issued every 5 clocks, data is received on the 5th clock

Let's take the same SSD, with the same latency but double the number of NAND devices per channel and enable interleaving. Assuming we have the same large workload, after 15 clock cycles we would've read 40 bytes, an increase of 66%.

Hypothetical single channel SSD, 1 read can be issued every 5 clocks, data is received on the 5th clock, interleaved operation

This example is overly simplified and it makes a lot of assumptions, but it shows you how you can make better use of a single channel through interleaving requests across multiple NAND die.

The same sort of parallelism applies within a single NAND device. The whole point of the move to 25nm was to increase NAND density, thus you can now get a 64Gbit NAND device with only a single 64Gbit die inside. If you need more than 64Gbit per device however you have to bundle multiple die in a single package. Just as we saw at the 34nm node, it's possible to offer configurations with 1, 2 and 4 die in a single NAND package. With multiple die in a package, it's possible to interleave read/program requests within the individual package as well. Again you don't get 2 or 4x performance improvements since only one die can be transferring data at a time, but interleaving requests across multiple die does help fill any bubbles in the pipeline resulting in higher overall throughput.

Intel's 128Gbit 25nm MLC NAND features two 64Gbit die in a single package

Now that we understand the basics of interleaving, let's look at the configurations of a couple of Vertex 3s.

The 120GB Vertex 3 we reviewed a while back has sixteen NAND devices, eight on each side of the PCB:

OCZ Vertex 3 120GB - front

These are Intel 25nm NAND devices, looking at the part number tells us a little bit about them.

You can ignore the first three characters in the part number, they tell you that you're looking at Intel NAND. Characters 4 - 6 (if you sin and count at 1) indicate the density of the package, in this case 64G means 64Gbits or 8GB. The next two characters indicate the device bus width (8-bytes). Now the ninth character is the important one - it tells you the number of die inside the package. These parts are marked A, which corresponds to one die per device. The second to last character is also important, here E stands for 25nm.

Now let's look at the 240GB model:

OCZ Vertex 3 240GB - Front

OCZ Vertex 3 240GB - Back

Once again we have sixteen NAND devices, eight on each side. OCZ standardized on Intel 25nm NAND for both capacities initially. The density string on the 240GB drive is 16B for 16Gbytes (128 Gbit), which makes sense given the drive has twice the capacity.

A look at the ninth character on these chips and you see the letter C, which in Intel NAND nomenclature stands for 2 die per package (J is for 4 die per package if you were wondering).

While OCZ's 120GB drive can interleave read/program operations across two NAND die per channel, the 240GB drive can interleave across a total of four NAND die per channel. The end result is a significant improvement in performance as we noticed in our review of the 120GB drive.

OCZ Vertex 3 Lineup

Specs (6Gbps)

120GB

240GB

480GB

Raw NAND Capacity

128GB

256GB

512GB

Spare Area

~12.7%

~12.7%

~12.7%

User Capacity

111.8GB

223.5GB

447.0GB

Number of NAND Devices

16

16

16

Number of die per Device

1

2

4

Max Read

Up to 550MB/s

Up to 550MB/s

Up to 530MB/s

Max Write

Up to 500MB/s

Up to 520MB/s

Up to 450MB/s

4KB Random Read

20K IOPS

40K IOPS

50K IOPS

4KB Random Write

60K IOPS

60K IOPS

40K IOPS

MSRP

$249.99

$499.99

$1799.99

The big question we had back then was how much of the 120/240GB performance delta was due to a reduction in performance due to final firmware vs. a lack of physical die. With a final, shipping 240GB Vertex 3 in hand I can say that the performance is identical to our preview sample - in other words the performance advantage is purely due to the benefits of intra-device die interleaving.

If you want to skip ahead to the conclusion feel free to, the results on the following pages are near identical to what we saw in our preview of the 240GB drive. I won't be offended :)

Post Your Comment

90 Comments

Yeah, I kinda addressed that with the fact that "should you pay $100 to boot Windows in 9 seconds instead of 14". I'm arguing the practical purpose of it, not the theoretical one.

People don't buy SSDs for faster boot times because that's something you do only once a day. They buy them to avoid the silly 15 sec Photoshop load time and increase the general responsiveness of their system. Once you go from 6.8ms latency to 0.1ms latency, I don't see how you improve that further.Reply

I've noticed every time you cover SSDs that you have a recommendation for OS X that's generally different from your conclusion in the article.

Is that the case here as well?

How would you rank the top 3 SSDs for Macs, if each is from a different vendor? From a reliability standpoint, as I don't think the difference in speed is noticeable to the end user unless performing specific tasks:

Macs don't support TRIM. There aren't too many high performance SSDs with which you can get away with using them without TRIM and expect long term speed. SandForce controllers have always been good at working without TRIM, so the Vertex 3 would likely be your best bet.

The Marvel controllers in the Crucial C300 and Intel 510 are know for not working too well without TRIM, so they wouldn't be a good choice for a Mac.Reply

If you've got a Mac with a 6Gbps interface, then the Vertex 3 240GB is a solid recommendation. Note that some users have had issues with the 2011 MBPs and Vertex 3s but personally I've lucked out. I suspect there may be some odd issues with Apple's ribbon cable for the 6Gbps bay.

If you're running a 3Gbps Mac then I'd say SSD 510 or 320. Still waiting to see how the smaller capacity drives perform though.

OSX does support TRIM now, but it's only enabled for Apple branded drives. There's a hack that lets you enable it for all drives and at least on my X25-M it shows as enabled but can't say anything about performance - even without it the drive has been very fast for the year I've had it.

I guess that OSX Lion will officially support TRIM for all drives.Reply

I understand TRIM is not supported natively for non-Apple SSDs, but I also have read about the kext hack that enables TRIM for 3rd party drives. Of course, my question implies that I would enable this hack to try it out.

From what I've read on MacRumors forums (and I believe AT forums), people are having better luck with Intel 320 than the Vertex 3. The speed difference can't be that noticeable in every day use (save for niche situations?), so I'd take reliability over a marginal increase in speed, assuming TRIM would be enabled via the hack.

I think I would take the Intel 320 300 GB (280 GB usable) over the Vertex 3 240 GB.

I'd love to see a comparison of error rates (RMA rates, I guess) between the manufacturers for those specific drive capacities.

Maybe AFTER OCZ sends Anand the last batch of requested SSDs for testing? :)