What Is NVMe: A Beginner’s Guide to the New Industry Standard in Storage

It’s currently the era of solid-state drives (SSD) as consumer mechanical hard disk drives (HDD) are becoming outdated. One of the significant benefits of an SSD is that it stores data inside flash-memory chips even when there is no power running. SSD offers fast performance in booting devices, launching apps, and transferring data.

Since the early 2000s, the Serial Advanced Technology Attachment (SATA) driver has connected storage systems with computers through host controllers like the Advanced Host Controller Interface (AHCI). SATA has been used in numerous devices such as laptops, desktop computers, and servers. However, SATA suffers from some bottlenecks and is considered to be too slow when processing large data projects.

Using Non-Volatile Memory Express (NVMe) is one of the solutions – it is a storage interface and transfer protocol with the highest throughput and the fastest response times using the Peripheral Component Interconnect Express (PCIe) bus. To implement NVMe, SSDs have to use an NVMe controller chip.

This article will explore how NVMe works and its features. We’ll also compare NVMe and SATA SSDs and examine the four form factors and standards of NVMe.

Download glossary for web beginners


Non-Volatile Memory Express (NVMe) is a storage interface and transfer protocol for PCIe-based SSDs. NVMe allows efficient data storage and boosts data transfer rates.

How Does NVMe Work?

Initially, the SATA interface was used with HDD storage systems. When SSDs started to become more popular, it simplified the process of switching from HDD to SSD in computing environments.

However, SATA has many downsides, such as limited speeds and low bandwidth that hinder large data transfers. What’s more, each SATA drive needs its own port in the motherboard, so there is a limit to the number of storage systems that can be connected to the device.

NVMe was introduced in 2011 to tackle the limitations of SATA. NVMe acts as a storage interface and protocol that works together with the PCIe bus to rapidly read and write large amounts of data.

NVMe allows SSDs to connect directly to the CPU via the PCIe bus to transfer data via high-speed lanes. A single generation 4 PCIe lane can transfer up to 2,000 MB/s data, with NVMe SSDs using up to four of them. For comparison, SATA only has one lane, which can transfer up to 600 MB/s.

A comparison between AHCI and NVME in terms of data transfer, in which AHCI can transfer up to 600MB/s, whereas NVMe can transfer to 2000MB/s

NVMe SSDs vs SATA SSDs

The SATA interface uses AHCI drivers, while NVMe is explicitly designed for SSDs using flash storage technology. In other words, it is not only faster but also offers optimized performance. This is because SATA communicates with the SATA controller before connecting to the system CPU, while the NVMe standard connects the SSD to the CPU directly without any controllers.

SATA SSD AHCI drivers have only a single queue available with 32 commands per queue. Meanwhile, NVMe allows up to 65,535 queues with a maximum depth of up to 65,536 commands per queue.

Using the NVMe technology, the CPU manages queues more efficiently due to the high performance of the I/O processing doorbell signaling, which reduces CPU overhead. Low CPU overhead leads to reduced CPU cycles. In comparison, SATA SSDs produce high CPU cycles in the I/O processing.

The NVMe technology offers reduced latency due to the shortened and optimized datapath compared to SATA SSDs. It produces a latency of roughly 2.8 microseconds, while SATA SSDs have around 6 microseconds of latency – almost 3 microseconds longer than NVMe SSDs.

The NVMe SSDs are best for enterprise workload handling and artificial intelligence, machine learning projects, real-time analytics, large data transfers, and DevOps. They are commonly used in data centers, high-end laptops, and pre-built desktop computers.

Meanwhile, SATA SSDs are best for small data analytics and various light storage apps. They’re primarily used in budget laptops and servers.

Price-wise, NVMe SSDs are more expensive compared to SATA SSDs. The current price of 1 TB of SATA SSD data storage is around $100$130. NVMe SSDs have a higher price tag – 1 TB of storage costs between $129$200.

Here’s a comparison table between AHCI vs. NVMe:

A comparison between the features of AHCI vs NVME in terms of type of storage it's designed for, command queues, command per queue, CPU cycles, latency, communication, IOPs, and speed

Form Factors and Standards of NVMe

The NVMe technology is still being continuously improved regarding its features and specifications. Since the first introduction of the NVMe interface, four NVMe form factors have become available in the market – U.2, M2, Add-in Card (AIC), and Enterprise & Data Center Form Factor (EDSFF).

The NVMe form factors are compatible with PCIe-based SSDs since they are now considered an industry standard.

Here’s an explanation of each NVMe form factor:

  • U.2 – these SSDs can fit the existing motherboard slot for SATA SSDs but can also use up to four PCIe lanes. U.2 SSDs come in 2.5 inches and 3.5 inches in size. U.2 disks are available in various storage capacities.
  • M.2 – such form factor SSDs are much smaller than U.2. They are compact NVMe drives with low heat discharge. To use an M.2 SSD, make sure your motherboard has the appropriate slot.
  • AIC – Add-in Card SSDs are simple to connect via the PCIe bus. This makes them easy to deploy for commercial purposes like data centers. Some AIC SSDs include processors and additional chips to improve their performance.
  • ESDFF – these drives maximize the capacity per drive. They are scalable up to 30 TB. They are primarily used in enterprise and data center storage systems. An ESDFF form factor emphasizes thermal efficiency to regulate the system’s temperature.
Hostinger web hosting banner

Conclusion

NVMe is a breakthrough technology that has passed its predecessor SATA with notable performance. It offers faster transfer speeds and lower latency, alongside other benefits. It utilizes PCIe data lanes so that the storage device can communicate directly with the CPU.

To make use of the full potential of NVMe SSDs, use them for real-time application deployment, data analytics, artificial intelligence, and machine learning.

We’ve touched upon the following four types of NVMe form factors:

  • U.2 – these drives can use the SATA connection and up to four PCIe lanes.
  • M.2 – compact drives that operate at a low temperature, maximizing performance.
  • AIC – an NVMe form factor that comes in the form of expansion cards.
  • ESDFF – an excellent solution for enterprise data storage solutions.

We hope this article has helped you understand more about the inner workings of NVMe and its advantages compared to SATA. If you have any questions, leave them in the comment section below.

Author
The author

Noviantika G.

Noviantika is a web development enthusiast with customer obsession at heart. Linux commands and web hosting are like music to her ears. When she's not writing, Noviantika likes to snuggle with her cats and brew some coffee.