NVMe RAID0 - 2 x Samsung 950 Pro 256GB - Setup and Performance
Category : Storage
Published by Marc Büchel on 09.03.16
With NVMe there is finally a successor to AHCI, which has been optimized for SSDs from ground up. Meanwhile there are affordable drive in the enthusiast segment available which benefit from this new standard. Therefore it's interesting to have a look at RAID0 performance of two very fast NVMe drives. And this is exactly what we're going to do on the following pages.






Specifications / Delivery


Model Samsung 950 Pro M.2 256 GB Samsung 950 Pro M.2 512 GB Samsung 950 Pro M.2 1 TB
Capacity 256 GB 512 GB 1 TB
Form Factor M.2 (2280) M.2 (2280) M.2 (2280)
Interface PCIe 3.0 x4 PCIe 3.0 x4 PCIe 3.0 x4
Protocol NVMe NVMe NVMe
Controller
  • Samsung UBX
  • ARM 3-Core
  • 500MHz
  • 8 Channel
  • Samsung UBX
  • ARM 3-Core
  • 500MHz
  • 8 Channel
  • Samsung UBX
  • ARM 3-Core
  • 500MHz
  • 8 Channel
Memory
  • 3D V-NAND
  • 32 layer
  • 3D V-NAND
  • 32 layer
  • 3D V-NAND
  • 48 layer
DRAM 512 MB 512 MB n/a
Throughput
  • 2200 MB/s sequential read
  • 900 MB/s sequential write
  • 270'000 IOPS 4K random read
  • 180'000 IOPS 4K random write
  • 2500 MB/s sequential read
  • 1500 MB/s sequential write
  • 300'000 IOPS 4K random read
  • 110'000 IOPS 4K random write
  • 2500 MB/s sequential read
  • 1500 MB/s sequential write
  • 300'000 IOPS 4K random read
  • 110'000 IOPS 4K random write
Endurance 200 TBW 400 TBW 800 TBW
Power Consumption
  • 5.1 Watt active
  • 1.7 Watt idle
  • 5.1 Watt active
  • 1.7 Watt idle
  • n/a
Warranty 5 Years 5 Years 5 Years
Price




The Drives - 2 x Samsung 950 Pro 256 GB


Samsung is amongst the first companies which launched an NVMe SSD for end users. NVMe or NVM Express stands for Non-Volatile Memory Host Controller Interface Specification (NVMHCI). These specs define how solid state drives are being accessed through the PCI Express bus and therefore directly communicate with the CPU. NVMe replaces AHCI in the case of SSDs and it brings quite a few advantages to the table. AHCI, or Advanced Host Controller Interface, was optimized for drives with low throughput and high latencies. Apart from that it could not deal with high parallelism, being limited to a queue depth of 32. NVMe on the other hand has been designed to leverage the benefits of SSD from ground up, which means it can deal perfectly with low latency and high throughput drives. Apart from that it supports another magnitude of parallelism, whereas the queue depth can reach up to 65536. Since SSDs are based on controllers, which usually feature between eight and ten channels, parallelism is a key factor in gaining more performance.

Having a closer look at the specs we see that Samsung claims the 256GB 950 Pro M.2 can reach up to 2200/900MB/s sequential read/write speeds, which is simply a new level when it comes to the desktop market. Apparently this kind of performance in combination with a high-capacity drive doesn’t result in a bargain, which is why for instance the 512GB drive will set you back 319 Euro. Nevertheless, for this kind of money you really do get a drive, which outperforms almost anything available on the market to date and also offers a good amount of capacity.
A closer look at this M.2 expansion card shows, Samsung is using their 3 core ARM controller in the UBX version as well as second generation V-NAND memory. Therefore 32 layers of NAND flash memory are being stacked, which allows for 128Gbit of density. Per memory chip this translates into 128GB of capacity. At the moment Samsung is building 256GB as well as 512GB models. At a later stage, when the vendor switches to 48 layer V-NAND a 1 Terabyte drive is going to be available as well.

Page 1 - Introduction
Page 2 - Setup
Page 3 - Test Setup
Page 4 - Performance QD1/4/8/16/32
Page 5 - Conclusion
[pagebreak]

Page 2 - Setup




Setting up a RAID0 configuration with two NVMe based drives, is actually quite tricky. Apart from that there are quite a lot of limitations these days. It's only possible to realize a bootable NVMe RAID if you're using a motherboard, which is based on Intel's Z170 Express chipset. If it's your plan to create a non-bootable RAID of two NVMe SSDs, then you can also create a software RAID within Windows using a dynamic RAID array. Following we've put together bullet point lists which explain how to create a dynamic RAID array in Windows or how to create a RAID in the BIOS of a Z170 Express based motherboard, which supports NVMe RAID configurations. In that case we're going to look into the settings of the ASRock Extreme 7+ motherobard.

Software RAID - Windows 10



RAID in BIOS - Z170 Express chipset - ASRock Z170 Extreme7+


In general we're looking for the option "Intel Rapid Storage Technology" to then create the RAID configuration directly in the BIOS.


Page 1 - Introduction
Page 2 - Setup
Page 3 - Test Setup
Page 4 - Performance QD1/4/8/16/32
Page 5 - Conclusion
[pagebreak]

Test Setup


Testenvironment

Motherboard ASRock Z170 Extreme7+
Chipset Intel Z170 Express
CPU Intel Core i7-6700k
Memory G.Skill DDR4-3000 MHz
Graphics card ASUS GeFroce GTX 980
Storage (system) OCZ Trion 100 480GB
Operating systems Windows 10 64 Bit with caching drives


iozone

iozone3 is a benchmark suit for storage solutions which natively runs under Windows/Linux.

We are testing the throughput with different block sizes using the following commands:

KByte/s

iops




Page 1 - Introduction
Page 2 - Setup
Page 3 - Test Setup
Page 4 - Performance QD1/4/8/16/32
Page 5 - Conclusion
[pagebreak]

Throughput 1 Thread (QD1)

1T Throughput (KB/s)
  4k 8k 16k 32k 64k 128k 256k 512k
Seq write 1747353 1769307 1783268 1777643 1790696 1797773 1794900 1796676
Seq read 2461388 2483256 2666259 2910238 2994702 3270414 3586744 3434945
Rand write 425544 768018 714314 952997 1139652 1810675 1802551 1798803
Rand read 93019 164404 284988 498046 848871 1312506 1802551 1958114




Throughput 4 Threads (QD4)

4T Throughput (KB/s)
  4k 8k 16k 32k 64k 128k 256k 512k
Seq write 1734681 1745199 1752717 1749988 1746550 1740645 1737329 1747649
Seq read 3200140 3712778 3536805 3394905 3535825 4063763 4078375 4105079
Rand write 643331 1748104 1752796 1633489 1709811 1745608 1744081 1741351
Rand read 361063 627183 1004590 1582003 2431039 3677908 3333973 3679007




Throughput 8 Threads (QD8)

8T Throughput (KB/s)
  4k 8k 16k 32k 64k 128k 256k 512k
Seq write 1664911 1684958 1622571 1692768 1688034 1697172 1693452 1698638
Seq read 2967851 2985489 2685801 2934987 3175089 3514671 3284149 3529531
Rand write 619208 1002215 909200 1194190 1476317 1635115 1632889 1673836
Rand read 661349 1065095 1544404 2158337 2728644 3168121 3041362 2928649




Throughput 16 Threads (QD16)

16T Throughput (KB/s)
  4k 8k 16k 32k 64k 128k 256k 512k
Seq write 1643570 1508284 1532451 1689201 1696326 1712088 1701002 1703631
Seq read 2676406 2826251 2923846 3153933 3207328 3512752 3336694 3428961
Rand write 626104 1060214 1197724 1366803 1412977 1620205 1642324 1682576
Rand read 1123269 1713606 2304508 2626102 2645925 2721161 2843373 2887165




Throughput 32 Threads (QD32)

32T Throughput (KB/s)
  4k 8k 16k 32k 64k 128k 256k 512k
Seq write 2874047 1660645 1653916 1657679 1653125 1651552 1697177 1659004
Seq read 2512162 2732283 2919775 3016188 3062896 3274514 3345526 3238460
Rand write 614344 875119 1029483 1300178 1437626 1548599 1650238 1633094
Rand read 1599881 2191480 2571245 2435784 2976655 2419493 1907786 2419055




Page 1 - Introduction
Page 2 - Setup
Page 3 - Test Setup
Page 4 - Performance QD1/4/8/16/32
Page 5 - Conclusion
[pagebreak]

Conclusion



If you’re looking for a a solutions which offers an extremely well performing storage subsystem, then the consumer segment has almost nothing to offer that’s faster than a RAID0, which is based on two NVMe SSDs. The two Samsung 950 Pro 256GB M.2 drives we’ve been using for our test, were capable of pumping out up to 4.0GB/s regarding sequential read and 1.7GB/s when it comes to sequential write. A closer look at IOPS performance shows 340’000 IOPS when writing randomly and 200’000 IOPS in random read.

The above mentioned values are actually very impressive but is there actually any real-world benefit? Does one really feel a difference between 100’000 and 340’000 IOPS while in Windows? Frankly speaking; if you’re coping large files often then performance will be boosted but in any other case the performance difference you feel is minimal. If you’re a standard user, running your usual programs like Office, your browser and a few games, then moving from an already quick SATA SSD towards an NVMe-RAID0 configuration doesn’t really make sense. Nevertheless, if you’re a power user, you will definitely notice a performance difference when you’re moving from a PC with such an insane NVMe RAID0 config back to a quick SATA drive. And the difference will be even larger the longer you’ve been using the NVMe RAID0.

Bottom line it’s interesting to see what the combination of two very fast NVMe SSDs are capable of doing. In the end the standard applications like Office, your browser or even games don’t really benefit from such an extremely high performing storage subsystem. If you’re planning on building an absolute high-end system then choosing such a setup can definitely make sense and keeping the price in mind, it will be difficult to find anything that’s faster at the same price point. Talking about pricing: one of the Samsung 950 Pro M.2 256GB drives sells for 177 Euro these days. This means that two account for 354 Euro. If you’re looking for maximum performance for the money you’re paying, then this a good solution. If it’s your goal to have best possible performance at the lowest possible price; well then you’ve definitely come to the wrong neighborhood.




Page 1 - Introduction
Page 2 - Setup
Page 3 - Test Setup
Page 4 - Performance QD1/4/8/16/32
Page 5 - Conclusion