A NVDIMM (pronounced "en-vee-dimm") or non-volatile DIMM is a type of non-volatile memory (NVM) for computers using widely used DIMM form-factors. NVM is a memory that retains its contents even when electrical power is removed, for example from an unexpected power loss, system crash, or normal shutdown. NVDIMMs share the existing memory interconnect with ordinary DRAM DIMMs. Some of them (NVDIMM-N) act like ordinary DIMMs with added non-volatile functionality, allowing improvement of system crash recovery time. Others (NVDIMM-F) act more like a faster way to attach a solid-state drive (SSD), improving application performance. [1]
NVDIMM-N products act very similarly to regular volatile memory. They use volatile memory during normal operation and dump the contents into non-volatile memory if the power fails, using an on-board backup power source. Volatile memory is faster than non-volatile; it is byte-addressable; and it can be written to arbitrarily, without concerns about wear and device lifespan. However, including a second memory to achieve non-volatility (and the on-board backup power source) increases the product cost compared to volatile memory.
There was a lot of interest in the early 2010s for the replacement of the NAND flash technology used in SSDs, as 2D NAND scaling came to a halt. [2] [3] The promise of new and faster nonvolatile memory technologies, nearly as cheap as NAND flash and as fast as DRAM, lead to a goal (in 2014) to scale cost-effectively scale out so persistent memory could replace DRAM as the main system memory in enterprise systems. [1] This did not happen: the largest of these ventures, Intel's 3D XPoint memory, was offered as a DIMM in 2019–2022, but poor market reception ultimately lead to the cancellation of the department. [4]
Nevertheless, hope remains for new non-volatile memory technologies. Magnetoresistive RAM continues to see use. A Nano-RAM based on carbon nanotubes was announced in 2020. [5]
There are three types of NVDIMM implementations under the JEDEC taxonomy: [6]
| Name | Memory types | Byte access? | Block access? | Standardized? | Notes |
|---|---|---|---|---|---|
| NVDIMM-F | NAND Flash | No | Large | No | No standard, but has been available since 2014. Memory-mapped. Flash-like performance. |
| NVDIMM-N | DRAM and NAND Flash | Yes | Small | Yes | The computer accesses the traditional DRAM directly during system runtime. In the event of a power failure, the module copies the data from the volatile traditional DRAM to the persistent flash memory, and copies it back when power is restored. It uses a small backup power source (often a supercapacitor) for the module while the data in DRAM is being copied to the flash storage. DRAM-like performance. |
| NVDIMM-P | DRAM and/or NVM | Yes | Yes | Feb 2021 [8] | Originally meant to be used with non-flash "persistent memory" (NVM) technology. |
Some types do not exactly fit onto any of these options:
| Name | Memory types | Byte access? | Block access? | Commercialized? | Notes |
|---|---|---|---|---|---|
| NVDIMM-X | DRAM and NAND Flash, monolithic chip | ? | Yes | Small scale | Flash part is mush larger than the DRAM part. Acts as a fast memory-bus-attached SSD. [9] |
| Optane Persistent Memory | 3D XPoint | Yes | Yes | Discontinued | 2019–2022. Available with Xeon Scalable 2nd and 3rd gen processors. Could be used as volatile main memory, persistent memory, or persistent block device. [4] |
As of 2024, most NVDIMMs used NAND flash as the non-volatile memory. [10] Emerging memory technologies aim to achieve persistency without a cache or two separate memories.
NVDIMMs evolved from the BBU (battery backed up) DIMM, which used a backup battery to sustain power to a volatile memory for up to 72 hours. However, batteries are disfavored in computer components because they have a limited lifespan, they may be regarded as hazardous waste, and may contain heavy metals [ citation needed ] which violate RoHS compliance.
When the module includes non-volatile memory, backup power is required for only a short time after the computer's main power fails, while the module copies the data from volatile to non-volatile memory. Therefore, modern NVDIMMs use on-board supercapacitors to store energy.
A few server vendors still make products using the DDR3 interface to the computer, but standardization work in 2014 and 2015, such as at JEDEC [13] and ACPI, [14] was based on the DDR4 interface.
Xeon processors since Broadwell support NVDIMM-N.
The BBU DIMM was originally designed for use as the cache of RAID HBAs (host bus adapters) or systems, to enable data in the cache to survive a power failure. NVDIMMs have moved beyond RAID applications into fast storage appliances or in-memory processing for the data center and cloud computing. [16]