首页|UMap: An application-oriented user level memory mapping library

UMap: An application-oriented user level memory mapping library

扫码查看
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.

Memory mappingmmappage faultuser-space paginguserfaultfdpage management

Ivy Peng、Jacob Wahlgren、Karim Youssef、Keita Iwabuchi、Roger Pearce、Maya Gokhale

展开 >

Department of Electrical Engineering and Computer Science, KTH Royal Institute of Technology, Stockholm, Sweden

Center for Applied Scientific Computing, Lawrence Livermore National Laboratory, Livermore, CA, USA

2025

International journal of high performance computing applications

International journal of high performance computing applications

ISSN:1094-3420
年,卷(期):2025.39(2)
  • 30