Persistent Memory Enhancements : Future Memory Enhancements on IBM Power Systems
Asim Mustafa Khan details IBM's future plans for Persistent Memory Enhancements.
This blog is part of the strategy that discusses the memory enhancements on IBM Power Systems for SAP HANA.
Historically, a server has been able to use one generation of DRAM technology (i.e., DDR4 DRAM) and one or two storage technologies (e.g., Flash SSD and Hard Disk Drives). Today and over the next several years, there will be many memory technologies that will have differences in performance characteristics and cost will be made available. All will have varying use cases based on system applications.
There are several emerging memory related technologies that are and will become available in the industry (see image above) addressing different needs and forcing tradeoffs. For example:
Using the current DRAM with low capacity DIMMs, clients can get highest data throughput performance due to low latency, but at higher cost than SCM or NAND technologies.
Substituting DRAM by SCM will help reduce costs but will increase the latency.
Using NAND technology for storing volume data will help reduce the cost per GB even further with the disadvantage of even higher latency compared to DRAM or SCM technologies.
- It doesn’t displace main memory DIMMs, thus enabling IBM Power Systems to achieve higher system memory capacity, on top of main memory DRAM
- It doesn’t require DRAM DIMMs on the same memory channel to achieve performance
- It is compliant with PMDK PMEM/DAX interfaces, offering IBM customers plug-and-play compatibility with applications built for common persistent memory offerings.
IBM's roadmap for Storage Class Memory (SCM) begins with LLNAND and extends to future SCM technologies. These technologies are not mutually exclusive and address different cost/performance targets. That's why IBM Power Systems customers will continue to get the flexibility to choose the most appropriate memory technology for their unique workloads.
In addition, the POWER9 processor available today already takes some of the pain of reloading a large database into memory leveraging its robust I/O subsystem. POWER9 systems have PCIe Gen4 technology that doubles the I/O bandwidth compared to competitive processor technologies that are based on PCIe Gen3, thus resulting in much better performance when using the SAP’s newly announced technologies like NSE (Native Storage Extension) that uses the system I/O bandwidth.
It is also important to note, however, that current persistent memory technologies are not a replacement for existing data-at-rest storage. Our clients expect multiple layers of redundancy when it comes to the storage for data-at-rest. That’s why the industry leading IO subsystem in POWER systems provides our clients with the advantage of being able to permanently persist and reload data faster than competitive systems after planned and unplanned outages.
As the technology enhancements in memory continuously evolve, IBM is working with several industry leaders in this space and making sure that the right open standards technology (DRAM, PowerVM with PMEM, SCM and LLNAND) is made available to our clients in timely fashion and that we provide more choices than our competition. We will continue to execute under the premise that clients want choice and we need to deliver ‘Unmatched Flexibility’ to our clients. Sticking to our principle of focusing on client needs and pain points, and not falling in the mass mentality of trying to solve them like if we were one more x86 vendor. We provide needed choices for a healthy ecosystem.
The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any material, code or functionality. Information about potential future products may not be incorporated into any contract. The development, release, and timing of any future features or functionality described for our products remains at our sole discretion. Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user’s job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here.