Storage-class memory (SCM), also known as persistent memory, may be one of the most disruptive storage technology innovations to look out for in the next decade. Scott Davis, Chief Technology Officer, Infinio, discusses the technology’s benefits.
This technology has the potential to be even more disruptive than flash, both from a performance perspective and with the way it will change both storage and application architectures.
SCM is a new hybrid storage/memory tier with unique characteristics, which makes it neither a memory nor a storage. Physically, it connects to memory slots in a motherboard, like traditional DRAM. While SCM is slightly slower than DRAM, it is persistent like a traditional storage and its content is preserved during a power cycle.
Compared to flash, SCM’s orders of magnitude are faster and can deliver performance gains equally on both read and write operations. It has another benefit over flash as well – SCM tiers are significantly more resilient, not suffering from the malware that flash falls victim to.
SCM vs. current industry solutions
Interestingly, SCM can be addressed at either the byte or block level. This gives operating systems, software and hypervisor developers significant flexibility regarding the medium’s applications. For example, it’s conceivable that operating systems will initially treat SCM as block storage devices formatted by file systems and databases for compatibility purposes. However, next-generation applications may choose to access SCM directly via memory-mapped files. Hypervisors can abstract and present isolated SCM regions directly to different VMs as either execution memory or a flash-like storage resource.
Let’s consider how DRAM is used today. For decades, applications have stored data temporarily in DRAM – that is, volatile memory. At specific execution points data structures were reformatted and placed into 512-byte blocks. They were then written (along with metadata) to disks structured as either files systems or databases for persistence. Built into that metadata was a significant amount of information that protected against failures and corruptions.
Now, contrast that to how SCM will be used. Since SCM is persistent, the content it stores remains in memory, not just in the case of planned reboots, but also during unplanned crashes and downtime. The medium is also byte-addressable, eliminating the need to package data into coherent 512-byte blocks. The combination of keeping a memory structure ‘live’ with byte-level granularity, while eliminating the necessity of an intermediate copy, will revolutionise application design.
SCM in practice
It will only be in late 2016 SCM technology will be available to organisations – and that will take place with an initial implementation from Intel with its 3D XPoint technology. HP and SanDisk have also announced a collaboration for SCM, although it will likely only become available in 2017 or later. As with any new emerging technology, early SCM implementation may only be appropriate for specific industries and applications. The initial price point and performance capabilities may appeal only to certain use cases before reaching a more general audience.
As it reaches the mainstream, operating systems, software and hypervisor developers may choose to integrate SCM into legacy architectures at first, rather than re-writing applications to provide all the benefits of the new technology. This will, however, still provide a technology that is both significantly faster and more resilient than flash, as well as denser and less expensive than DRAM memory technology. In-memory computing, HPC and server-side caching may be some of the early adopters of SCM on the application side, which help bring this new technology broadly to the market.