NVMe vs. M.2 vs. SATA – What’s the Difference?

If you’re trying to understand the difference between NVMe, M.2, and SATA, first you’ll want to understand some basic things about your own computer. For the past two decades or so, home computers have had their performance bottlenecked by one component more than any other: the hard disk drive (HDD.) A standard 7,200 RPM HDD can only provide an average read/write speed of about 150 MB/s. By contrast, your RAM, CPU, and other components are all blazing fast.

As you use your computer, data gets shuffled from your storage drive to your RAM, and from your RAM to your storage drive. When you open a program, all the data necessary its operation has to be found on your drive and read into memory. When you’re saving a file you found on the Internet, what you’re doing is writing from memory to your storage drive. In other words, your storage drives can place some pretty strict limits on the performance of your entire system.

The problem is people are using more data than they did 20 years ago. These days, a single movie file can take up 10GB of space, and a single game installation can take 100GB or more. Put to the task of moving these large quantities of data, HDD’s fall flat because they need a mechanical arm to physically write data onto a spinning platter. And any device that uses physically moving parts is going to be hopelessly slow when it comes to big data.

Which is why solid state drives have been one of the most significant breakthroughs in modern computing. Lacking mechanical parts, they’re capable of reading and writing data far faster than ordinary drives. But what many people don’t realize is that solid state memory itself has been bottlenecked! The technology is so fast that its limiting factor usually isn’t the hardware, but the cables and ports by which the storage drive connects.

sata

What is SATA?

In simple terms, the Serial Advanced Technology Attachment (SATA) is a standard that was created to help a computers communicate with peripheral devices. SATA connections began seeing use at the start of the new millennium, when they provided ample bandwidth for the kind of drives people were using in those days.

Over the years, SATA has been adapted and improved by leaps and bounds. The latest iteration is called SATA 3.3, a format that supports a maximum throughput of 600 MB/s. Compared to SATA II, that’s literally twice the bandwidth, but it’s still clearly restrictive. And those limits are why SATA-based SSDs usually have read/write with speeds in the neighborhood of 500 MB/s. To make that a little simpler, when you’re reading/writing files that aren’t fragmented, it’s about four or five times faster than a great SATA HHD.

While SATA continues to be useful for a number of things, like optical drives and expansion cards, when it comes to storage, the age of the SATA format can easily be seen. Luckily, there are already a number of solutions in the works. One solution that’s already been widely implemented on new motherboards is called nonvolatile memory express (NVMe.)

nvme

What’s NVMe?

Much like SATA, NVMe is a type of device interface specification. It’s basically a set of rules for a memory device to interact with a motherboard through a PCIe connection. In other words, the NVMe format enables your storage drive to operate through PCIe instead of SATA. Even though an NVMe solid state drive uses the same type of memory you’ll find inside a SATA SSD, the different type of connection has a massive impact on speed and performance.

From a technical point of view, what those rules do is map the input and output of your data through the PCIe interface. Compared to SATA, one of the strengths of NVMe is far better support for multicore processors. Your basic SATA SSD will have a maximum of 32 commands it can host in queue, while the NVMe interface has a maximum of 65,535 queue messages. Consequently, NVMe requires half as many instructions from the CPU as a SATA connection, which is what helps avoid CPU bottlenecking you commonly see with SATA.

It’s important to understand the NVMe format isn’t only for SSDs. The NVMe interface can support a wide array of storage of non-volatile memory devices. It’s basically a competing standard to the Advanced Technology Attachment (ATA) standard, meaning another set of rules by which a peripheral can talk to a computer.

What Makes PCIe So Great?

What’s the big deal with PCIe? It’s all about architecture. PCIe slots are composed of “lanes”, which refers to one pair of wires for receiving signals, and one pair of wires for transmitting signals. Those wires are what send and receive the electrical pulses that get read as data. A single PCIe slot can have up to 16 lanes, each acting as an independent connection from the peripheral to the motherboard.

And that format allows an incredible range of adaptability when it comes to adding bandwidth. The scaling involved is completely linear, meaning a 10-lane connection has twice as much bandwidth as a 5-lane connection. When some new device needs more bandwidth, the PCI format allows you to solve the problem by using more lanes, while the SATA format can’t help. And that ability to adapt to different bandwidth requirements is what makes the PCIe interface better than a SATA connection in nearly every way.

What does that mean from a practical point of view? NVMe can make an interface with your computer using PCI Express 3.0, accessing up to four lanes. A single PCIe lane can carry 8 Gigatransfers per second. When all is said and done, that means NVMe drives reach write speeds close to 3,500 MB/s, which is about seven times better than you can get through the best SATA connections.

At some point in the future, even the illustrious PCIe format will reach its limit. The peripheral most likely to exceed those limits first are GPUs, which seem to use more PCIe lanes with each passing generation. Nevertheless, the PCIe format is a long way from its grave. NVMe is a relatively young technology, and it stands poised to dominate the future of solid state drives.

One downside of being a newer technology is cost. A gigabyte-to-gigabyte comparison of NVMe SSDs and SATA SSDs will show the NVMe drives are about twice as expensive as their counterparts. But history has shown us that the cost of storage drives is one thing that does not last. Over the past five years, the per-gigabyte cost of SATA SSDs has plummeted. The cost of NVMe drives may not be far behind.

nvme ssd

What’s M.2?

While you often hear NVMe and M.2 thrown around almost interchangeably, not all NVMe drives are M.2 drives. Physically speaking, most M.2 drives resemble a stick of RAM. And M.2 simply refers to the form factor of the drive, like ATX refers to the physical size of a motherboard. There are even M.2 drives that operate with SATA connections! That’s because the M.2 form factor allows a wide range of flexible physical specifications for an equally wide range of devices. Its small form makes it optimal for tablets, notebooks, and the like.

Likewise, NVMe drives aren’t restricted to one type of form factor. While most NVMe drives are built with M.2 specifications, you can find them in the form of full-bodied PCIe cards as well. But the form factor only matters when it comes to things like heat and space. When it comes to speed, what matters are how the electrical connections occur. In other words, it matters if your connection is PCIe, SATA, USB, and so on.

The Bottom Line

NVMe is a competing standard with SATA. It was designed to help provide faster speeds for peripherals which may need it. Those speeds are possible through the impressive PCIe interface. With current technology, PCIe storage drives are about seven times faster than anything you can squeeze out of SATA. PCIe has the ability to use a variety of different “lanes”, which can be scaled up for bandwidth, or scaled down to use less electrical power.

The first SSDs were developed when HHDs were the world’s foremost means of storage media. NVMe is a format built to take on faster media than HHDs and their infrastructure could ever take on. It’s a standard that specifically reduces latency within the hosts software stack, permits more input/output operations each second, and can use less power depending on how many PCIe lanes it’s consuming.

And while NVMe drives and SSDs are often built with the M.2 format, M.2 simply refers to one specific physical form factor for an internally mounted computer card. The M.2 form is commonly used for NVMe SSDs, but are used for plenty of other applications out there. Being quite small, M.2 cards are easy to fit into laptops, notebooks, tablets, phones, and similar devices. And any peripheral that can be built into that size can make use of the M.2 form factor, whether it’s a hard drive, sound card, or fan controller.

Share This Article

One Response

  1. Dani April 14, 2019

Leave a Reply