What is NVMe?
Explore IBM's storage solutions Subscribe to the IBM Newsletter
Drawings and icons that symbolize the way flash storage works and could potentially work when you use NVMe
What is NVMe?

NVMe (non-volatile memory express) is a protocol for highly parallel data transfer with reduced system overheads per input/output (I/O) that is used in flash storage and solid-state drives (SSDs).  

NVMe SSDs are capable of delivering faster response times than traditional hard disk drives (HDDs) because of changes to the device driver that allow for parallelism and polling. These improvements help reduce latency and make them ideal for enterprise workloads as well as numerous consumer and professional applications.

What are SSDs?

SSDs are semiconductor-based storage devices that rely on flash memory to store persistent data in computer systems. In an SSD, each memory chip is built out of blocks that contain memory cells (also known as pages or sectors) that contain bits of memory. Unlike magnetic storage, such as HDDs and diskette drives that store data by using magnets SSDs use NAND chips, a non-volatile storage technology that doesn’t require any power to maintain its data.

Whereas HDDs have inherent latency and access time caused by the spinning of their platters and the movement of their read/write heads, SSDs have no moving parts, making them much faster. SSDs are surpassing HDDs as the preferred industry standard for structured data workloads.

ITIC 2023 Global Server Hardware Server OS Reliability Report

Gain insights from the 1,900 C-level executives surveyed about reliability, performance and security of the most popular server platforms.

Related content

Register for the ebook to modernize your apps faster

Why is NVMe important?

NVM express was developed from 2008 to 2011 to replace Serial Advanced Technology Attachment (SATA) and Serial Attached SCSI (SAS) protocols. NVMe’s improvements in latency and performance over its competitors contributed to the development of other important technologies, including the Internet of Things (IoT)artificial intelligence (AI) and machine learning (ML). 

Today, users demand faster response times than ever from their applications. The NVMe protocol was built to deliver a next-generation, high-performance, high-bandwidth and low-latency experience, regardless of the type of application a user is deploying. NVMe SSDs access flash storage primarily through a Peripheral Component Interconnect Express (PCIe) bus that removes the “middle man” controller, reducing latency. However, NVMes can also run on any type of “fabric” interconnect—such as Fibre Channel and Ethernet—and within Ethernet, iWarp, RoCEv2, iSER and NVMe-TCP.

NVMe SSDs can run tens of thousands of parallel command queues and run programs at faster speeds than drives connected by using SCSI protocol, which can only deploy a single command queue. The connection method is independent of the protocol; for example, NVMe PCIe can connect a single drive via a PCIe link running the NVMe protocol.

NVMe was built for high-performance, non-volatile storage media, making it ideal for today’s demanding, compute-intensive environments like graphics editing software, cloud computing environments, firmware and large databases. NVMe deals with enterprise workloads swiftly and efficiently with a smaller infrastructure footprint and less power than SCSI.

The difference between NVMe, SAS and SATA

While HDDs were the industry-preferred method of storing and accessing data, SATA and SAS were appropriate solutions. Both technologies were designed as SCSI storage interfaces to facilitate the transfer of data to and from HDDs. SAS connects a single drive via a SAS port running the SCSI protocol that then connects to a PCIe link. SATA connects a single drive via a SATA port running the ATA protocol via an ATA controller that then connects to a PCIe link. 

Until recently, most SSDs used SAS or SATA to connect with the rest of a computer system. However, with the rise in solid-state technology across the storage industry, SAS and SATA became more of an awkward fit, as they had been used with HDDs. According to a 2023 International Data Corporation (IDC) report, NVMe was designed to speed data transfer to systems connected via a PCI express, a serial expansion bus that’s standard for connecting a computer to one or more peripheral devices.1

In addition to the fact that it was designed specifically for use with SSDs, NVMe’s protocol is more streamlined than SCSI, making it a better solution for real-time applications, such as ML and AI. With the increasing popularity of cloud computing environments, NVMe is also well positioned to support hybrid cloudmulticloud and mainframe storage environments because of its built-in high performance and data protection. 

Here are some of the benefits of using NVMe storage over SAS or SATA drives:

Better performance: NVMe technology can use a PCIe to connect SSD storage directly to a server or central processing unit (CPU). This marked improvement in performance has made NVMe technology the preferred data storage/transfer option for gamers, video editors and other users that require higher performance than SAS or SATA HDDs can offer.

Higher speed: NVMe drives can deliver higher speeds than SAS or SATA drives because they can send and receive NVMe commands faster and deliver better throughput.

Increased compatibility: NVMe is widely considered a more compatible option than SAS/SATA and is frequently updated as it develops alongside such critical, fast-moving technologies as AI, ML and cloud computing. NVMe technology can work seamlessly with all modern operating systems, including mobile phones, laptops and gaming consoles.

Improved bandwidth: The PCIe connection is wider and has more bandwidth than SAS or SATA ports. It also improves with each generation, doubling the bandwidth of the previous generation. SAS and SATA have lower bandwidth connections and are fixed, so they don’t improve over time. Another feature that makes PCIe connections stand apart is that they are scalable in "lanes," so even in the same generation, users can double the bandwidth with twice the number of lanes. 

For a deep dive into NVMe and SATA, check out "NVMe versus SATA: What's the difference?

How does NVMe work?

Until the advent of SSDs and flash storage, SATA was used with all HDD storage systems. However, as mobile applications, video games and new technologies like AI increased the demands on computing environments, SATA’s limitations became apparent. Specifically, SATA’s low speed and bandwidth began to slow down large data transfers that were key to the functions of new applications.

NVMe was invented as a better data storage/transfer option than SATA for SSDs in environments where large data transfers were needed without slowing down processing times. NVMe enables SSDs to connect directly to the CPU by using the PCIe bus and an M.2 or U.2 adapter—the same as with a SATA drive. NVMe allows SSDs to connect right into the CPU and read and write large volumes of data swiftly.  

To achieve higher performance, NVMe defines a register interface, command set and group of features for PCIe-based SSDs. Once connected through the PCIe bus, the NVMe protocol facilitates lower latency and helps optimize I/O operations per second (IOPS).

NVMe drivers support many kinds of operating systems (OS), including Windows, Linux and MacOS. Also, NVMe protocol supports all kinds of NVM, including NAND flash-enabled SSDs. Finally, NVMeuses parallel command queues and a “polling loop” rather than its predecessors’ “interrupt” based device driver, reducing latency and system overheads and helping avoid CPU bottlenecks—such as when a graphics card works faster than the underlying CPU.   

NVMe SSD form factors

Another important differentiator of NVMe specifications is its form factor, or the way size, configuration and physical design impact its compatibility with other devices. Recently, the Storage Networking Industry Association (SNIA) convened to establish the Enterprise and Datacenter Standard Form Factor (EDSFF) to create an agreed upon, industry-wide framework for SSD technology.

The agreed upon, standard form factor for an SSD was 2.5 inches, which easily fits into the drive bay of most laptops and desktops, making NVMe SSDs highly compatible with existing technology. Since the 2.5-inch drive is widely used in both consumer and commercial computing environments, replacing an HDD with an NVMeSDD is simple and straightforward for users wanting to upgrade their system’s performance.

m.2 NVMe drives

M.2 SSDs are another physical form factor or connector used in SSDs. While the term is often used interchangeably with NVMe, they are different kinds of storage technology. While NVMe SSDs attach to a PCIeslot on a motherboard, giving them much higher data transfer rates than their competitors, m.2 drives are a physical form factor, or connector, that enable high-performance storage in small, power-constrained devices such as ultra-thin laptops and tablets.

NVMe and dynamic random-access memory

Dynamic random-access memory (DRAM) is a widely used type of random-access memory (RAM) that personal computers (PCs), servers and workstations rely on. NVMe SSDs come in both DRAM and DRAM-less varieties. NVMe SSDs with DRAM are more expensive and faster than DRAM-less ones, and they are a better option for graphic-intensive applications like photo or video editing software. DRAM-less NVMes are more affordable and slower, but still much faster than HDDs or SATA SSDs, making them good options for users who don’t need as much speed or performance for the applications they’re running.

NVMe use cases

NVMe’s low-latency, low-power requirements and ability to store and transfer data at a faster rate than SAS and SATA drives make it a choice for both business and consumer uses. In addition to boosting performance and data storage capacity, NVMe SSDs are more widely available than SAS or SATA SSDs and can be purchased from reputable consumer companies like Intel and Samsung. Here are a few common NVMe use-cases:

High-performance computing

NVMe’s speed, programmability and capacity to handle parallel processing make it ideal for a wide range of high-performance computing applications, including high-frequency financial trading, AI and ML.

Demanding applications

Many cutting-edge applications require a large queue depth for storage. Unlike its SAS/SATA predecessors, NVMe can hold up to 65 thousand queues and commands per queue allowing for thousands more commands to be ran.

Data centers

NVMe SSDs help data centers expand their data storage capacity and deliver higher performance at a comparable price to SATA SSDs, leading many modern enterprises to make the switch. According to an Enterprise Strategy Group report, nearly three-quarters of organizations are either using NVMe-based SSDstorage or are planning to deploy it in the next 12 months.2

Graphics editing

Whether you’re editing a video of your family reunion or working on an animated feature film, NVMe’s speedy data transfer rates make video editing dramatically faster. Simply put, editing and rendering a scene in video editing software generates a lot of data. An NVMe SSD can handle all this data without slowing the process down.

DevOps

Deploying NVMe in containerized DevOps applications has shortened the time of large builds and sped coding iterations for many developers. NVMe is also making development faster and less expensive and helping teams launch faster with a wider array of tools at their disposal.

Relational databases

NVMe flash memory systems accelerate application performance and lower the number of physical servers needed in relational databases. This allows them to perform faster than they did with traditional hard disks, enabling the organizations operating them to run their queries faster.

Related solutions
IBM® Storage FlashSystem 5200

IBM Storage FlashSystem 5200 is a strong option for businesses that require compact, powerful storage as well as all the benefits NVMe storage has to offer. Part of the FlashSystem family, the 5200 unifies data management across the core, cloud and edge, and is designed in a revolutionary 1U form factor. The 5200 helps enterprises achieve greater speed, performance and scalability from their data storage solution.

Learn more about IBM® Storage FlashSystem 5200

IBM Storage Fusion

Accelerate time to value by using cloud-native infrastructure for your applications on virtual machines and containers on Red Hat OpenShift.

Learn more about IBM Storage Fusion

IBM Storage Utility

IBM Storage Utility is an IBM Storage consumption model that gives customers a different way to procure storage capacity for their business requirements that is linked to their business initiatives, calculated monthly on use and billed quarterly.

Learn more about IBM Storage Utility

Take the next step

Simplify data and infrastructure management with IBM Storage FlashSystem, a high-performance, all-flash storage solution that streamlines administration and operational complexity across on-premises, hybrid cloud, virtualized and containerized environments.

    Explore FlashSystem storage Take a tour
    Footnotes

    1 “IDC's Worldwide Enterprise Storage Systems Taxonomy, 2023” (link resides outside ibm.com), various authors, April, 2023

    2 “ESG Research Report: Data Infrastructure Trends” (link resides outside ibm.com), Enterprise Strategy Group, 15 November 2021