Scalable Adaptive NUMA-Aware Lock

被引:10
|
作者
Zhang, Mingzhe [1 ]
Chen, Haibo [2 ]
Cheng, Luwei [3 ]
Lau, Francis C. M. [1 ]
Wang, Cho-Li [1 ]
机构
[1] Univ Hong Kong, Dept Comp Sci, Hong Kong, Hong Kong, Peoples R China
[2] Shanghai Jiao Tong Univ, Inst Parallel & Distributed Syst, Minhang 200240, Qu, Peoples R China
[3] Facebook, Menlo Pk, CA 94025 USA
关键词
Delegation lock; adaptive synchronization;
D O I
10.1109/TPDS.2016.2630695
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Scalable locking is a key building block for scalable multi-threaded software. Its performance is especially critical in multi-socket, multi-core machines with non-uniform memory access (NUMA). Previous schemes such as in-place locks and delegation locks only perform well under a certain level of contention, and often require non-trivial tuning for a particular configuration. Besides, in large NUMA systems, current delegation locks cannot perform satisfactorily due to lack of optimized NUMA policies. In this work, we propose SANL, a locking scheme that can deliver high performance under various contention levels by adaptively switching between in-place locks and delegation locks. To optimize the performance of delegation locks, we introduce a new NUMA policy that jointly considers node distances and server utilization when choosing lock servers. We have implemented SANL and evaluated it with four popular multi-threaded applications (Memcached, Berkeley DB, Phoenix2 and SPLASH-2), on a 40-core Intel machine and a 64-core AMD machine. The comparison results with seven other representative locking schemes show that SANL outperforms them in most contention situations. For example, in one group test, SANL is 3.7 times faster than RCL lock and 17 times faster than POSIX mutex.
引用
收藏
页码:1754 / 1769
页数:16
相关论文
共 50 条
  • [1] Scalable Adaptive NUMA-aware Lock Combining Local Locking and Remote Locking for Efficient Concurrency
    Zhang, Mingzhe
    Lau, Francis C. M.
    Wang, Choi-Li
    Cheng, Luwei
    Chen, Haibo
    [J]. ACM SIGPLAN NOTICES, 2016, 51 (08) : 403 - 404
  • [2] A NUMA-Aware Recoverable Mutex Lock
    Fahmy, Ahmed
    Golab, Wojciech
    [J]. PROCEEDINGS OF THE 34TH ACM SYMPOSIUM ON PARALLELISM IN ALGORITHMS AND ARCHITECTURES, SPAA 2022, 2022, : 295 - 305
  • [3] A NUMA-Aware Recoverable Mutex Lock
    Fahmy, Ahmed
    Golab, Wojciech
    [J]. Annual ACM Symposium on Parallelism in Algorithms and Architectures, 2022, : 295 - 305
  • [4] Scalable NUMA-aware Blocking Synchronization Primitives
    Kashyap, Sanidhya
    Mm, Changwoo
    Kim, Taesoo
    [J]. 2017 USENIX ANNUAL TECHNICAL CONFERENCE (USENIX ATC '17), 2017, : 603 - 615
  • [5] Scalable NUMA-Aware Wilson-Dirac on Supercomputers
    Tadonki, Claude
    [J]. 2017 INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE COMPUTING & SIMULATION (HPCS), 2017, : 315 - 324
  • [6] NEMO: NUMA-aware Concurrency Control for Scalable Transactional Memory
    Mohamedin, Mohamed
    Peluso, Sebastiano
    Kishi, Masoomeh Javidi
    Hassan, Ahmed
    Palmieri, Roberto
    [J]. PROCEEDINGS OF THE 47TH INTERNATIONAL CONFERENCE ON PARALLEL PROCESSING, 2018,
  • [7] NUMA-aware Scalable Graph Traversal on SGI UV Systems
    Yasui, Yuichiro
    Fujisawa, Katsuki
    Goh, Eng Lim
    Baron, John
    Sugiura, Atsushi
    Uchiyama, Takashi
    [J]. PROCEEDINGS OF THE ACM WORKSHOP ON HIGH PERFORMANCE GRAPH PROCESSING (HPGP'16), 2016, : 19 - 26
  • [8] On Designing NUMA-Aware Concurrency Control for Scalable Transactional Memory
    Mohamedin, Mohamed
    Palmieri, Roberto
    Peluso, Sebastiano
    Ravindran, Binoy
    [J]. ACM SIGPLAN NOTICES, 2016, 51 (08) : 393 - 394
  • [9] NUMA-Aware Scalable and Efficient In-Memory Aggregation on Large Domains
    Wang, Li
    Zhou, Minqi
    Zhang, Zhenjie
    Shan, Ming-Chien
    Zhou, Aoying
    [J]. IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, 2015, 27 (04) : 1071 - 1084
  • [10] Compact NUMA-aware Locks
    Dice, Dave
    Kogan, Alex
    [J]. PROCEEDINGS OF THE FOURTEENTH EUROSYS CONFERENCE 2019 (EUROSYS '19), 2019,