Storage class memory has received a lot of press lately, but its exact meaning can sometimes be unclear. At its...
most basic, SCM refers to a new class of nonvolatile memory that bridges the gap between traditional memory and storage technologies, in a way that could perhaps represent the future of data processing.
The gulf between memory and storage is a result of differences in both performance and costs. Memory technologies, such as dynamic random access memory (DRAM), are fast and efficient, but are also expensive, cannot persist data and have significant scaling limits. Storage technologies are all about persisting data, a lot cheaper and can support enormous pools of data, but they're not nearly as fast and efficient as memory. For many systems, storage represents the weakest link in the data processing chain.
The shift to SSDs and faster interfaces has helped mitigate some of storage's limitations, but memory continues to significantly outperform even today's most advanced flash components. At the same time, memory-intensive applications, such as machine learning analytics and in-memory databases, are placing more of the burden on memory than ever, but memory can scale only so far before becoming impractical or unaffordable. An answer to these challenges might finally be at hand, and it comes in the form of storage class memory.
A look at storage class memory
Sometimes referred to as persistent memory, SCM represents a hybrid approach to the memory and storage mix that offers the best of both worlds. Many of the new SCM technologies are achieving performance speeds nearly as fast as DRAM, while being able to persist data during power cycles, making it possible to create modules that can used for memory or storage, or at the very least, extend either one's capabilities.
Although storage class memory technologies are still a bit slower than DRAM, they can scale out to greater capacities, and if all goes according to promise, they'll ultimately be cheaper to manufacture, once they're produced in quantity. In addition, SCM is more durable and up to 10 times faster than the latest NAND flash drives. It is too soon to tell whether SCM will ever come in cheaper than flash, but the potential exists. A lot of the industry is now focused on storage class memory, so the landscape in a year or two will likely look much different from what we're seeing now.
SCM technologies have another important advantage over today's flash drives. They can be addressed at either the byte or block level, and it's the byte-level access that could prove momentous. Rather than having to carry out operations at the block or page level, which is typical of most storage devices, operating systems and applications will be able to access SCM bytes directly using memory-mapped files, eliminating massive volumes of I/O overhead.
Making the most of memory
When taken literally, the term storage class memory suggests that the technology is squarely focused on memory, with storage class pointing to SCM's data persistence and scalability. In fact, SCM's potential as the next generation of memory technologies could represent a significant shift in data management.
The traditional computing paradigm still relies on both memory and storage, positioned as separate tiers, to deliver the structure necessary for handling data. Not only does this result in two systems with different performance capabilities, it points to the additional layers of physical complexity that go with processing and storing data. The block and page architecture inherent in today's storage only adds to the overhead.
The latest advancements in storage class memory have the potential to usher in a new age of computing that offers a single tier for both memory and storage, in which block and page access is eliminated altogether. Although more traditional storage systems might be needed for less critical data, the primary data is accessed, modified and stored entirely on the SCM device, which is connected directly to the memory slots in the motherboard, near the CPU, just like traditional RAM.
As good as all this sounds, we're not there yet. Devices that boast SCM technology are being introduced in incremental steps, with many efforts still locked in research and development. That said, a few products have already made their debut. One receiving a lot of press lately is Intel's Optane Memory card, which is based on the 3D XPoint technology developed by Intel and Micron. The memory comes in an M.2 form factor, with a capacity of 16 GB or 32 GB. Although this represents a significant step in the movement toward nonvolatile memory, it is far from being enough to replace the entire storage tier.
Even so, numerous SCM technologies are in the works, often taking a different approach from Intel and Micron. Each effort represents an important step in the evolution toward more robust, nonvolatile memory, with the goal of one day changing how we think of memory, storage and those components that once separated the two.
The SCM revolution
Despite the memory-centric implications inherent in storage class memory, the technology behind it also offers new opportunities for the storage layer, providing an adjunct or replacement to traditional devices. For example, the Optane product line also includes several SSDs. Like the memory modules, the SSDs are based on phase-change memory (PCM), an approach to storage in which current is applied to a dielectric material such as glass, thereby changing a cell's conductivity. A PCM device is much more durable than flash and can support speeds close to those found in DRAM.
A number of vendors are also working on projects based on magnetoresistive RAM (MRAM) technologies, which rely on magnetic states for handling data bits, rather than electrical charges, as is the case with DRAM and NAND flash. The MRAM technologies make it possible to deliver speeds much faster than flash, while still being able to persist data.
One variation of the MRAM technologies is spin-transfer torque MRAM (STT-MRAM), which evaluates the torque applied between layers in order to use the magnetoresistive properties more efficiently. One vendor that's been aggressive in this area is Everspin Technologies Inc. The company now offers a line of storage accelerators based on STT-MRAM. The accelerators deliver speeds close to DRAM capabilities, with initial capacities of 1 GB to 2 GB, with plans to make cards that support capacities up to 16 GB.
Vendors are working with other SCM technologies as well, and it could be a while before a definitive approach to storage class memory emerges. As with memory, the field remains wide open.
Regardless of the differences between these approaches to storage, they all share a common theme: They rely on the nonvolatile memory express block protocol for direct-attached storage and the NVMe over Fabrics (NVMe-oF) block protocol for network storage. The two protocols were developed to address the limitations of older protocols that could not keep up with SSDs. Without NVMe and NVMe-oF, SCM would not be practical, at least in today's environment.
An industry on the move
Memory and storage modules based on storage class memory are still in their infancy, but even if we were suddenly inundated with a wide range of memory and storage devices, the software industry would still need to catch up to fully utilize them, especially when it comes to byte-level access. Windows Server and Linux have made inroads into SCM territories, but we still have a long way to go.
But many vendors are now showing interest in SCM, and the technologies that surround it will likely improve and expand, especially as more products enter the market. It's rare that a technology comes along that turns out to be a real game-changer, but SCM could prove to be one of them.