Unlocking the full potential: NVMe
So, that’s four physical means of accessing the PCI-E bus for storage: SATA Express, add-in cards, M.2 in all its shapes and sizes and U.2. Still with us? Then let’s continue.
PCI-E connectivity is only one side of the coin, as hardware is only as good as the software that supports it. The second side of the next-gen SSD coin is about the move from the Advanced Host Controller Interface (AHCI) to Non-Volatile Memory Host Controller Interface Specification (NVM Express or NVMe).
To put it another way, changing from SATA to PCI-E is like upgrading from a Ford Focus to a Ferrari, but the move from AHCI to NVMe is more akin to taking the keys to the Ferrari off of your nan and giving them to The Stig: your nan will certainly go faster in the Ferrari than in the Focus but only The Stig really has what it takes to unlock the potential of the sports car.
Click to enlarge - There aren't many images related to NVMe, so we're repeating this one of the NVMe Intel SSD 750 Series
Fundamentally, AHCI and NVMe are both specifications that dictate how host systems communicate with attached storage devices. AHCI, however, is over ten years old and was designed for spinning media like traditional hard disks. NVMe, meanwhile, is designed specifically for accessing SSDs over the PCI-E bus. Detailing the exact differences would get needlessly complex, but ultimately NVMe has significantly lower latency than AHCI and is a much more efficient and faster means of transferring data to and from SSDs over the PCI-E bus. SSDs are inherently highly parallel, and NVMe supports up to 65,536 command queues with up to 65,536 commands per queue compared to a single queue with up to 32 commands on AHCI. NVMe is also well-tuned to support today's multi-core processors whereas AHCI is much less efficient at taking advantage of these.
Ultimately, the benefits of NVMe will be felt mostly in the enterprise space where workloads are heavy, but the lower latency and efficiency of NVMe will benefit certain consumer workloads too and also the mobile space by reducing disk access times and thus increasing battery life (the iPhone 6S, for example, has switched to NVMe).
NVMe requires support at the BIOS level. The vast majority of Z97, Z170 and X99 motherboards support NVMe, and certain older chipsets may have support in specific products (there are even some AMD boards that support NVMe now) but it will be necessary to check with your specific manufacturer. As for Windows, it is supported natively in Windows 8.1 and Windows 10, meaning the installer will detect the drive from the get-go. You can also use it in Windows 7, but you'll need to download the NVMe driver separately and point the installer to it when installing as it's not bundled natively.
The Windows NVMe driver is fairly basic at the moment. The two manufacturers with client NVMe SSDs, Intel and Samsung, both have their own NVMe driver that is said to boost performance but also makes more advanced features like drive monitoring, firmware upgrades and secure erase available in the Windows environment.
Want to comment? Please log in.