NVDIMM

A NVDIMM (pronounced "en-vee-dimm") or non-volatile DIMM is a type of persistent random-access memory for computers using widely used DIMM form-factors. Non-volatile memory is memory that retains its contents even when electrical power is removed, for example from an unexpected power loss, system crash, or normal shutdown. Properly used, NVDIMMs can improve application performance and system crash recovery time. They enhance solid-state drive (SSD) endurance and reliability.

Many "non-volatile" products 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 are many emerging non-volatile memories in development and a few that have been launched including Magnetoresistive RAM (MRAM), Intel's 3D XPoint (discontinued in 2022), Nano-RAM based on carbon nanotubes. The goal of this technology is able to scale cost-effectively scale out so persistent memory could replace DRAM as the main system memory in enterprise systems.

Types
There are three types of NVDIMM implementations by JEDEC Standards org:
 * NVDIMM-F: DIMM with flash storage. System users will need to pair the storage DIMM alongside a traditional DRAM DIMM. While there's no official standard, NVDIMM-F type of modules have been available since 2014.
 * NVDIMM-N: DIMM with flash storage and traditional DRAM on the same module. 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 for the module while the data in DRAM is being copied to the flash storage.
 * NVDIMM-P: specification fully released by JEDEC in February 2021. It enables computer main memory to be persistent, using persistent memory technology and can share the DDR4 or DDR5 DIMM interconnect with DRAM DIMMs.

Non-Standard NVDIMM implementations:
 * NVDIMM-X: DDR4 DIMM with NAND Flash storage and volatile DRAM on the same module, developed by Xitore.

As of 2024, most NVDIMMs used NAND flash as the non-volatile memory. Emerging memory technologies aim to achieve persistency without a cache or two separate memories. Intel and Micron have released in 2017, then discontinued in 2022, the 3D XPoint PCM technology, but it never was sold in DIMM format, contrary to announcements. Sony and Viking Technology have announced an NVDIMM-N product based on the ReRAM technology, but it never reached the market. Similarly, in 2015, Samsung and Netlist announced a NVDIMM-P product, possibly based on Z-NAND.

Backup power
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 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.

Interface
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 and ACPI, was based on the DDR4 interface.

Uses
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.