MemProf: A Memory Profiler for NUMA Multicore Systems - Archive ouverte HAL Access content directly
Conference Papers Year : 2012

MemProf: A Memory Profiler for NUMA Multicore Systems

(1, 2, 3) , (4, 2, 3) , (5, 2, 3)


Modern multicore systems are based on a Non-Uniform Memory Access (NUMA) design. Efficiently exploiting such architectures is notoriously complex for programmers. One of the key concerns is to limit as much as possible the number of remote memory accesses (i.e., main memory accesses performed from a core to a memory bank that is not directly attached to it). However, in many cases, existing profilers do not provide enough information to help programmers achieve this goal. This paper presents MemProf, a profiler that allows programmers to choose and implement efficient application-level optimizations for NUMA systems. MemProf builds temporal flows of interactions between threads and objects, which help programmers understand why and which memory objects are accessed remotely. We evaluate MemProf on Linux using four applications (FaceRec, Streamcluster, Psearchy, and Apache) on three different machines. In each case, we show how MemProf helps us choose and implement efficient optimizations, unlike existing profilers. These optimizations provide significant performance gains (up to 161%), while requiring very lightweight modifications (10 lines of code or less).
Fichier principal
Vignette du fichier
atc12-final229.pdf (195.74 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

hal-00945731 , version 1 (12-02-2014)
hal-00945731 , version 2 (09-03-2017)


  • HAL Id : hal-00945731 , version 2


Renaud Lachaize, Baptiste Lepers, Vivien Quéma. MemProf: A Memory Profiler for NUMA Multicore Systems. Proceedings of the 2012 USENIX Annual Technical Conference, Jun 2012, Boston, United States. pp.53--64. ⟨hal-00945731v2⟩
293 View
120 Download


Gmail Facebook Twitter LinkedIn More