DOE OSTI · 2479926
UMap: An application-oriented user level memory mapping library
Abstract
Exploiting the prominent role of complex memories in exascale node architecture, the UMap page fault handler offers new capabilities to access large memory-mapped data sets directly. UMap provides flexible configuration options to customize page handling to each application, including analysis of massive observational and simulation data sets. The high-performance design features I/O decoupling, dynamic load balancing, and application-level controls. Page faults triggered by application threads and processes accessing data mapped to a UMapp’ed region are handled via the Linux userfaultfd protocol, an asynchronous message-oriented kernel-user communication mechanism that avoids the context switch penalty of traditional signal fault handlers. UMap is fully open source. In this paper, we give an overview of the UMap library architecture, its extensible plugin architecture, and the use/performance of UMap in emerging heterogeneous memory hierarchies such as near-node Non-volatile Memory (NVM) and network attached memories. We highlight new capabilities in two pagefault management plugins, the NetworkStore and SparseStore. We demonstrate the integration between UMap and multiple ECP products including Caliper, Metall, ZFP, Mochi, and Ripples.
Explore related subjects
Keep this discovery
Explore connections, maps & timelines
Peng, Ivy [Department of Electrical Engineering and Computer Science, KTH Royal Institute of Technology, Stockholm, Sweden] (ORCID:0000000341583583), Wahlgren, Jacob [Department of Electrical Engineering and Computer Science, KTH Royal Institute of Technology, Stockholm, Sweden] (ORCID:0000000316697714), Youssef, Karim [Center for Applied Scientific Computing, Lawrence Livermore National Laboratory, Livermore, CA, USA] (ORCID:0000000345449613), Iwabuchi, Keita [Center for Applied Scientific Computing, Lawrence Livermore National Laboratory, Livermore, CA, USA] (ORCID:0000000293950843), Pearce, Roger [Center for Applied Scientific Computing, Lawrence Livermore National Laboratory, Livermore, CA, USA] (ORCID:0009000064496568), Gokhale, Maya [Center for Applied Scientific Computing, Lawrence Livermore National Laboratory, Livermore, CA, USA] (ORCID:0000000342295735). 2024-12-05. UMap: An application-oriented user level memory mapping library. https://doi.org/10.1177/10943420241303145
Cite the original work for its findings. Save a collection to share your selection of sources.