- MCP server with stdio transport for local use - Search episodes, transcripts, hosts, and series - 4,511 episodes with metadata and transcripts - Data loader with in-memory JSON storage 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
168 lines
12 KiB
Plaintext
168 lines
12 KiB
Plaintext
Episode: 3567
|
|
Title: HPR3567: What is NVMe™ and why is it important?
|
|
Source: https://hub.hackerpublicradio.org/ccdn.php?filename=/eps/hpr3567/hpr3567.mp3
|
|
Transcribed: 2025-10-25 01:28:43
|
|
|
|
---
|
|
|
|
This is Hacker Public Radio Episode 3567 for Tuesday the 5th of April 2022.
|
|
Today's show is entitled, What is Noom and Why Is It Important?
|
|
It is hosted by JWP and is about 17 minutes long.
|
|
It carries a clean flag.
|
|
The summary is.
|
|
A short podcast about how it works and it is good.
|
|
Good day.
|
|
My name is JWP and today I am going to talk to you about NVMe technology.
|
|
So what is this NVMe technology?
|
|
It stands for non-volatile memory express.
|
|
It's a new protocol for accessing high-speed storage media that brings many advantages
|
|
compared to latest legacy protocols.
|
|
But what is NVMe and why is it important to a data driven business?
|
|
As people in businesses contend with perpetual growth of data, they need to rethink how
|
|
data is captured, preserved, accessed and transformed, performance economics and endurance
|
|
of data at scale is paramount.
|
|
NVMe is having a great impact on businesses and people and what they can do with the data,
|
|
particularly fast data for real-time analytics and emerging technologies.
|
|
In this podcast, I'll explain what NVMe is and share a deep technical dive into how
|
|
the storage architecture works.
|
|
In an upcoming podcast, I will cover what features and benefits it brings to people and
|
|
businesses and use cases where it's being deployed today and how many customers and
|
|
normal people can take advantage of NVMe, SSDs and platforms that feature fully flash
|
|
storage systems for everything from IOT to applications to personal gaming.
|
|
That's right, you can have this on a personal gaming thing.
|
|
Over the years, I've done many podcasts via the network that have been associated with
|
|
storage data protocols and somewhere or the other for more than a decade.
|
|
This has gone on.
|
|
I've worked both professionally and privately with PCIe, SSD products and long-term storage
|
|
technologies for years and years.
|
|
Watching the evolution of storage devices from up close, I'm incredibly excited about
|
|
the transformation with NVMe is bringing to individual people and to data centers and
|
|
the unique capability of the technology to deliver innovation up and down the stack.
|
|
NVMe is opening a new world of possibilities for everyone.
|
|
Okay, so how did the evolution of NVMe start?
|
|
The first flash-based SSDs were leveraged by legacy, SATA and SAS interfaces, protocols
|
|
and form factors to minifies changes in the existing hard drive HDD-based technology
|
|
storage systems.
|
|
However, none of these interfaces protocols was designed for high-speed storage, i.e.
|
|
NAND and that's capital N, A, and D or persistent memory because the interface speed performance
|
|
of the new storage media and the proximity to the CPU, PCIe, PCIe was the next logical
|
|
storage interface, PCIe slots directly connect to the CPU by providing memory-like access
|
|
and can run a very efficient software stack.
|
|
However, early PCIe interface SSDs did not have industry standards and enterprise features.
|
|
PCIe SSDs leveraged memory proprietary firmware, which was particularly challenging for
|
|
system scaling for various reasons, including running and maintaining device firmware and
|
|
firmware device capabilities with different system software, not always making the best
|
|
use of available lands for CPU Prox 7a and lack of value features for enterprise or personal
|
|
workloads.
|
|
The NVMe specifications emerge primarily because of these changes.
|
|
So what is NVMe?
|
|
NVMe is a high performance, NUMA, NUMA stands for non-uniform memory access, optimized
|
|
and highly scalable storage protocol that connects to the host from the memory subsystem.
|
|
The protocol is relatively new, feature rich and designed from the ground up for non-volatile
|
|
memory media in NAD, N A N D and persistent memory directly connected to the CPU via the
|
|
PCIe interface.
|
|
The protocol is built on a high-speed lanes.
|
|
PCIe generation 30 can link or PCIe Gen 3 link can offer a transfer speed of more than
|
|
2X that of the standard SATA.
|
|
And so what you have is you have the CPU and he has his normal access to his DRAM and
|
|
then he has a direct access to the NVMe SSDs that are connected over his PCIe lane.
|
|
And then before you would have the, you also still have access to your normal host bus
|
|
adapter and your normal SSDs.
|
|
So either you be coming through your fiber channel adapter or you would have a host bus
|
|
adapter that's like a scusy controller times passed or a smart controller inside your
|
|
box to control the SSD.
|
|
And so what is the value of NVMe?
|
|
The NVMe protocol capitalizes on parallel low latency database to the underlying media
|
|
similar to high performance processor architectures.
|
|
This offers significantly higher performance and lower latency compared to legacy, SAS
|
|
and SATA protocols.
|
|
This not only accelerates the existing applications that require high performance but also enables
|
|
new applications and new capabilities for real time workload processing in a data center
|
|
and an edge.
|
|
Conventional protocols consume many CPU cycles to make available applications and these
|
|
are wasted compute cycles cost.
|
|
People and businesses real money, IT infrastructure budgets are not growing at the pace of data
|
|
and are always under tremendous pressure to maximize returns on infrastructure, both
|
|
in storage and compute because NVMe can handle rigorous application of workloads with smaller
|
|
infrastructure footprint, people and organizations can reduce their total cost of ownership and
|
|
accelerate the top line of their business or personal productivity growth.
|
|
Okay, so the NVMe architecture and understanding IOQs.
|
|
So let's take a deeper dive into the NVMe architecture and how it achieves high performance
|
|
and low latency.
|
|
MVE can support multiple IOQs with up to 64K with each Q having 64K entries.
|
|
Legacy, SAS and SATA can only support single Qs with each can have 254 and 32 entries respectively.
|
|
The MVE host software can create Qs up to the maximum allowed by the MVE controller
|
|
as per the system configuration and expected workload.
|
|
MVE supports scatter slash gather IOs minimizing the CPU overhead on data transfers and even
|
|
provides the capacity of changing their priority on based on workload requirements.
|
|
This is a very simple view of the communication between the host and the NVMe controller.
|
|
This architecture allows the application to start, execute and finish multiple IO requests
|
|
simultaneously and use the underlying media in the most effective way to maximize the
|
|
speed limits.
|
|
So how do these commands work?
|
|
So how do MVE commands work?
|
|
The way this works is that the host writes IOQ and the doorbell registers IOQ ready signal
|
|
and the NVMe controller then picks the IOQ and executes and sends the IO completion Qs
|
|
followed by an interrupt to the host.
|
|
The host records the IOCompletion Qs and clears the door register which is the IOQ completion
|
|
signal and this translates into significantly lower overheads compared to SAS and SATA.
|
|
So in this way you get the controller and it fetches the IOQ and then the controller
|
|
then executes the IO command Qs and the controller sends the IO command completion Qs and then
|
|
the controller generates interrupt and on the other side of the thing, the host submits
|
|
the IO submission or the Q, the host bells, the host bells, the door register Q ready and
|
|
then the host receives the IOQ and then the host clears the register when it's complete.
|
|
Why does NVMe get the most performance from multi-core processors?
|
|
As I mentioned NVMe is a NUMA optimized protocol.
|
|
This allows multiple CPU cores to share ownership of the Qs, their priority as well as
|
|
arbitration mechanisms and the authenticity of the commands such as NVMe SSDs can scatter
|
|
slash gather commands and process them out of turn at far higher IObs and lower data
|
|
to get these. So what are some of the NVMe form factor and standards? The NVMe specification
|
|
is a collection of standards managed by a consortium. Now I realize that this sounds very
|
|
dangerous but it's just a simple consortium. I much like the ARM consortium or any of
|
|
these other things, you know people get together and they sort of make the standard for
|
|
this. And so it's currently, it is currently the standard for the PCIe solid state drives
|
|
for all form factors and these include standard form factors such as the 2.5, you 0.2
|
|
factor, the internal mounted M2 and adding card which is called AIC and the various EDSFF
|
|
form factors. There are many interesting developments happening on added features to the standard
|
|
like multiple Qs, combined IOs, defined ownership, the prioritization process, multi-path
|
|
and virtualization of IOs capture a synchronously device updates and many other enterprise features
|
|
that have not existed before. I will go into depth about these features and how they're
|
|
opening up new possibilities for private and personal businesses. So we're seeing standard
|
|
use cases more often. One example is zone storage and ZNS SSDs. So NVMe zone namespace or
|
|
ZNS is a technical proposal under consideration by the NVMe express organization. It came
|
|
about to contend with massive data management and large scope infrastructure deployments by
|
|
moving intelligent data placement from the drive to the host. To do so, it divides the
|
|
LBA of the namespace into zones that must be written sequentially and then and if written
|
|
again must be explicitly reset. The specification introduced a new type of NVMe drive that provide
|
|
several benefits over traditional NVMe SSDs such as higher performance through right application
|
|
reduction, higher capacities by lowering over positioning, lower costs due to SSD controller
|
|
and DRAM foot print and improved latencies. Another interesting use case is the SD which is
|
|
a trademark and micro SD express card which marries the SD and micro SD card with the PCIe
|
|
and NVMe interfaces. This is an example and in this example the capabilities, the next
|
|
generation high performance mobile computing. So yes, your SD card and your micro SD
|
|
card will soon have a space on the PCIe lane. Lastly, the NVMe protocol is not limited
|
|
to simply connecting flash drives. It may be also used as a networking protocol or NVMe
|
|
over fabrics. Excuse me. So again, lastly, the NVMe protocol is not limited to simply
|
|
connecting flash drives. It may also be used as a networking protocol or NVMe over fabrics.
|
|
This new networking protocol enables high performance storage networking fabric on common
|
|
frameworks for a variety of transports. So why is NVMe important for you? So personal
|
|
or enterprise systems are generally data starved. The exceptional rise in data and demands
|
|
from a new applications can bog down with a traditional SSD, even high performance SSDs
|
|
connected to legacy storage protocols can experience lower performance, higher latency and
|
|
poor quality of service. When confronted with some of the new challenges of fast data,
|
|
the NVMe's unique features help avoid the bottlenecks for everything from traditional
|
|
scale-up database applications to emerging edge computing architectures and scale to meet
|
|
new data demands. Designed for high performance, non-bottled media storage NVMe is the only
|
|
protocol that stands out in highly demanding compute and intensive enterprise, cloud and
|
|
edge data ecosystems or if you're playing Call of Duty. I hope that this blog or not
|
|
the blog that this podcast has helped you understand NVMe and why it's important to
|
|
you. You can continue studying this by going to westerndigital.com and searching for
|
|
NVMe. All right, hey guys, you all have a great day and if you don't need anything, my
|
|
name is JWP and you can reach me at JWP5 at hotmail.com. Thank you so much.
|
|
You have been listening to Hacker Public Radio at Hacker Public Radio. Today's show was
|
|
contributed by a HBR listener like yourself. If you ever thought of recording podcasts,
|
|
you click on our contribute link to find out how easy it leads. Hosting for HBR has been
|
|
kindly provided by an onsthost.com, the Internet Archive and our sings.net. On this
|
|
otherwise stated, today's show is released under Creative Commons Attribution 4.0 International
|
|
License.
|