vix.ing · top · new · best · stats · spec

JArena: Partitioned Shared Memory for NUMA-awareness in Multi-threaded Scientific Applications

2019/02/20 by Yang, Zhang, Zhang, Aiqing, Mo, Zeyao
#Distributed #FOS: Computer and information sciences #Parallel #Performance (cs.PF) #and Cluster Computing (cs.DC)

paper · doi:10.48550/arxiv.1902.07590

Abstract

The distributed shared memory (DSM) architecture is widely used in today's computer design to mitigate the ever-widening processing-memory gap, and inevitably exhibits non-uniform memory access (NUMA) to shared-memory parallel applications. Failure to achieve full NUMA-awareness can significantly downgrade application performance, especially on today's manycore platforms with tens to hundreds of cores. Yet traditional approaches such as first-touch and memory policy fail short in either false page-sharing, fragmentation, or ease-of-use. In this paper, we propose a partitioned shared memory approach which allows multi-threaded applications to achieve full NUMA-awareness with only minor code changes and develop a companying NUMA-aware heap manager which eliminates false page-sharing and minimizes fragmentation. Experiments on a 256-core cc-NUMA computing node show that the proposed approach achieves true NUMA-awareness and improves the performance of typical multi-threaded scientific applications up to 4.3 folds with the increased use of cores.

Related