TECHNICAL FIELD

The present disclosure relates generally to memory management in a computer system, and more particularly, to the processing of memory calls from an application.

BACKGROUND

The computer industry continues to develop and refine solid-state storage devices and media, moving closer and closer to achieving memory-class storage. In the past several years the access latency of affordable storage devices has dramatically decreased and is expected to continue to decrease in coming years. At the same time, advances in networking technology have led to increases in bandwidth with commensurate decreases in latency. Further, the emergence of standardized remote direct memory access (RDMA) functionality has led to improvements in communication efficiency and further reduced latency.

These faster computing infrastructures demand new data infrastructures where both memory-speed data access and disk-like high storage density are strongly desired at the same time. Such new data infrastructures promise to bring significant performance improvements to computing tasks whose working data sets exceed dynamic random-access memory (DRAM) capacity, and where highly frequent data movements between DRAM and lower storage tiers, such as solid-state drive (SSD) and hard disk drive (HDD), are therefore required.

To provide the lowest possible access latency, operating system support of emerging persistent memory (PMEM) technology has created mechanisms for a user-space application to have direct access (DAX) to persistent memory media (i.e., without the access being performed by operating system software). PMEM generally refers to solid-state byte addressable memory devices that reside on a memory bus of a given system. Being on the memory bus allows PMEM to have similar speed and latency as DRAM as well as the non-volatility of SSDs and HDDs. Examples of existing solutions from providing DAX to PMEM include “NOVA,” “Strata,” “Octopus,” “Hotpot,” and “FluidMem.”

