Since the advent of modern computers, computer storage has undergone a significant shift every decade or so. With Moore’s law dictating the increasing speeds of processors, storage I/O (input/output) quickly became a bottleneck; this worked as a catalyst for innovation in storage, memory, and interface technology which resulted in faster-rotating disks, solid-state drives (SSDs), and new ways for the storage media to communicate with the motherboard. This article will discuss NVMe (Non-Volatile Memory Express) protocol, a new storage access and transport protocol for solid-state and flash-based storage media. NVMe is a significant improvement over SATA (Serial Advanced Technology Attachment), the previous standard protocol for media access for storage systems.
While SATA came into existence for rotating hard disk drives, it also got used for the first solid-state disk drives (SSDs). As SSD technology continued improving rapidly, a significant performance hit was soon noticed while using SATA to connect SSDs with the motherboard. Several major companies invested in computer storage decided to research and develop a new standard to beat SATA; this new standard is called NVMe.
What is NVMe?
The NVMe specification is the industry-standard, high-speed, low-latency host controller interface for SSDs and flash drives that use PCIe interface (Peripheral Component Interconnect Express) to provide faster speeds than SATA. NVMe (Non-Volatile Memory Express) successfully serves the quicker read and write requirements of today’s applications. NVMe exploits the proximity of the PCIe-based (PCI Express) serial bus interface for high performance I/O. While a SATA SSD is connected to the motherboard using cables, an NVMe drive (NVM Express) communicates via PCIe slots on the motherboard itself.
How does this help, you might ask. With significant performance improvements, NVMe empowers organizations to host their intensive I/O applications like transactional databases, AI/ML, big data processing systems, high quality audio-video processing systems and more. NVMe is the best option for such applications. Although using NVMe can be slightly costly, the benefits far outweigh the benefits.
Is NVMe better than SATA?
Long story short, yes, NVMe is significantly better than SATA. Let’s find out how. As mentioned earlier, just like how SATA was built for rotating disks, NVMe was built for SSDs. The NVMe (NVM Express) architecture allows for several orders of magnitude improvement in performance because of the queueing mechanism that supports over 65K queues with over 65K command set each, in contrast to only one queue of 32 commands in SATA. Queues can ensure that the computing resources are utilized better.
As most of the processors have multiple cores now, I/O queues can be mapped to different CPU cores using parallelism. Another number that might give you a better picture of the real difference in performance is that the latest SATA version, SATA 3, utilizes one lane and provides up to 600MB/s speed. On the other hand, the newest (PCI Express) PCIe version, Gen 4, uses 16 PCIe lanes and provides up to 2000MB/s speed per lane. In addition to improvement in I/O performance, NVMe boasts of a drastic reduction in power consumed. The SATA drives, which use the L1 state consume approximately 50mW. NVMe SSDs have adopted the L1.2 standby mode, which consumes less than 2mW, which is a 25x reduction in power consumption. Lower power consumption by any component of a server also means that a lesser amount of cooling will be required to cool off the server.
SSD Form Factors
SSDs are available in various form factors. The slot used by the hard drives to connect to the motherboard also depends on the form factor. Some of the most common ones are the PCIe slot, M.2, and U.2. It’s important to understand that while NVMe (NVM Express) is a protocol for storage access and transport across physical storage devices and the motherboard, M.2 and U.2 are physical form factors of the actual SSD.
It’s a common mistake to confuse M.2 and NVMe as similar things. Make sure not to compare them because one is a physical form factor and the other is a storage access protocol.
Except for the U.2 form factor, which is just an NVMe form factor, other form factors like M.2 also support SATA. Storage technology companies are continuously researching faster and optimal ways to store and retrieve data using the best storage interface. One of NVMe drives’ latest avatars, the BGA NVMe (Ball Grid Array NVMe), is significantly smaller than M.2. The BGA NVMe SSD’s dimensions are 16mm x 20mm, and it weighs just one gram.
NVMe Compatibility
Your chipset’s design (motherboard) decides whether you can use an NVMe (NVM Express) SSD. The design also decides which form factor you can use. If you are buying your own, be sure to check the slot required for your SSD. On the other hand, if you plan to deploy servers in the cloud with high-performance solid-state drives (SSDs) for enterprise workloads, you can use Zumiv’s wide range of Intel Xeon W CPUs that support NVMe SSDs up to 11TB.
Future of NVMe
The next generation of NVMe is already under development, which will be a further improvement on the existing dramatic improvement over SATA. Other linked technologies like NVMeOF (NVMe over Fabrics), which enables centralized and shared access of the NVMe disk over a specialized network. This will enable organizations to better utilize the resources and eliminate SPOFs (Single Point-of-Failures).
With increasing requirements of bandwidth because of the exponential increase in financial transactions, hypertext, and high quality user-generated multimedia content on the internet, faster speeds and lower latencies will be required more than ever before. If you have started using NVMe drives to host your applications and store your data, you might just be slightly ahead of the adoption curve. With disk drives getting faster and smaller, it’ll be a challenge for the IT infrastructure world to adopt quickly as the legacy infrastructure might need to be replaced because of incompatibility. That said, as mentioned earlier, the benefits of early adoption will significantly outweigh the cost, as it has been proved with NVMe.