Thread and Memory Placement on NUMA Systems: Asymmetry Matters
Baptiste Lepers, Simon Fraser University; Vivien Quéma, Grenoble INP; Alexandra Fedorova, Simon Fraser University
Awarded Best Paper!
It is well known that the placement of threads and memory plays a crucial role for performance on NUMA (Non-Uniform Memory-Access) systems. The conventional wisdom is to place threads close to their memory, to collocate on the same node threads that share data, and to segregate on different nodes threads that compete for memory bandwidth or cache resources. While many studies addressed thread and data placement, none of them considered a crucial property of modern NUMA systems that is likely to prevail in the future: asymmetric interconnect. When the nodes are connected by links of different bandwidth, we must consider not only whether the threads and data are placed on the same or different nodes, but how these nodes are connected.
We study the effects of asymmetry on a widely available x86 system and find that performance can vary by more than 2x under the same distribution of thread and data across the nodes but different inter-node connectivity. The key new insight is that the best-performing connectivity is the one with the greatest total bandwidth as opposed to the smallest number of hops. Based on our findings we designed and implemented a dynamic thread and memory placement algorithm in Linux that delivers similar or better performance than the best static placement and up to 218% better performance than when the placement is chosen randomly.
Open Access Media
USENIX is committed to Open Access to the research presented at our events. Papers and proceedings are freely available to everyone once the event begins. Any video, audio, and/or slides that are posted after the event are also free and open to everyone. Support USENIX and our commitment to Open Access.
author = {Baptiste Lepers and Vivien Quema and Alexandra Fedorova},
title = {Thread and Memory Placement on {NUMA} Systems: Asymmetry Matters},
booktitle = {2015 USENIX Annual Technical Conference (USENIX ATC 15)},
year = {2015},
isbn = {978-1-931971-225},
address = {Santa Clara, CA},
pages = {277--289},
url = {https://www.usenix.org/conference/atc15/technical-session/presentation/lepers},
publisher = {USENIX Association},
month = jul
}
connect with us