Getting Started with Persistent Memory on VMware
At Nth Labs we’ve been taking a closer look at Persistent Memory (PMem) to better understand where and how it fits in the overall picture.
PMem is packaged in the same form factor as the system memory (DIMM) that you are probably familiar with today; but has the added benefit of having the ability to retain data after a power outage. This capability can be leveraged in two ways: Virtual Persistent Memory (vPMem) and Virtual Persistent Memory Disk (vPMemDisk).
Virtual Persistent Memory is byte-level addressable storage. Keep in mind that traditional storage is addressed at the block level (typically 4K or 8K), meaning that if we want to update a byte of data, we need to transfer in the entire block, make the modification, and write out the entire block. Byte-level access increases the performance and efficiency of the operation. The current drawback is that the application (and OS) needs to be written and compiled to take advantage of this capability.
If you are still using legacy Operating Systems, you can take advantage of a Virtual Persistent Memory Disk. With vPMemDisk, the storage is presented as a traditional disk drive, allowing the use of traditional drivers. Long story short, performance can be boosted without having to re-write the application. For this reason, the focus of our attention has been on vPMemDisk, as just about everyone should be able to benefit from it.
There are two flavors of PMem in HPE’s portfolio offering:
HPE’s NVDIMMs are available in capacities up to 16GB/module and support both Gen9 and Gen10 ProLiant platforms.
HPE’s Persistent Memory Kits are based on Intel Optane DC with capacities up to 512GB/module, but support is limited to certain 2nd generation Intel Xeon Scalable Series (Cascade Lake) processors. The type you end up using is generally dictated by the characteristics of the host.
A few observations from our evaluation of vPMemDisk:
Quantity of vCPU matters. - Too few—and you are leaving performance capabilities on the table. - Too many—and you might actually be getting in your own way. - 4-6 in our case seemed to be a pretty consistent sweet spot.
ESXi 6.7 is the minimum version that supports PMem.
vPMemDisk is treated as local storage on the ESXi host. - You can storage vMotion from one host to another. - vSphere features like HA, snapshots, and thin provisioning are not supported.
Much like vSphere Fault Tolerance, PMem won’t fit every workload. For the workloads that do fit, PMem is a fantastic way to quickly gain a performance boost, without redesigning your entire data center. To learn more, and to discuss additional options available, please consider scheduling your Nth Labs (virtual) Experience at http://nth.com/labs.
Lee Solomonson Nth Labs Manager Nth Generation