NVMe is the abbreviation for “Non Volatile Memory Express” and describes a standard for connecting SSDs via PCI Express. With SATA the speed is limited to 600 MB/s. In addition, AHCI (Advanced Host Controller Interface) used by SATA was primarily developed for hard drives and limits the possible I/O operations per second (IOPS). With NVMe both have been improved – PCI Express enables significantly higher transfer rates of up to 32 GBit/s or 4 GB/s via PCIe 4x and more than 500000 IOPS.
After one of the SSDs in my “retro PC” started reporting checksum errors I installed an NVMe drive with a PCIe adapter card for M.2 as a replacement.
The evolution of NVMe
In 2015, the Intel 750 Series, the first SSD with NVMe, was presented. This could be used as a 2.5″ drive with a special adapter cable for connection via M.2 or as a card for PCIe 4x. At that time, read rates of over 2 GB/s were very impressive, but that also had its price: the PCIe version with 1.2 TB cost around 1100 EUR, the variant with 400 GB around 400 EUR. That was around twice as much as for SSDs with SATA. Since the technology was still quite new, there weren’t many mainboards that NVMe could use as a boot medium at the time. In many cases, the manufacturers could have added this with modified software – but selling new mainboards is, of course, more important from the manufacturer’s point of view. Intel also took this opportunity to market successors of the X79 chipset for NVMe. In the beginning drivers were also required to use NVMe in Windows.
About five years passed since then. Windows 10 was also released in 2015 and has established itself as the de facto standard with around 75% market share within all Windows versions. One advantage of Windows 10 is that it supports NVMe without additional drivers and can also boot from it, provided the mainboard can use NVMe as a boot media.
The prices for SSDs have fallen sharply overall. Simple models with a capacity of 1 TB are available for less than 100 EUR. NVMe using a M.2 connection, a capacity of 1 TB and a speed of 3-4 GB/s from around 100 EUR.
Installation in an ASUS Rampage IV Formula
If you are still using an older mainboard without integrated M.2 slots, a PCIe adapter card is required. The advantage of such cards is that you also get models with heat sinks, which significantly reduces the temperatures under load.
My PC is currently running an older mainboard including an older CPU. This board offers four slots with PCIe 16x, so that NVMe via an adapter card is no problem. I used a KryoM.2 from aquacomputer as an adapter card, which is equipped with a heat sink for the SSD. Since such cards essentially only lead the PCIe bus to the M.2 slot, there are no components to be found here apart from filter capacitors.
Booting from NVMe is officially not supported on X79-based mainboards such as the ASUS Rampage IV Formula. However in fact this is only a software limitation that can be bypassed with a modifed BIOS. Instructions can be found here, for example: Asus Rampage IV Samsung 970 PRO einbauen, UEFI Mod bei AMI UEFI Bios (article in German) or here: https://www.win-raid.com/t871f50-HowTo-Get-full-NVMe-support-for-all-Systems-with-an-AMI-UEFI-BIOS.html.
Warning: modifying your BIOS can make your mainboard unusable! I don’t take any responsibility if you try this on your own!
After installing the modified BIOS you will find another entry “PATA SM:” in the boot options and after installing Windows 10 on the NVMe SSD a corresponding UEFI boot entry can be used:
Current situation after 6 months
The conversion described has now been in use for around 6 months and has proven itself well. In the meantime I have installed a second NVMe SSD that works just as well. In practice, the difference in speed between SATA and NVMe does not have that big effect as the theoretical figures suggest – but it remains noticeable, especially when using virtual machines.