Final Words

In terms of performance, the NVMe version of the SM951 offers an upgrade over its AHCI sibling. The average data rate (i.e. large IO performance) isn't dramatically better compared to the AHCI version, but when it comes to small IO latency the SM951 and NVMe in general show their might. Typically the NVMe version offers about 10-20% improvement in average latency over the AHCI version, which is a healthy boost in performance given that the two utilize identical hardware.

It's obvious that the SM951-NVMe has been designed for mainstream client workloads. In our Heavy and Light traces it sets new records, but in the most IO intensive The Destroyer trace the SM951-NVMe is outperformed by the SSD 750. While Intel specifically built a client-oriented firmware for the SSD 750, the company made it clear that it focused on sustained random IO performance rather than high peak throughput, and the tradeoff pays off as long as the IO workload is intensive enough (think multiple VMs for instance). Another area where the SSD 750 beats the SM951-NVMe by a substantial margin is steady-state performance, which contributes heavily to The Destroyer benchmark since the trace effectively puts the drive into steady-state.

Speaking of steady-state performance, there are two things I was specifically happy to see in the SM951-NVMe. The first one is the unbelievable IO consistency, which isn't that significant for a client drive but if Samsung can pull off something equivalent (with higher performance, of course) in the enterprise space, then I'll be excited. It never hurts to have that level of consistency in a client drive either, but the it just isn't used to its full potential since client SSDs and workloads are more about peak than sustained performance, which is the opposite of enterprise workloads.

The second part is low queue depth random read performance. This is the area where we haven't seen much improvement in the past few years because ultimately the bottlenecks have been AHCI overhead and NAND latency. Fixing the latter requires a new type of non-volatile memory (e.g. ReRAM, MRAM or NRAM) with significantly lower read latency, but that isn't on the horizon until around 2020. In the mean time, the only way to improve random read latency is to cut the driver stack overhead, which is exactly the purpose of NVMe. The reason why I'm so excited about low queue depth random read performance is the fact that they account for a large of the total IOs in typical client workloads (especially the less intensive ones), so any improvement will translate to better user experience and performance, which is ultimately what a consumer is looking for.

Despite all this, I have to admit that I walk away a little disappointed. A 10-20% performance improvement isn't marginal, but after all the hype about NVMe I was expecting a little more. I have a strong feeling that NVMe is capable of much more, but the technology needs time to mature. From what I have talked to SSD OEMs, the generic NVMe driver that Microsoft includes in Windows 8.1 has some severe shortcomings, which is why nearly everyone has their own custom driver at least for now. I think Samsung and the SM951-NVMe desperately need that to unleash the full potential of the drive and I sure hope that the retail version of the drive will feature one.

All in all, the SSD 750 remains as the best option for very IO intensive workloads, but for a more typical enthusiast the SM951-NVMe provides better performance, although not substantially better than the AHCI version. If you need an SSD today, I wouldn't wait for the NVMe version because the availability is a mystery to all and you may end up waiting possibly months. Nevertheless, if the SM951-NVMe was easily available and reasonably priced, I would give it our "Recommended by AnandTech" award, but for now one can only drool after it.

ATTO & AS-SSD
Comments Locked

74 Comments

View All Comments

  • kspirit - Saturday, June 27, 2015 - link

    Thank you, I appreciate the response. I'll check it out :)
  • fastfood8891 - Thursday, June 25, 2015 - link

    @Kristian Vättö

    For that one graph on page 3, why do you divide IOPS by the standard deviation? I understand you are showing that this drive is a lot more consistent than the others, I just wonder what the mathematical intuition behind this value is.
  • Kristian Vättö - Thursday, June 25, 2015 - link

    It's just a key ratio. Standard deviation alone is a bad metric because it doesn't take the performance into account at all. It wouldn't be fair to compare stdev of a drive that does 15K IOPS against a drive that does 5K IOPS because if the two had equivalent stdev the impact would be much more severe on the slower one (e.g. frequent 50% drops in performance, whereas only 15% for the 15K IOPS drive).
  • krumme - Friday, June 26, 2015 - link

    Enjoy this man guys while we have him. This is competence at its finest.
  • JellyRoll - Friday, July 10, 2015 - link

    Well, if competency consists of him originally presenting test results wrong in several articles, and then a reader correcting him in the comments of the 750 article, and then him adopting the correct method...well, yeah. Then that is competency. (that is what happened)
  • fastfood8891 - Saturday, June 27, 2015 - link

    makes sense, thank you for the explanation.
  • Samus - Thursday, June 25, 2015 - link

    First gen. Give it time. Seems like a dedicated nvme controller (ala Intel) would improve random performance...it looks like this controller is already running near its capability in AHCI mode.

    But as with everything nand, mature firmware will help
  • willis936 - Thursday, June 25, 2015 - link

    Exciting stuff. Does anyone know if current broadwell laptops can be retrofitted with nvme M.2 drives in the future? Specifically the xps 13 2015. It's a hot item with poor storage options.
  • extide - Thursday, June 25, 2015 - link

    That laptop, probably yes. Best place to check would be the notebookreview forums -- they should have a specific forum for that laptop and you can ask there, or see if someone has already swapped in a PCIe drive. -- You need to verify 1) That the m.2 slot is actually pcie and not just sata, and 2) that it supports nvme in the bios, but being broadwell, you can probably assume it does.
  • lilmoe - Thursday, June 25, 2015 - link

    Is there any tangible difference in CPU utilization using NVMe? Would be nice if there was a graph...

Log in

Don't have an account? Sign up now