The Intel Optane PMem module is an emerging technology in which nonvolatile media is placed on a dual inline memory module (DIMM). The DIMM is installed on the memory bus, which is traditionally used only for volatile memory.
This new persistent memory is designed to reside on the same bus along with volatile memory such as DRAM. It works with DRAM to achieve higher overall system memory capacity or to allow it to achieve better performance through DRAM caching.
Unlike DRAM DIMMs, persistent memory DIMMS retain the data that is stored on them when the system shuts down or loses power. This feature allows the technology to be used as a form of permanent storage like HDDs or SSDs, except with memory-like latencies. Intel Optane PMem is based on the Intel Optane Memory technology and helps keep more data closer to the CPU for faster processing.
Intel Optane PMem comes in higher capacities than traditional DRAM. PMem modules come in 128 GB, 256 GB, and 512 GB capacities, which are vastly larger than DRAM flash drives that typically range from 4 GB to 128 GB. Persistent memory modules (PMMs) are on the same channel as DRAM and must be populated on the slot closest to the CPU on each channel. A recommended configuration uses a 4:1 or an 8:1 ratio. In our solution deployment, we used the following ratios:
When deployed in a server, the persistent memory modules (PMMs) can be configured in various operating modes. The operating modes include Memory Mode and App Direct Mode, along with a sliding scale of in-between allocations called mixed mode. However, this guide addresses Memory Mode and App Direct Mode only.
In Memory Mode, persistent memory modules are used similarly to DRAM, as shown in the following figure. There is no need for specific software or changes to existing applications. Persistent memory behaves like DRAM keeping the data “volatile”, though the volatile key is cleared after every power cycle.
In Memory Mode, persistent memory is used as an extension of DRAM and is managed by the host memory controller. There is no set ratio of persistent memory to DRAM; the mix depends on application needs. Regarding the latency profile, any hits to the DRAM cache (near memory) deliver with submicrosecond latency. However, any cache misses flow to the persistent memory (far memory), which delivers latency in the submicrosecond range.
App Direct Mode requires specific persistent memory-aware software and applications. This mode makes the persistent memory “in place persistent” but is still byte-addressable as is normal memory.
In App Direct Mode, persistent memory remains cache coherent. It also offers the ability to perform:
The following figure shows the operation of App Direct Mode:
You can also configure persistent memory as storage over App Direct. Persistent memory acts in blocks like SSDs do, with traditional read/write instructions. This method works with existing file systems, offers atomicity at a block level, and is block-size configurable (4 K, 512 B). An NVDIMM driver is required to use storage over App Direct. This mode enables capacity scaling and better performance, lower latency, and higher endurance than traditional enterprise class SSDs.