An article to understand what is NVMe

NVMe because of the emergence of the hard drive performance has been greatly improved . This is how much great? Read bandwidth is increased from 500MB / s to 3200MB / S , write bandwidth from 400MB / s to 1200MB / s or so. Read IOPS reached 500,000, or even higher. In other words, now a performance-based SSD hard drive NVMe even better than an enterprise-class disk arrays. Leather was blowing so much, that in the end what is NVMe it ? NVMe stands for Non-Volatile Memory Express, if translation is a non-volatile memory host controller interface specification . You may still confused, then we are on the search engine and search for your keyword, you may get the following picture.

FIG 1 NVMe storage
Nonsense to say for a long time, in the end what is NVMe it? First, it is an interface specification, which is followed by a storage device interface specification. Accurate to say that the latest storage device communication protocol. This protocol like the same SAS and SATA, the hardware interface for defining and transmission protocols .

Several concept of storage

In order to thoroughly clear what is NVMe, let's clear rationale about the concept of a few store. Size Shape : the shape and size of the device is generally the size of shape memory device comprising:

  • 2.5 inch or 3.5 inch drives (SFF defined in the standard)
  • M.2 and PCI Express (PCIe) (defined in the standard PCI-SIG)

Interface : that is, how to communicate with the computer equipment. Common storage device interface include:

  • SATA interface, commonly used in 2.5-inch and 3.5-inch hard disk, and sometimes also use a number of devices M.2
  • PCI Express (PCIe) interface for PCIe devices and M.2
  • SAS (Serial SCSI) and FC (Fibre Channel) interface only for data center servers art and PCIe interface much faster than the SATA interface, the maximum bandwidth SATA3 6Gb / s, and 4X PCIe-based interface to a maximum of M.2 you can reach 32Gb / s.

Protocol : defines how the transmission of data between the computer and the device. Common protocols include:

  • ATA protocol for AHCI or SATA interface,
  • PCIe interface protocol for NVMe

Here we should be more clear, the NVMe protocols running over some communications interface , a data transmission standard for computer storage devices. Said apparatus size, interfaces and protocols can generally be combined. The following are common centralized combinations.

  • A 2.5-inch hard disk SSD, based SATA interface, the communication protocol is AHCI or ATA. About specific equipment shown in Fig.

    FIG SSD 2 SATA interface

  • A M.2 of the SSD, PCIe-based interface, a communication protocol is NVMe. About specific equipment shown in FIG.

    FIG SSD 3 M.2 of

  • A PCIe of the SSD, PCIe-based interface, a communication protocol is NVMe. About specific equipment shown in FIG.

    4 PCIe SSD of FIG.

Here are just a few specific examples are given, facilitate better understanding relationship interfaces, devices and protocols. Specifically, there are many other combinations, they do not repeat them.

Why so fast NVMe

Above us what is NVMe, the following article will explain why NVMe so fast ( note: here that is fast SSD-based device, if it is a mechanical hard drive is not the case ). Due to the physical characteristics of the SSD itself, access to which data has been very fast, it is the performance bottleneck in computer interfaces and protocols attached above. We give a simple example. For example, we have a warehouse will continue to produce a product, we can robot products from the warehouse to get other places (Figure 5). For the SATA SSD, similar to a single-arm robot, warehouse production soon, but you can only take a robot, move speed is slower.

5-arm robot
However, based SSD NVMe for it? This is equivalent to hundreds of long robot hand, it is clear that this speed faster than the former more.
6 multi-armed robot
NVMe protocols principle is true, it is essentially established on a plurality of computers access the storage device, so that the speed of data transfer naturally increased. In NVMe protocol, in fact, a plurality of queues a plurality of passages, particularly as shown in FIG. In the SATA storage device in a computer only with a queue, even in the case of a multi-CPU, all requests only after such a narrow path. The NVMe agreement can have up to 64K queues per CPU or core can have a queue, so that greatly enhance the degree of concurrency, performance naturally higher.
FIG 7 NVMe multiqueue

Today is just an entry, we'll back you tell me more about the details of NVMe. If you feel good, but please focus on this number, if you feel crappy, please leave a message below .

More timely access to new content, please pay attention to micro-channel public number: itworld123

Guess you like

Origin juejin.im/post/5d1b0b06f265da1b8333a749