How NVMe is better than SATA and why it's time for you to upgrade to these SSDs

By: Nickolay Polovinkin | 17.09.2000, 18:37

Someday the market will do it for you. That is, migrate your computers to NVMe. Old SATA drives will only be found in flea markets, museums, or military bunkers where nothing has been updated for decades. If you don't want to wait for the mercy of progress and want to see a real argument for NVMe right now, this text is for you. Warning: it's going to be full of obscure words and acronyms, so be brave.

What are we even talking about?

We are talking about the differences between SATA and NVMe SSDs, although strictly speaking, the two are not directly comparable. The thing is that NVMe is a communication protocolthat can be used in drives of different form factors, and SATA is an interface with quite specific characteristics and a certain connector. That is, to simplify, we will of course tell you why NVMe is better than SATA, but we keep an understanding of this feature in mind.

NVMe is a new standard, right?

Relatively. A working group worked on the first version of the standard from 2009 to 2011, and it has been updated several times since then. The most recent version today is called NVMe 1.3c. As for devices that use it in operation, the first commercial products appeared in 2013. Looking at how fast the technology is evolving, in 2021 somehow you wouldn't call NVMe a novelty, it's more likely to be mainstream already.

What came before it? How did communication with SSD drives work?

I'll tell you in a moment, but I'll have to start at the beginning. 

Antiquity: Parallel ATA (IDE)

Back in the 1980s, of course, there was no talk about mass-produced SSD-drives, but the engineering problem was already there. It was a data exchange between computers such as PC and drives, the role of which served traditional magnetic hard drives and removable media. With a light hand of IBM in the use of entered 16-bit ISA-bus, under which initially and have developed an interface IDE (Integrated Drive Electronics). This now obsolete solution had a few killer features of the time: integration into the drive, standardization of commands, support for two devices on each channel. Old-timers probably remember the "master/slave" jumpers on hard drives (to determine the roles of these very two devices), but may have forgotten that IDE drives were originally limited to 528 megabytes. Of course, with the development of the standard, this limitation has gone into history, as well as separate interfaces for optical drives. The speed has also increased: direct access to memory (DMA) appeared, and ears knowing people began to sympathetically shake their heads when they heard that a friend's disk had "crashed into PIO" (i.e., due to some malfunction, it went into old Programmed input/output mode, which made it extremely slow and boring for the processor). But to make a qualitative leap a completely new technology was needed, and it was more practical and faster SATA interface.

New time: Serial ATA and AHCI

The characteristic red (as a rule) cables with 7-pin connectors can also be found in modern system units. The first version of this interface is already 18 years old, since then SATA drives have increased the maximum data transfer rate from 1.5 to 6 Gbps. From a logical point of view, SATA is also very different from IDE. SATA drives are based on the AHCI (Advanced Host Controller Interface) mechanism. Interestingly, one of its most important innovations, NCQ (Native Command Queuing) technology, was originally designed to work with hard disks. It sorts commands in such a way that the magnetic head makes fewer movements to access different areas of the spinning platters. Imagine this paleontology: where are the magnetic platters, and where are today's fast SSDs? Not all SSDs are equally fast, however. The first versions of SSDs had to use the ecosystem that existed at the time. In terms of system architecture this looked something like this: processor and memory via a bus (not ISA anymore of course, but actual PCIe) communicated with an AHCI host adapter that worked with SATA devices. Solid state memory can run much faster, so it was necessary to simplify the work with it as much as possible by removing all intermediaries. This is how NVMHCI (Non-Volatile Memory Host Controller Interface), better known as NVMe, was born, working directly with the PCI Express bus.

So, an NVMe drive can be plugged directly into PCIe like a video card?

Yes, but in practice it depends on the design of the specific drive. Models that are intended for installation in a PCI Express slot and that are designed as a classic expansion card are relatively rare in the mass market. In servers, applications range from the classic 2.5-inch U.2 to the more specific Intel EDSFF and the compact Samsung NGSFF. In ordinary computers modern NVMe-drives in the old fashioned way can be packed into a 2.5-inch chassis, but increasingly often use a compact M.2 connector. And there is some confusion associated with it, which is important to avoid when selecting components. The thing is that physically the M.2 connector is used to connect both NVMe and SATA storages. Yes, there are SSDs still using the slower SATA connection. Visually you can tell the difference thanks to the two distinctive slots on the connector, while in terms of speed SATA limits the drive to a bar of 600 MB/s.  


M.2 SSD with SATA

M.2 SSD with NVMe
Interface PCIe SATA III
Protocol NVMe AHCI
Bus PCIe x2 x4 PCIe x2 x4 SATA III
Form Factor M.2, U.2, PCIe M.2, PCIe M.2, 2.5"
Max read speed >3000 MB/s >2000 MB/s >500 MB/s
Max write speed >2000 MB/s >1500 MB/s >500 MB/s

Oh, let's talk about speed. How fast is NVMe?

As we already know, NVMe works directly with the PCI Express bus and is theoretically limited by its bandwidth. Recall that the latest PCI Express 4.0 specification spec specifies a speed ceiling of 8GB/s for four lanes (which is the mode SSDs typically operate in). The upcoming PCI Express 4.0 will double that threshold. That's quite an impressive difference, isn't it?


Yes, but isn't the actual speed lower? How does it get faster?

There are nuances, of course. It is not for nothing that AHCI has implemented the NCQ instruction queue in an effort to improve drive performance. NVMe has a much higher bar of capabilities as compared to SATA, that is why the arsenal for its development is also serious. First of all it is radically changed work with command queues. The best way to illustrate the changes is to look at the table.

AHCI NVMe
Maximum command depth one command queue, 32 commands per queue 65536 queues, 65536 commands per queue
Non-escalable register requests (each for 2K cycles) 6 per command without queue, 9 per command in queue 2 per command
MSI-X and interrupt management one interrupt, without control 2048 MSI-X interrupts
Parallelism and multithreading with sync lock without sync lock
Efficiency for 4KB commands command parameters require two samples from DRAM host  command parameters are passed in one 64-byte sample

The commands themselves were also put in order, they became less (only 13, if not counting control and reserve ones), it became easier to handle them. Especially taking into account the fact that the NVMe controller is a part of the drive and the data exchange takes place without extra intermediaries.

Cool, but how to choose the right NVMe drive?

Firstly, you can already be congratulated for choosing the right technology. SATA drives in 2021 only make sense to buy for specific tasks, so NVMe is the default option.

Second, let's look at the specific types of NVMe-devices that can be recommended for selection and their specifications.

See form factor. In the vast majority of cases, your choice is the compact M.2. The 2.5" drive format is typically used for SATA models, we're not interested in them. If for some reason you don't have an M.2 connector, but have a budget for an expensive and high-performance drive, pay attention to SSDs implemented as PCI Express cards. There are other, less common formats, but you probably won't need them because they are mostly used in servers and storage systems, we mentioned them above.

Dimensions. Yes, these are form factor dependent, but pay close attention if you are considering a drive for a notebook, nettop, or home media center in a compact package. In some cases you need to literally measure the available space with a ruler and then compare it to the specification for your chosen device before you buy. It is not possible to file a drive board that does not fit into an enclosure, so be careful. 

Don't forget the version of PCI Express. You can now come across SSDs working with either version 3 or 4 of the standard. PCI Express 4.0 is faster, but must be implemented on the motherboard level.

Memory type. This question goes beyond the scope of the NVMe discussion and refers to the flash drive itself. The difference between the types is in storage density. The denser, the better priced, but potentially slower. SLC memory can be considered the fastest, but also not mass memory, followed by MLC, TLC and QLC. It would be wrong to say that any memory type is inevitably better than the others. Producers are constantly optimizing their chip technologies, so the memory type should not be a key factor. 


Samsung SSD drives with NVMe

Editorial gg thanks Samsung for their help in preparing this article.

Model SSD Type Read/write speed
970 Evo Plus
 M.2 PCIe 3.0 x4 V-NAND MLC up to 3500 MB/s
up to 3000 MB/s
970 Pro
 M.2 PCIe 3.0 x4 V-NAND MLC up to 3500 MB/s
up to 2700 MB/s
980
 M.2 PCIe 3.0 x4 V-NAND MLC up to 3500 MB/s
up to 3000 MB/s
980 Pro
 M.2 PCIe 4.0 x4 V-NAND MLC up to 7000 MB/s
up to 5000 MB/s

Samsung SSD NVMe: the next performance level SSD

  • 6.2 times faster than SATA SSDs
  • read speed up to 7000 MB/s (2x faster than PCIe 3.0 SSD and 12.
  • 7x faster than SATA SSDs)
  • embedded proprietary thermal control algorithm improves longevity and stability
  • Samsung Magician app for health monitoring, performance optimization and data protection

quality and reliability of the global leader in flash memory since 2003