Encyclopediav0

Storage-Class Memory

Last updated:

Storage-Class Memory

Storage-class memory (SCM) is a type of physical computer memory that combines the performance characteristics of dynamic random-access memory (DRAM) with the data persistence of non-volatile storage, such as NAND flash, creating a byte-addressable tier between traditional memory and storage [5]. It is a key implementation of persistent memory (PMem), a technology that retains its content through power cycles and can be used as top-tier storage, which is why PMem is often referred to as storage-class memory [4]. SCM represents a significant architectural shift by treating non-volatile memory as part of a server's main memory space, blurring the long-standing dichotomy between volatile working memory and persistent storage [5]. This anticipated growth in persistent memory solutions underscores its critical role in shaping the future of data storage and processing, making it a pivotal area for technology investment and innovation [3]. The defining characteristic of SCM is its ability to provide persistent, byte-granularity data access with latencies on the order of DRAM, while ensuring data survives power outages [6]. It achieves this by integrating memory media, a power source for persistence, and the necessary controllers onto a module, such as a dual in-line memory module (DIMM), that plugs directly into the server's memory bus [5]. This direct attachment allows the CPU to access data using standard load/store instructions, as it would with DRAM, but with the added guarantee of durability [8]. While the term SCM describes the broader class of technology, the dominant commercial product in the market has been 3D XPoint, sold by Intel under the Optane brand, particularly in the form of the Intel Optane DC Persistent Memory Module (Optane DC PMM) [6][7]. The commercial availability of such scalable nonvolatile memory DIMMs marked a major milestone in bringing SCM from research to widespread deployment [6]. SCM enables transformative applications by significantly reducing the latency and increasing the throughput of data-intensive operations. Its primary uses include accelerating in-memory databases, reducing boot and application load times, enabling instant recovery of large datasets, and facilitating new programming models for persistent data structures [1][4]. The technology's significance lies in its potential to reshape system architecture, allowing for larger, persistent memory pools that can hold entire working datasets, thereby reducing reliance on slower block-based storage. However, the market trajectory of SCM has seen notable shifts; Intel, a primary driver of the technology with its Optane line, discontinued the business, hinting in a statement that it was not a "sufficiently profitable" venture, despite the technical promise of the underlying 3D XPoint media [2]. Nevertheless, the fundamental concept of SCM remains a key innovation in memory hierarchy, addressing the growing performance gap between processor speeds and storage latency in modern computing.

Overview

Storage-class memory (SCM) represents a transformative category of computer memory technology that bridges the traditional performance and persistence gap between volatile main memory and non-volatile storage devices. SCM is a type of physical computer memory that combines characteristics of dynamic random-access memory (DRAM), NAND flash memory, and incorporates a power source to ensure data persistence [11]. This hybrid architecture enables SCM to be treated as DRAM by the operating system and processor, allowing it to be included directly within the server's memory address space while maintaining non-volatility [11]. The fundamental innovation of SCM lies in its ability to provide persistent media that supports byte-level access, unlike block-based storage devices, while offering latencies and bandwidths that approach those of conventional DRAM [11].

Technical Architecture and Operating Principles

The architecture of storage-class memory is fundamentally distinct from both DRAM and NAND flash. Unlike DRAM, which stores data in capacitors that require constant refreshing and lose information when power is removed, SCM utilizes non-volatile memory technologies that retain data without power. Conversely, unlike NAND flash, which operates at the block level (typically 4KB or larger blocks) and requires complex wear-leveling algorithms, SCM supports direct byte-addressable access similar to DRAM [11]. This byte-addressability is a critical feature that enables SCM to be mapped into the system's physical memory space using standard memory controllers and interfaces. SCM implementations typically employ dual in-line memory module (DIMM) form factors that plug into standard memory slots, though they require specialized memory controllers and BIOS support to manage their unique characteristics. These modules combine the non-volatile memory media with power-fail protection circuitry, often including capacitors or other energy storage devices that provide sufficient power to complete in-flight write operations and ensure data consistency during unexpected power loss [11]. The memory controllers must handle the asymmetric read and write latencies characteristic of many SCM technologies, where write operations may be significantly slower than reads, unlike the more symmetric performance of DRAM.

Performance Characteristics and Comparison

Storage-class memory occupies a distinct position in the memory-storage hierarchy, offering performance characteristics that place it between DRAM and NAND flash. While specific performance metrics vary by implementation, SCM typically provides access latencies in the range of hundreds of nanoseconds to low microseconds, compared to DRAM's 50-100 nanosecond range and NAND flash's 50-100 microsecond range for reads. Bandwidth for SCM can reach tens of gigabytes per second, significantly higher than even the fastest NVMe SSDs but generally lower than contemporary DRAM. The endurance characteristics of SCM also differ substantially from both DRAM and NAND flash. Unlike DRAM, which has essentially unlimited write endurance, SCM technologies have finite write cycles, though typically orders of magnitude higher than NAND flash. For example, while consumer NAND flash might endure 1,000-3,000 program/erase cycles, SCM technologies can often withstand 10^7 to 10^8 write cycles or more. This enhanced endurance reduces the need for aggressive wear-leveling algorithms and enables simpler, more predictable performance characteristics.

3D XPoint Technology and Commercial Implementation

In the current market, the primary commercial implementation of SCM technology is 3D XPoint (pronounced "cross point"), developed jointly by Intel and Micron and sold by Intel under the Optane brand name [11]. 3D XPoint represents a significant departure from both DRAM and NAND flash at the physical level. Instead of using transistors and capacitors (like DRAM) or floating-gate transistors (like NAND flash), 3D XPoint employs a bulk material property change mechanism for data storage. The technology utilizes a three-dimensional cross-point array structure where memory cells are located at the intersection of perpendicular word lines and bit lines. Each cell consists of a selector and a storage element that changes resistance states to represent binary data. This architecture enables high density through vertical stacking while maintaining fast access times. The selector device allows individual cells to be accessed without disturbing neighboring cells, enabling true byte addressability. Intel's implementation of this technology in the Optane DC Persistent Memory Module (DCPMM) provides capacities ranging from 128GB to 512GB per module, significantly higher than typical DRAM modules while maintaining access times on the order of DRAM [11].

System Integration and Programming Models

Integrating SCM into computer systems requires support at multiple levels of the hardware and software stack. At the hardware level, processors must support memory controllers capable of handling the persistence characteristics of SCM, including power-fail protected write operations and appropriate flushing semantics. The Intel x86 architecture, for example, includes specific instructions for persistent memory management, such as those for cache line flushing and memory fencing operations that ensure data reaches the persistent domain [12]. At the operating system level, SCM can be utilized in multiple modes. In Memory Mode, SCM acts as a larger, slower backing store for DRAM, extending the effective memory capacity transparently to applications. In App Direct Mode, applications can access SCM directly as persistent memory, requiring explicit programming to manage data persistence. This latter mode enables innovative applications that can maintain complex data structures across power cycles without serialization to storage devices. Programming models for persistent memory have evolved to provide various levels of abstraction. The lowest-level model provides direct access to memory-mapped files on SCM, requiring applications to handle all aspects of data consistency and crash recovery. Higher-level models include transactional libraries that provide ACID (Atomicity, Consistency, Isolation, Durability) semantics for operations on persistent data structures. These libraries often employ techniques such as undo logging or copy-on-write to ensure atomic updates to complex data structures.

Applications and Use Cases

The unique characteristics of SCM enable several important applications that were previously impractical or inefficient. In database systems, SCM allows for in-memory databases that maintain persistence without the overhead of checkpointing to storage. This can reduce recovery times from minutes to seconds after a system crash. For example, a database can store its entire working set in SCM, with indexes and transaction logs residing in the same persistent memory space, enabling instantaneous recovery. In high-performance computing and scientific computing, SCM enables larger working sets than would be possible with DRAM alone, allowing problems with substantial memory requirements to be solved more efficiently. Applications with large, pointer-rich data structures benefit particularly from SCM's byte addressability, as these structures can be persisted without serialization/deserialization overhead. Enterprise applications also benefit from SCM's characteristics. Virtualization platforms can use SCM to reduce the memory footprint of virtual machines by allowing more aggressive memory overcommitment while maintaining fast restart capabilities. Content delivery networks and caching layers can maintain larger, persistent caches that survive reboots, improving cache warm-up times and overall system responsiveness.

Future Developments and Research Directions

Research and development in SCM continues to advance along several fronts. New non-volatile memory technologies beyond 3D XPoint are under investigation, including phase-change memory (PCM), resistive RAM (ReRAM), magnetoresistive RAM (MRAM), and ferroelectric RAM (FeRAM). Each of these technologies offers different trade-offs in terms of performance, density, endurance, and cost. System architecture research focuses on optimizing the entire computing stack for SCM, from processor microarchitecture to operating systems to programming languages and applications. This includes developing new file systems optimized for byte-addressable persistent memory, such as NOVA and BPFS, which offer significantly different design trade-offs compared to block-based file systems. Future developments will likely focus on increasing densities, improving performance, reducing costs, and enhancing the software ecosystem to make SCM more accessible to a broader range of applications and developers.

History

Early Conceptual Foundations (1990s–2000s)

The conceptual underpinnings of storage-class memory (SCM) emerged from the growing performance gap between volatile dynamic random-access memory (DRAM) and non-volatile storage media like hard disk drives (HDDs). Researchers in the 1990s and early 2000s began exploring the potential of non-volatile memory technologies that could bridge this gap, offering persistence like storage with access latencies and byte-addressability closer to that of DRAM. This period was characterized by extensive academic and industrial research into novel memory technologies, including phase-change memory (PCM), magnetoresistive RAM (MRAM), and resistive RAM (ReRAM). These technologies promised to create a new tier in the memory-storage hierarchy, but commercial viability remained elusive due to challenges with density, endurance, cost, and integration into existing computing architectures [5].

The Rise of 3D XPoint and Intel Optane (2015–2018)

A significant breakthrough occurred in July 2015 when Intel and Micron Technology jointly announced 3D XPoint memory (pronounced "cross point"), a new non-volatile memory technology. The companies claimed it was up to 1,000 times faster and had 1,000 times greater endurance than NAND flash memory, while being about 10 times denser than conventional DRAM. This announcement marked the first major step toward a commercially viable SCM product. The technology utilized a unique, transistor-less cross-point array structure where memory cells sat at the intersection of perpendicular word and bit lines, enabling high density and fast switching via changes in the resistance of a bulk material [5]. Intel commercialized this technology under the Optane brand. In March 2017, it launched Optane-branded SSDs (Solid State Drives) using 3D XPoint media, connected via the PCIe/NVMe interface. While these drives offered exceptional low latency and high endurance compared to NAND SSDs, they operated in the block-accessible storage domain. The true realization of the SCM concept—placing persistent, byte-addressable memory directly on the memory bus—arrived in April 2019 with the launch of the Intel Optane DC Persistent Memory Module (Optane DC PMM) [5]. This product was a dual-in-line memory module (DIMM) that plugged into standard DDR4 memory slots, finally delivering the scalable nonvolatile memory DIMMs that researchers had long envisioned.

Commercial Deployment and Application Evolution (2019–Present)

The commercial availability of Optane DC PMMs catalyzed the exploration of new system architectures and software paradigms. The modules could be configured in two primary modes, each exploiting different aspects of SCM. In Memory Mode, the Optane PMM acted as a large, volatile memory capacity, with a portion of conventional DRAM serving as a direct-mapped cache to mitigate its higher latency and lower bandwidth compared to pure DRAM. This mode allowed servers to deploy very high memory capacities at a lower cost per gigabyte than DRAM alone, benefiting memory-intensive applications [5]. The more revolutionary App Direct Mode exposed the persistence and byte-addressability of the media to the operating system and applications. This required new programming models and file systems to properly manage data integrity and persistence. When utilized under a file system optimized for its load/store interface, Optane DC PMMs demonstrated significant performance gains, particularly for workloads involving many small, persistent writes [6]. This made them highly suitable for enterprise use cases demanding real-time analytics on large datasets, including:

  • Big data analytics and in-memory databases [5]
  • Cybersecurity analysis and fraud detection [5]
  • Financial trading applications [5]
  • Internet of Things (IoT) analytics and webscale personalization [5]

Concurrently, other SCM architectural approaches reached the market. Products like NVDIMM-N (Non-Volatile DIMM) combined DRAM with NAND flash and supercapacitors for energy backup, creating a persistent memory region. While effective, these solutions were often more expensive and complex than monolithic technologies like 3D XPoint. The broader category of persistent memory, encompassing devices on the memory bus with latency figures under 10 microseconds, began to establish itself as a critical tier for high-performance computing and data center workloads [5].

Market Shifts and the Path Forward (2022–Present)

In a major industry shift, Intel announced in July 2022 the discontinuation of its Optane memory business, ceasing future product development and winding down existing products. This decision was attributed to strategic refocusing and market factors, leaving 3D XPoint as the primary, albeit discontinued, commercial embodiment of monolithic SCM. Despite this, the conceptual and architectural impact of SCM persists. The software ecosystems, programming models (such as SNIA's NVM Programming Model and libraries like PMDK), and operating system support developed for Optane persistent memory remain relevant for future technologies. The end of Optane development refocused industry attention on other emerging non-volatile memory technologies as potential SCM candidates, including:

  • Advanced forms of MRAM, particularly Spin-Transfer Torque MRAM (STT-MRAM)
  • Ferroelectric RAM (FeRAM)
  • Carbon nanotube memory
  • Improved ReRAM and PCM variants

These technologies continue to be researched for their potential to offer the latency, endurance, and density required for a viable SCM product. The history of SCM, therefore, represents an ongoing journey in re-architecting the fundamental memory-storage hierarchy of computing systems, a pursuit that began with theoretical research, achieved a landmark commercial implementation with 3D XPoint, and continues to evolve as new technologies seek to fulfill the promise of persistent, high-performance, byte-addressable memory [5].

Description

Storage-class memory (SCM) represents a hybrid category of physical computer memory that converges the performance characteristics of volatile dynamic random-access memory (DRAM) with the persistent data retention of non-volatile storage media like NAND flash, typically incorporating an integrated power source to ensure data persistence during unexpected power loss [13]. This architecture enables the operating system to treat a portion of non-volatile memory as directly addressable system memory, integrating it into the server's main memory space rather than relegating it to a block storage device [13]. The fundamental value proposition of SCM resides in its positioning within the memory-storage hierarchy, offering a balance of cost, performance, and persistence that sits between traditional DRAM and solid-state drives (SSDs).

Technical Architecture and Positioning

SCM products are engineered to bridge the significant performance and cost gap that has long existed in the memory-storage pyramid. As of 2022, the cost per gigabyte for main memory (DDR4) was approximately $1.15, while SSD storage cost about $1.10 per GB, and hard disk storage was as low as $1.019 per GB [13]. This order-of-magnitude cost differential between tiers has historically forced system architects to make trade-offs between expensive, high-speed, volatile DRAM and cheaper, slower, persistent storage. SCM aims to occupy a middle ground, offering persistent media that can be accessed at the byte level with latencies and bandwidth much closer to DRAM than to NAND-based SSDs [13]. The physical implementation involves hardware devices that plug directly into the memory bus of a server, typically using a dual-in-line memory module (DIMM) form factor [13]. By placing persistent storage on the memory bus, these devices achieve access latencies that are superior to even NVMe-based SSDs, often falling into the sub-10 microsecond range [13]. This direct memory bus attachment is a key differentiator from storage devices connected via peripheral buses like PCIe, enabling the fine-grained, load/store programming model characteristic of main memory rather than the block-based access of storage.

Performance Characteristics and Access Models

A primary performance advantage of SCM is its access speed relative to conventional storage. SCM can read and write data as much as ten times faster than NAND-based solid-state drives [13]. This performance uplift stems from both the underlying media technology and the direct memory bus attachment, which eliminates protocol translation overhead and reduces latency. Access to data on an SCM module is faster than access to data in local PCIe-connected SSDs, direct-attached hard disk drives, and external storage arrays [13]. The memory-like nature of SCM is exemplified by its support for byte-addressability. Unlike block-based storage where data must be read and written in fixed-size chunks (e.g., 4KB blocks), SCM allows software to read or write individual bytes, much like DRAM [13]. This enables more efficient data structures and can significantly reduce software complexity and overhead for applications managing persistent data. The access times for these byte-granularity operations are on the order of DRAM latencies, though typically somewhat higher [13].

Commercial Implementation and Use Cases

In the commercial market, the primary SCM product has been 3D XPoint technology, sold by Intel under the Optane brand [13]. Intel's product portfolio included both dual-ported Intel Optane SSDs and Optane Persistent Memory (PMem) modules [13]. The Optane PMem modules, designed as DIMMs, came in capacities ranging from 128 GB to 512 GB per module and were compatible with systems that also accommodate PCIe-based SSDs [13]. These persistent memory modules support flexible configuration modes that allow system designers to optimize for different use cases. One common configuration is Memory Mode (or cached mode), where the SCM acts as a large, slower tier of main memory, with a portion of traditional DRAM serving as a direct-mapped cache for the most frequently accessed data [13]. In this mode, the operating system and applications see a single, contiguous memory address space that is the combined size of the DRAM cache and the SCM capacity. This architecture allows servers to deploy very high apparent memory capacities at a lower cost per gigabyte than using traditional DRAM alone, as SCM extends the capacity of standard DIMMs by using NAND as a backing store with DRAM as a cache for active data [13]. For applications with relatively small memory footprints that fit within the DRAM cache, the use of Optane DC memory in this mode has little performance impact [13]. Another configuration is App Direct Mode, where the SCM is exposed to applications as persistent, byte-addressable memory. This mode requires applications to be explicitly written or modified to manage data persistence directly, enabling ultra-low-latency data storage and recovery, often used for in-memory databases, real-time analytics, and other latency-sensitive workloads.

Economic and System Design Implications

The economic rationale for SCM is compelling in data center environments. Building on the cost data previously mentioned, the price differential between DRAM and persistent storage creates a significant incentive for technologies that can reduce total memory costs while maintaining acceptable performance [13][13][13][13][13][13]. By offering a cost-per-gigabyte that is lower than DRAM but with performance superior to SSDs, SCM enables new system architectures. For example, a server could be equipped with a smaller amount of expensive, high-bandwidth DRAM (e.g., 256 GB) and a much larger amount of SCM (e.g., 1.5 TB), creating a total memory footprint of 1.75 TB at a blended cost significantly lower than an equivalent capacity of pure DRAM [13]. This architectural shift impacts server design, software development, and data center economics. It allows for the consolidation of workloads that require large memory capacities, potentially reducing the total number of physical servers required. Furthermore, the persistence aspect of SCM can simplify software architectures for applications that require durable state, as data structures can remain in place across system restarts without requiring serialization to and from slower block storage.

Description

Storage-class memory (SCM) represents a hybrid category of physical computer memory that combines characteristics of both volatile dynamic random-access memory (DRAM) and non-volatile NAND flash storage, integrated with power management systems to ensure data persistence [13]. This technology fundamentally redefines the memory-storage hierarchy by treating non-volatile memory as directly addressable system memory, incorporating it within the server's physical memory space rather than relegating it to traditional storage subsystems [13]. SCM provides persistent storage media that supports byte-addressable access, enabling software to manipulate data at the granular level of individual bytes rather than being constrained to block-level operations typical of conventional storage devices [13].

Technical Architecture and Performance Characteristics

SCM products achieve their unique positioning through a layered architecture that extends the apparent capacity of standard dual in-line memory modules (DIMMs) by utilizing NAND flash as a backing store while employing DRAM as a high-speed cache for actively accessed data [13]. This architectural approach enables server deployments with significantly expanded memory capacities at substantially lower costs compared to configurations relying exclusively on traditional DRAM [13]. The performance characteristics of SCM bridge the substantial gap between DRAM and conventional storage, with access times measured on the order of DRAM latencies while maintaining data persistence across power cycles [13]. Persistent memory implementations consist of hardware devices that connect directly to the server's memory bus, bypassing the traditional storage interfaces that introduce substantial latency overhead [13]. This direct memory bus attachment enables latency figures that significantly outperform even the fastest Non-Volatile Memory Express (NVMe) solid-state drives, achieving sub-10 microsecond access times that approach those of volatile memory [13]. Comparative performance analysis indicates that SCM can perform read and write operations up to ten times faster than conventional NAND-based storage devices, while simultaneously offering byte-granularity access that eliminates the block-oriented limitations of traditional storage systems [13].

Commercial Implementation and Product Specifications

The primary commercial embodiment of SCM technology in the current market is 3D XPoint memory, marketed by Intel under the Optane brand name [13]. Intel's product portfolio includes both dual-ported Optane solid-state drives and Optane Persistent Memory modules designed for direct memory bus integration [13]. These persistent memory modules are available in capacities ranging from 128 gigabytes to 512 gigabytes per module, compatible with server systems that also accommodate PCIe-based solid-state drives [13]. As noted earlier, these modules support multiple operational modes that exploit different aspects of SCM technology. When configured in Memory mode (also referred to as cached mode), Optane DC persistent memory modules function as large-capacity memory devices with a DRAM cache that mitigates their relatively lower bandwidth and higher latency compared to pure DRAM [13]. In this configuration, applications with modest memory footprints experience minimal performance impact, while systems benefit from substantially expanded memory capacity [13].

Economic Positioning in the Memory-Storage Hierarchy

SCM occupies a distinctive economic position within the memory and storage continuum, positioned between the high-cost, high-performance domain of volatile memory and the lower-cost, higher-latency realm of persistent storage. Historical pricing data illustrates this positioning clearly:

  • Main memory (DDR4) has fluctuated between approximately $1.15 per gigabyte and $1.30 per gigabyte across various periods from 2019 to 2022 [13][13][13][13][13][13]
  • Solid-state drive storage has maintained pricing between approximately $1.09 per gigabyte and $1.15 per gigabyte during the same timeframe [13][13][13][13][13][13]
  • Hard disk drive storage has represented the most economical tier, ranging from approximately $1.019 per gigabyte to $1.04 per gigabyte across these periods [13][13][13][13][13][13]

SCM technology addresses the substantial cost differential between DRAM and persistent storage while significantly narrowing the performance gap. This economic positioning enables new system architectures that can deploy servers with dramatically expanded memory capacities at costs substantially below pure DRAM configurations, while maintaining access characteristics far superior to traditional storage solutions [13].

System Integration and Architectural Implications

The integration of SCM into computing systems necessitates reconsideration of traditional memory and storage hierarchies. By providing byte-addressable persistent storage on the memory bus, SCM enables programming models that can directly manipulate persistent data structures without the overhead of serialization, deserialization, and block-oriented input/output operations [13]. This capability has profound implications for database systems, in-memory computing frameworks, and applications requiring both large memory footprints and data persistence. Building on the operational modes discussed above, the architectural flexibility of SCM allows system designers to optimize configurations based on specific workload requirements. Applications that benefit from massive memory capacity but can tolerate slightly higher latency than pure DRAM can leverage SCM in Memory mode, while applications requiring true persistence at memory speeds can utilize App Direct mode for direct application control over the persistent memory regions [13]. The performance characteristics of SCM create new possibilities for data-intensive applications, particularly those involving real-time analytics, large-scale in-memory databases, and scientific computing workloads that exceed practical DRAM capacities. By providing access times measured in nanoseconds rather than microseconds (for SSDs) or milliseconds (for HDDs), SCM enables new classes of applications that were previously constrained by the performance limitations of traditional storage hierarchies [13][13].

Significance

Storage-class memory represents a fundamental architectural shift in computing infrastructure, creating a persistent tier that operates at speeds previously exclusive to volatile memory. By bridging the performance gap between dynamic random-access memory (DRAM) and NAND flash storage, SCM enables new application paradigms and significantly accelerates existing workloads that are bottlenecked by storage latency [11]. The technology's significance extends beyond raw performance metrics to encompass system design, data persistence models, and economic considerations for large-scale data processing.

Architectural Impact and System Design

The introduction of SCM necessitates a reevaluation of traditional storage hierarchy models. As noted earlier, the storage hierarchy from fastest to slowest is typically NV-DIMM, NVMe SCM, NVMe Flash, SAS/SATA Flash, and HDD [11]. SCM's position in this hierarchy—specifically as NVMe SCM—places it between volatile memory and conventional flash storage, creating what is effectively a new tier in the memory-storage continuum. This intermediate tier allows system architects to optimize for both performance and capacity in ways previously impossible with binary choices between expensive, low-latency DRAM and slower, higher-capacity NAND flash. SCM's physical implementation as modules that slide into dual inline memory module (DIMM) server ports fundamentally changes how persistent data is accessed by the processor [14]. Unlike traditional storage devices that communicate through storage-specific protocols and controllers, SCM modules connected via the memory bus enable the CPU to access persistent data with memory-like semantics. This architectural approach reduces the software overhead associated with storage I/O operations, as data movement no longer requires traversal through multiple controllers and protocol translation layers. The significance of this design is particularly evident when comparing access latencies: real-world measurements show SCM devices like Optane delivering approximately 10µs of latency compared to 20-25µs with NAND flash, representing a 50-60% reduction in access time [11].

Performance Characteristics and Application Acceleration

The performance advantages of SCM manifest most dramatically in input/output operations per second (IOPS), where SCM devices demonstrate approximately 10x better performance compared to NVMe NAND flash devices [11]. This substantial improvement enables previously impractical real-time processing of large datasets. The performance characteristics stem from both the underlying media technology and the access protocols employed. When configured as block-accessible storage through NVMe protocols, SCM benefits from NVMe's massively parallel queue architecture, which enables up to 64,000 queues with 64,000 commands each—a fundamental improvement over legacy storage interfaces like SATA that funnel commands through a single queue [15]. This parallelism aligns perfectly with modern multi-core processor architectures, eliminating contention points that traditionally limited storage performance in high-concurrency environments. In enterprise environments, SCM's performance profile enables specific acceleration scenarios that directly impact business operations and analytical capabilities. Applications benefiting most significantly from SCM implementation include:

  • Big data analytics platforms that require rapid scanning and processing of multi-terabyte datasets
  • Cybersecurity analysis systems that must correlate events across massive log files in real-time
  • Financial trading applications where microsecond advantages in data access translate to competitive edges
  • Fraud detection algorithms that analyze transaction patterns across historical data
  • In-memory databases that exceed affordable DRAM capacities
  • Internet of Things (IoT) analytics processing streams from thousands of sensors
  • Webscale personalization engines that tailor content based on user behavior patterns

These use cases share common characteristics: they process large working sets of data, benefit from random access patterns, and are sensitive to storage latency. SCM addresses these requirements by providing persistent media accessible at the byte level with latencies approaching those of DRAM [11].

Persistent Memory Programming Models

Beyond raw performance metrics, SCM introduces new programming paradigms through its dual-mode accessibility. Applications can interact with SCM through two primary models: memory mode and app-direct mode. In memory mode, SCM serves as a large-capacity extension to DRAM, where the DRAM acts as a cache for frequently accessed data while the SCM provides the backing store [11]. This configuration is particularly effective for applications with large memory footprints that exceed affordable DRAM capacities but still benefit from memory-like access patterns. When used in this cached mode, Optane DC memory has minimal impact on applications with small memory footprints while providing substantial capacity expansion for memory-intensive workloads [11]. The app-direct mode exposes SCM's persistence characteristics directly to applications, requiring software modifications to leverage byte-addressable persistent memory. This mode enables what researchers term "persistent memory programming," where data structures can be designed to survive power cycles without explicit serialization to storage devices. The programming model for app-direct mode differs significantly from traditional storage programming, as it combines aspects of memory management (pointer arithmetic, load/store operations) with persistence guarantees. This hybrid approach allows developers to create data structures that are both high-performance (due to memory-like access) and persistent (surviving system restarts).

Economic and Market Implications

The persistent memory market is experiencing significant growth, driven by increasing demand for faster data processing and enhanced storage solutions across various industries [14]. This growth reflects SCM's value proposition in enterprise environments where the total cost of ownership includes not just hardware expenses but also software licensing, power consumption, and physical space requirements. By consolidating what would traditionally require separate memory and storage tiers, SCM can reduce system complexity and associated management overhead. Intel's marketing of Optane as a "system acceleration solution" that speeds up data transfer between SSDs and the processing unit highlights the technology's role in overall system performance rather than as merely a storage replacement [11]. This positioning acknowledges that SCM's greatest value often comes from its ability to accelerate existing storage infrastructure rather than replace it entirely. In cached configurations, SCM can dramatically improve the effective performance of larger, more economical NAND flash arrays by absorbing random I/O patterns that are challenging for flash media while allowing sequential workloads to flow to optimized flash storage. The commercial implementation of SCM through technologies like 3D XPoint represents more than just another storage option—it enables architectural innovations that ripple through entire software stacks. Operating systems have developed new abstractions for persistent memory, database systems have created specialized storage engines optimized for byte-addressable persistence, and middleware platforms have incorporated SCM-aware caching layers. This ecosystem development amplifies SCM's significance beyond hardware specifications to encompass a new set of tools and methodologies for data-intensive computing.

Future Trajectory and Industry Impact

While Intel's discontinuation of Optane products marked a significant development in SCM's commercial history, the underlying technology concepts continue to influence storage and memory architecture. The persistent memory market continues to expand at a compound annual growth rate of 21.50%, with major technology companies including Intel, Micron Technology, HPE, Dell, IBM, and Microsoft participating in its development [14]. This sustained investment indicates that the industry recognizes SCM's fundamental value proposition despite specific product challenges. The significance of SCM extends to its role in enabling next-generation computing paradigms, particularly in artificial intelligence, machine learning, and real-time analytics. These fields increasingly demand rapid access to massive datasets for training and inference operations, creating pressure on traditional storage hierarchies. SCM's ability to provide high-capacity, low-latency persistence addresses precisely these requirements, potentially enabling new approaches to data management in AI workflows. Furthermore, SCM's influence can be observed in the evolution of storage protocols and interfaces. The development of computational storage, where processing occurs closer to data, benefits from SCM's characteristics by reducing the penalty for moving data between storage and processing units. Similarly, the emergence of new memory-semantic protocols and fabrics reflects the industry's recognition that traditional block-based storage interfaces are suboptimal for memory-like persistent media. In summary, storage-class memory's significance lies not merely in its performance characteristics but in its capacity to redefine the relationship between memory and storage in computing systems. By providing a persistent tier with near-DRAM performance, SCM enables architectural innovations that cascade through hardware design, operating systems, middleware, and applications. While specific commercial implementations may evolve, the fundamental concept of a high-performance persistent memory tier continues to influence the trajectory of computing infrastructure for data-intensive applications.

Applications and Uses

Storage-Class Memory (SCM) is deployed primarily in enterprise and data center environments where its unique blend of persistence, byte-addressability, and low latency addresses specific performance bottlenecks inherent to traditional storage hierarchies. Its physical implementation, typically as a DIMM that plugs directly into server memory buses, enables novel architectural approaches to data-intensive workloads [11]. Unlike solid-state drives (SSDs), which SCM does not replace, it functions as a persistent adjunct to DRAM, significantly accelerating latency-sensitive applications by keeping critical data structures closer to the processor [14].

Enterprise and Data Center Workloads

The most significant applications for SCM are found in enterprise computing, where it transforms the performance profile of several critical workloads. This dramatic reduction in access time is leveraged in several key areas:

  • Big Data Analytics and In-Memory Databases: SCM enables extremely fast querying and transaction processing for databases like SAP HANA, Redis, and Memcached, where entire datasets can reside in a persistent, byte-addressable medium. This eliminates the need for costly serialization and deserialization between volatile memory and block storage, reducing query latency and increasing throughput for real-time analytics [12].
  • Financial Trading and Fraud Detection: In high-frequency trading platforms and real-time fraud detection systems, microsecond latencies directly translate to competitive advantage and loss prevention. SCM allows these applications to maintain and process massive, constantly updated datasets—such as market tick data or transaction histories—in place, enabling instantaneous pattern recognition and decision-making [16].
  • Cybersecurity Analysis and IoT Analytics: Processing high-velocity streams of log data from network sensors or Internet of Things (IoT) devices requires rapid ingestion and correlation. SCM provides the persistent, high-bandwidth "landing zone" for this data, facilitating real-time threat detection and operational intelligence without the I/O bottlenecks associated with traditional storage, which is limited by protocols like SAS-3 that handle far fewer simultaneous operations [15].

System Architecture and Memory Expansion

Beyond accelerating specific applications, SCM introduces new system-level architectural paradigms. A primary use is extending the effective capacity of a server's memory subsystem. SCM products can use NAND flash as a backing store with DRAM acting as a cache for active data, allowing the deployment of servers with very high memory capacities at a lower cost per gigabyte than using traditional DRAM alone [14]. This expanded memory footprint is crucial for workloads requiring massive datasets, such as genomic sequencing, scientific simulations, and large-scale graph processing, where keeping data addressable is more efficient than repeatedly paging to SSDs. This architectural shift enables whole-system persistence, where the entire state of an application, including its heap and data structures, can be made durable across power cycles. Research has demonstrated that systems leveraging non-volatile memories for whole-system persistence can achieve 6–13 times better runtime performance compared to using a traditional persistent heap on slower storage [7]. Furthermore, critical persistence operations like "flush-on-fail" can complete safely within 2–35% of the residual energy window provided by standard server power supplies, enhancing data safety during unexpected outages [7].

Software Ecosystem and Development

Harnessing the full potential of SCM requires software designed to leverage its persistence and byte-addressability. The Persistent Memory Development Kit (PMDK) is an essential collection of libraries that provide the foundational support for programming with SCM [8]. These libraries abstract the complexities of safely managing persistent memory regions. Key components include:

  • libpmem: Provides low-level persistent memory support, handling tasks like flushing CPU caches to ensure data durability and mapping files into persistent memory regions [9].
  • Libraries for transactional operations: Enable atomic updates to persistent data structures, guaranteeing consistency even in the event of an application or system crash.
  • Higher-level libraries: Offer constructs for managing object stores, logs, and block-oriented access on top of the byte-addressable medium [8]. This software stack allows developers to create applications that directly manipulate data structures in SCM, treating it as either slow-but-persistent DRAM or extremely fast storage. The programming model moves away from traditional file system or block device APIs, instead using memory-mapped programming techniques where pointers reference persistent locations. This paradigm, known as Processing Persistent Data in Place, minimizes software overhead and data movement, which is a major source of latency and CPU consumption in conventional storage stacks [12].

Performance-Sensitive Caching and Tiering

SCM is effectively employed as an ultra-high-performance caching or tiering layer within a broader storage hierarchy. In this role, it sits between DRAM and high-capacity QLC NAND or hard disk drives. Frequently accessed "hot" data is promoted to the SCM tier, while less-active "cold" data resides on denser, cheaper storage. This automatic data placement optimizes both performance and cost. For example, a virtualized environment could use SCM to cache disk I/O for demanding virtual machines, or a database could use it to hold intermediate query results and indices. The sub-10µs latency of SCM [11] makes this tier nearly as responsive as DRAM for many operations, drastically improving the performance of applications that would otherwise be constrained by SSD or network-attached storage latency.

References

  1. [1][PDF] login summer17 07 rudoffhttps://www.usenix.org/system/files/login/articles/login_summer17_07_rudoff.pdf
  2. [2]Why Was Intel Optane Discontinued, And Can You Still Use It?https://www.slashgear.com/1863132/intel-optane-why-discontinued-can-still-use-it-explained/
  3. [3]Persistent Memory Market to Expand at 21.50% CAGR with Intel, Micron Technology, HPE, Dell, IBM, and Microsofthttps://www.openpr.com/news/4130502/persistent-memory-market-to-expand-at-21-50-cagr-with-intel
  4. [4]Understand and deploy persistent memoryhttps://learn.microsoft.com/en-us/windows-server/storage/storage-spaces/deploy-persistent-memory
  5. [5]storage class memory (SCM)https://www.techtarget.com/searchstorage/definition/storage-class-memory
  6. [6]Basic Performance Measurements of the Intel Optane DC Persistent Memory Modulehttps://arxiv.org/abs/1903.05714
  7. [7]Whole-system Persistence with Non-volatile Memories - Microsoft Researchhttps://www.microsoft.com/en-us/research/publication/whole-system-persistence-with-non-volatile-memories/
  8. [8]Persistent Memory Development Kit (PMDK)https://pmem.io/pmdk/
  9. [9]libpmem | PMDKhttps://pmem.io/pmdk/libpmem/
  10. [10]Using Persistent Memory with vSpherehttps://techdocs.broadcom.com/us/en/vmware-cis/vsphere/vsphere/8-0/vsphere-resource-management-8-0/persistent-memory.html
  11. [11]Flash vs 3D Xpoint vs storage-class memory: Which ones go where?https://www.computerweekly.com/feature/Flash-vs-3D-Xpoint-vs-storage-class-memory-Which-ones-go-where
  12. [12]Persistent memoryhttps://grokipedia.com/page/Persistent_memory
  13. [13]RAM-HD-SSD Costshttps://azrael.digipen.edu/~mmead/www/Courses/CS180/ram-hd-ssd-prices.html
  14. [14]What are Storage Class Memory (SCM) and Persistent Memory (PM)?https://www.architecting.it/blog/what-are-scm-and-pm/
  15. [15]What Is NVMe? The Complete Guide to Non-Volatile Memory Expresshttps://www.purestorage.com/knowledge/what-is-nvme.html
  16. [16][PDF] 20190807 NEWM 201 1 Huanghttps://files.futurememorystorage.com/proceedings/2019/08-07-Wednesday/20190807_NEWM-201-1_Huang.pdf