CLoF: A Compositional Lock Framework for Multi-level NUMA Systems
Research output: Contribution to book/conference proceedings/anthology/report › Conference contribution › Contributed › peer-review
Contributors
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 language | English |
---|---|
Title of host publication | SOSP 2021 - Proceedings of the 28th ACM Symposium on Operating Systems Principles |
Publisher | Association for Computing Machinery, Inc |
Pages | 851-865 |
Number of pages | 15 |
ISBN (electronic) | 9781450387095 |
Publication status | Published - 26 Oct 2021 |
Peer-reviewed | Yes |
Publication series
Series | SOSP: ACM Symposium on Operating Systems Principles |
---|
Conference
Title | 28th ACM Symposium on Operating Systems Principles |
---|---|
Abbreviated title | SOSP 2021 |
Conference number | 28 |
Duration | 26 - 29 October 2021 |
Website | |
Location | online |
Country | Germany |
Keywords
ASJC Scopus subject areas
Keywords
- multicore concurrency, non-uniform access memory, weak memory models