18.4. NVDIMM access modes
Non-Volatile Dual In-line Memory Module namespaces support different access modes including devdax, fsdax, and raw modes, each with specific capabilities and limitations.
You can configure Non-Volatile Dual In-line Memory Modules (NVDIMM) namespaces to use either of the following modes:
devdax, or device direct access (DAX)With
devdax, NVDIMM devices support direct access programming as described in the Storage Networking Industry Association (SNIA) Non-Volatile Memory (NVM) Programming Model specification. In this mode, I/O bypasses the storage stack of the kernel. Therefore, no Device Mapper drivers can be used.Device DAX provides raw access to NVDIMM storage by using a DAX character device node. Data on a
devdaxdevice can be made durable using CPU cache flushing and fencing instructions. Certain databases and virtual machine hypervisors might benefit from this mode. File systems cannot be created ondevdaxdevices.Devices in this mode are available as
/dev/daxN.M. After creating the namespace, see the listedchardevvalue.fsdax, or file system direct access (DAX)With
fsdax, NVDIMM devices support direct access programming as described in the Storage Networking Industry Association (SNIA) Non-Volatile Memory (NVM) Programming Model specification. In this mode, I/O bypasses the storage stack of the kernel, and many Device Mapper drivers therefore cannot be used.You can create file systems on file system DAX devices.
Devices in this mode are available as
/dev/pmemN. After creating the namespace, see the listedblockdevvalue.rawPresents a memory disk that does not support DAX. In this mode, namespaces have several limitations and should not be used.
Devices in this mode are available as
/dev/pmemN. After creating the namespace, see the listedblockdevvalue.