Data and Thread Placement in NUMA Architectures: A Statistical Learning Approach

Abstract : Nowadays, NUMA architectures are common in compute-intensive systems. Achieving high performance for multi-threaded application requires both a careful placement of threads on computing units and a thorough allocation of data in memory. Finding such a placement is a hard problem to solve, because performance depends on complex interactions in several layers of the memory hierarchy. In this paper we propose a black-box approach to decide if an application execution time can be impacted by the placement of its threads and data, and in such a case, to choose the best placement strategy to adopt. We show that it is possible to reach near-optimal placement policy selection. Furthermore, solutions work across several recent processor architectures and decisions can be taken with a single run of low overhead profiling.
Complete list of metadatas

Cited literature [32 references]  Display  Hide  Download

https://hal.inria.fr/hal-02135545
Contributor : Brice Goglin <>
Submitted on : Tuesday, May 21, 2019 - 1:44:11 PM
Last modification on : Wednesday, June 12, 2019 - 1:24:05 AM

File

paper.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : hal-02135545, version 1

Citation

Nicolas Denoyelle, Brice Goglin, Emmanuel Jeannot, Thomas Ropars. Data and Thread Placement in NUMA Architectures: A Statistical Learning Approach. ICPP 2019 - 48th International Conference on Parallel Processing, Aug 2019, Kyoto, Japan. ⟨hal-02135545v1⟩

Share

Metrics

Record views

44

Files downloads

396