PCIe SSD Faceoff: Samsung XP941 (128GB & 256GB) and OCZ RevoDrive 350 (480GB) Testedby Kristian Vättö on September 5, 2014 3:00 PM EST
We are currently on the verge of PCIe transition. Nearly every SSD controller vendor has shown or at least talked about their upcoming PCIe designs, and the first ones should enter the market in early 2015. In the meantime, there are a couple of existing PCIe drives for the early adopters, namely Samsung XP941 and Plextor M6e, and a variety of RAID-based PCIe SSDs like the OCZ RevoDrive 350.
We already reviewed the 512GB Samsung XP941 in May and found it to be the fastest client SSD on the market, but today we are back with the 128GB and 256GB models. Since the XP941 is not limited by SATA 6Gbps interface, the capacity of the drive can have a substantial impact on performance, even between 256GB and 512GB models, because PCIe moves the bottleneck from the host interface to the actual NAND.
In addition to the smaller capacity XP941s, we are taking a look at OCZ's RevoDrive 350. Unlike the XP941, the RevoDrive 350 is not a native PCIe drive as it has several SATA 6Gbps SSD controllers in a RAID configuration to increase the performance over a standard SATA drive. The RevoDrive 350 is not a new drive since it was released back in April, but due to my finals I did not have the time to review it for the launch, but it makes sense to put it against the XP941 now.
The 128GB and 256GB XP941 both come in M.2 2280 form factor like the 512GB model. However, the 128GB and 256GB models are single-sided whereas the 512GB model has NAND packages on both sides of the PCB. As a result the 512GB is slightly thicker, but by eye I would say we are dealing with something in the order of 0.1mm (the 128GB and 256GB models do have some circuitry on the back side too, just not NAND packages). Some M.2 implementations (though mostly mobile) can have strict height restrictions, but the difference between the 128GB/256GB and 512GB XP941s is so tiny that it should not be a limitation, although you might want to check that your M.2 slot is suitable for the XP941 in the first place (the XP941 has max height of 3.73mm).
|Samsung SSD XP941 Specifications|
|Interface||PCIe 2.0 x4 (AHCI)|
|NAND||Samsung 64Gbit 19nm MLC|
|4KB Random Read||110K IOPS||120K IOPS||122K IOPS|
|4KB Random Write||40K IOPS||60K IOPS||72K IOPS|
|Power (idle / active)||0.08W / 5.8W|
|Warranty||Three years (from RamCity)|
Performance wise there are fairly large differences between capacities. The 128GB model provides less than half the sequential write performance of the 512GB model and 450MB/s is within the SATA performance envelope. Random write speed also experiences a substantial decrease, but read performance stays mostly the same. That is because of the way NAND works: reading is fast because the controller is just checking the charge in the cell, but writing is slow because you need to tunnel electrons through an insulator to create the actual charge in the cell.
As I mentioned in the original XP941 review, the SSD is not bootable on most motherboards. The drive does not have legacy BIOS drivers that load before the BIOS (like the RevoDrive 350 has), so it requires specific BIOS/UEFI code to be bootable. Fortunately the situation has improved since May and in addition to the ASRock Z97 Extreme6, most of ASUS' Z97 motherboards support booting from the XP941. RamCity has a good blog post about the supported motherboards and laptops, including some links to instructions in case the XP941 is not bootable by default. Furthermore, the XP941 is still bootable on a Mac Pro (except for the 2013 model) as we discovered in our original review.
All XP941s use Samsung's 64Gbit 19nm MLC NAND. The 128GB and 256GB models both have two NAND packages, so these are octal-die packages for the 128GB and 16-die packages for the 256GB.
Unfortunately, my 128GB sample died during the testing, so I do not have all benchmark scores for it. I am not 100% sure what killed the drive (it would not show up when I returned from Flash Memory Summit) but I am pretty sure it was secure erase. I am not the first one to experience this as RamCity was telling me that other reviewers have had the same problem and RamCity actually has a warning about using Parted Magic to secure erase the drive. I did not use Parted Magic but it looks like secure erase in general can break the XP941. I do not think this is a big issue for users because most will not be secure erasing the drive, but I still wanted to give a heads up and advise against secure erasing the XP941.
OCZ RevoDrive 350
The RevoDrive 350 is OCZ's first client PCIe SSD since the RevoDrive 3 (X2) back in 2011, but fundamentally the two are still very similar. Like the RevoDrive 3, the RevoDrive 350 is also based on two or four SandForce SF-2200 series controllers in a RAID array, but with the difference that the 350 uses SF-2282 controllers while the RevoDrive 3 used SF-2281. The two controllers are the same except for the channel width, which is 8 bytes in the SF-2281 and 16 bytes in the SF-2282. The 16-byte wide channel can talk to twice as many NAND die, which allows for larger capacities and can also provide some minor performance increases in scenarios where performance is limited by NAND channel bandwidth.
The RevoDrive 350 comes in three capacities with the capacity dictating the controller configuration. The 240GB model only has two SF-2282 controllers, although that makes sense because more controllers would not really improve performance at such a small capacity. With four controllers the 240GB model would only have 64GiB of NAND per controller, which would severely limit the potential performance of the controllers. The 480GB and 960GB models, on the other hand, feature a total of four SF-2282 controllers with 128GiB and 256GiB of NAND per controller respectively. Despite the different number of controllers, all capacities utilize the same PCIe 2.0 x8 interface.
|OCZ RevoDrive 350 Specifications|
|Interface||PCIe 2.0 x8|
|Controller||2x SF-2282||4x SF-2282|
|NAND||Toshiba 64Gbit 19nm MLC|
|4KB Random Read||45K IOPS||90K IOPS||135K IOPS|
|4KB Random Write||80K IOPS||140K IOPS||140K IOPS|
|Power (Idle / Active)||8.0W / 10.5W||9.5W / 14.0W||10.0W / 14.5W|
|Endurance||50GB per day for 3 years (54.75TB total)|
The main reason OCZ updated its RevoDrive is to transition to Toshiba NAND. The RevoDrive 3 used NAND from Micron, but thanks to Toshiba's acquisition, OCZ now has direct NAND access and it no longer needs to seek for third party NAND. I think part of the deal was that OCZ transitions all of its products to Toshiba NAND because it would not make sense for Toshiba to support its competitors' NAND business.
The front side of the PCB is covered by a hefty metal heat sink. Removing the heat sink does not reveal the actual SF-2282 controllers but a series of NAND, power circuitry and the RAID controller. OCZ has labeled the RAID controller with its own logo but I was told the actual silicon comes from Marvell. A quick look at Marvell's lineup reveals that the controller is most likely 88SE9548, which is a 4-port SAS/SATA 6Gbps RAID controller with PCIe 2.0 x8 interface, and would thus fit the description. The firmware is still à la OCZ, though.
Officially OCZ calls the controller Virtualized Controller Architecture (VCA) 2.0. With its own driver and firmware, OCZ treats data differently from a regular RAID-0 controller by not having a striping nature. Instead of having a set stripe size and distributing data evenly across the controllers, the VCA incorporates internal IO queues to distribute the IOs between the controllers. The benefit is that this way OCZ can have better control over every controller and can also ensure that one member in the array is not writing more data than the others.
The unique driver and firmware also allow the RevoDrive 350 to support TRIM, SMART, and secure erase while typical RAID controllers do not allow those features. The RevoDrive is also bootable because the legacy drivers are loaded before the motherboard BIOS, so it can be selected as a boot device like any other drive.
On the back side we find the SF-2282 controllers along with more NAND packages. I counted 32 NAND packages in total (i.e. 512GiB of NAND), which means that each package must be 16GiB with two 8GiB dies inside.
|CPU||Intel Core i5-2500K running at 3.3GHz (Turbo & EIST enabled)|
|Motherboard||AsRock Z68 Pro3|
|Chipset Drivers||Intel 188.8.131.525 + Intel RST 10.2|
|Memory||G.Skill RipjawsX DDR3-1600 4 x 8GB (9-9-9-24)|
|Video Card||Palit GeForce GTX 770 JetStream 2GB GDDR5 (1150MHz core clock; 3505MHz GDDR5 effective)|
|Video Drivers||NVIDIA GeForce 332.21 WHQL|
|Desktop Resolution||1920 x 1080|
|OS||Windows 7 x64|