An in-depth look at Optane persistent memory and its operating modes
Intel's 3D XPoint technology can be set up in two ways. Find out how the Memory Mode and Application Direct Mode differ in terms of app compatibility, performance and features.
Ever since computers replaced magnetic cores with silicon chips, semiconductor researchers and system architects have been searching for the holy grail of memory technologies -- one that combines the speed and random addressability of dynamic RAM with the non-volatility and cost-effectiveness of flash memory. That search has brought us to 3D XPoint technology and Intel Optane persistent memory.
How exactly have we gotten here? The development of flash memory rapidly progressed to allow electrical erasure, high densities through NAND storage blocks and exponential increases in capacity. Now we have today's memory-storage technology hierarchy that trades off performance for capacity. As a result, according to Intel, flash capacity has increased by seven orders of magnitude over the past three decades, enabling flash to increasingly displace hard disks in primary storage.
The problem with flash is it's optimized for capacity, not performance, and its on-chip architecture makes it incapable of random access reading and writing of arbitrarily sized data blocks like DRAM. 3D XPoint is designed to fill this performance and usability gap via a storage medium that uses changes in resistance, not capacitive charge like DRAM and flash, while allowing random access via a three-dimensional cross point -- hence, the name -- structure.
After years of development, Intel has incorporated 3D XPoint into its Optane product line, which initially consisted of only SSD alternatives used for primary storage or cache accelerators. More recently, Optane evolved to include another category of storage class memory, application-addressable modules that can replace or supplement DRAM. Coincident with the introduction of the next-generation Xeon Scalable processors (aka Cooper Lake), Intel announced the Optane persistent memory modules (PMM) in 128 GB to 512 GB capacities, or about 16- to 32-times the size of current DRAM modules.
Optane persistent memory modules sit on the system memory bus just like DRAM. However, unlike DRAM, they are only supported on second-generation Xeon Scalable Processors and systems with the Intel Purley chipset.
Due to the unique operating characteristics of 3D XPoint devices, the system BIOS can configure Optane modules to operate in one of two ways: Memory Mode or Application Direct Mode. These two approaches trade off application compatibility for performance and features. We explain each in more detail below.
Memory Mode: Compatible, but volatile
Memory Mode creates a single hybrid pool of system memory and, hence, doesn't require changes to application code since it operates just like DRAM. Because the OS and apps see Optane as regular system memory, it does not save data in the event of a power loss because there would be no way for the system to recover it. Memory Mode is targeted at legacy applications with large memory requirements such as virtualized databases.
Purley memory controllers use the combination of DRAM and Optane intelligently, with the faster DRAM acting as a cache for the most frequently accessed data. For every data request, the controller first checks the DRAM cache. If the data is present, it's returned with no added latency compared with a conventional DRAM-only system.
According to Intel, on applications with consistent or repeatable data access patterns, the controller can predict the most-used data and keep it in DRAM. In contrast, workloads with highly random access patterns will see some performance degradation compared with an all-DRAM system, assuming the memory capacity is sufficient to prevent swapping to disk.
Application Direct Mode: Persistent, but some assembly required
In App Direct Mode the OS and application are aware that there are two types of system memory -- fast, volatile DRAM and slower, persistent 3D XPoint -- and can target the best type when writing data: DRAM for applications that require the lowest latency but can tolerate memory volatility, and Optane for things that need persistence or data sets too large to fit in DRAM. The ability to target subsets of data for persistent storage is the critical difference between App Direct and Memory Mode.
Unlike Memory Mode, app direct requires the OS or virtualization environment be able to run a file system capable of handling persistent system memory.
According to Intel's support documentation, several OSes support one or both Optane operating modes. The different operating characteristics of each mode also affects how much memory the system registers as available. Because Memory Mode treats DRAM as a cache, it isn't counted as part of total system memory. Therefore, if you had a system with 512 GB of Optane modules and 64 GB of DRAM, the OS will only register 512 GB as available. In contrast, in App Direct Mode, the applications and OS treat DRAM and Optane differently, so the system would report 576 GB free.
A mixed mode configuration, in which part of the Optane capacity is used in Memory Mode and part in App Direct Mode, is also possible. An Intel support document said, "When part or all of persistent memory module capacity is set to Memory Mode, the DRAM capacity is hidden from the application and becomes the last level cache" (emphasis added).
For details and guidance on selecting persistent memory operating modes, Intel provides the following tutorials.
How Optane is being used
It's unclear how much demand there is for Intel's Optane products. A company spokesman said Intel is "seeing good traction within the market," and has more than 200 proofs of concept in the works with customers.
Intel identifies the following five applications as good candidates for the type of memory expansion enabled by incorporating Optane:
- In-memory analytics with SAP HANA;
- Virtualized databases in multi-tenant environments;
- Video servers for content streaming and content delivery network caches;
- Machine learning analytics with SAS Viya platform; and
- Hyperconverged infrastructure system scaling to support more virtual workloads.
That SAP appears in the list is no coincidence, as the two companies have announced a multiyear partnership intended to optimize SAP's suite of enterprise software applications, including SAP S/4HANA, for Intel Scalable processors and Optane persistent memory. Whether SAP customers or users of other memory-intensive applications will clamor for systems with Optane persistent memory is an open question that won't be answered until Intel starts revealing sales numbers and pricing.
How Optane could deliver on the promise of hyper-convergence
Key storage class memory technologies you should know about
Persistent memory advances could be a game-changer