CLoF: A Compositional Lock Framework for Multi-level NUMA Systems

Research output: Contribution to book/Conference proceedings/Anthology/ReportConference contributionContributedpeer-review

Contributors

  • Rafael Lourenco De Lima Chehab - , Chair of Systems Engineering, Dresden Research Lab Huawei Technologies (Author)
  • Antonio Paolillo - , Dresden Research Lab Huawei Technologies (Author)
  • Diogo Behrens - , Dresden Research Lab Huawei Technologies (Author)
  • Ming Fu - , Dresden Research Lab Huawei Technologies (Author)
  • Hermann Härtig - , Professor (rtd.) of Operating Systems (Author)
  • Haibo Chen - , Shanghai Jiao Tong University (Author)

Abstract

Efficient locking mechanisms are extremely important to support large-scale concurrency and exploit the performance promises of many-core servers. Implementing an efficient, generic, and correct lock is very challenging due to the differences between various NUMA architectures. The performance impact of architectural/NUMA hierarchy differences between x86 and Armv8 are not yet fully explored, leading to unexpected performance when simply porting NUMA-aware locks from x86 to Armv8. Moreover, due to the Armv8 Weak Memory Model (WMM), correctly implementing complicated NUMA-aware locks is very difficult. We propose a Compositional Lock Framework (CLoF) for multi-level NUMA systems. CLoF composes NUMA-oblivious locks in a hierarchy matching the target platform, leading to hundreds of correct by construction NUMA-aware locks. CLoF can automatically select the best lock among them. To show the correctness of CLoF on WMMs, we provide an inductive argument with base and induction steps verified with model checkers. In our evaluation, CLoF locks outperform state-of-the-art NUMA-aware locks in most scenarios, e.g., in a highly contended LevelDB benchmark, our best CLoF locks yield twice the throughput achieved with CNA lock and ShflLock on large x86 and Armv8 servers.

Details

Original languageEnglish
Title of host publicationSOSP 2021 - Proceedings of the 28th ACM Symposium on Operating Systems Principles
PublisherAssociation for Computing Machinery, Inc
Pages851-865
Number of pages15
ISBN (electronic)9781450387095
Publication statusPublished - 26 Oct 2021
Peer-reviewedYes

Publication series

SeriesSOSP: ACM Symposium on Operating Systems Principles

Conference

Title28th ACM Symposium on Operating Systems Principles
Abbreviated titleSOSP 2021
Conference number28
Duration26 - 29 October 2021
Website
Locationonline
CountryGermany

Keywords

Keywords

  • multicore concurrency, non-uniform access memory, weak memory models