Affiliation:
1. IIT Madras, Chennai, India
Abstract
Locking has been a predominant technique depended upon for achieving thread synchronization and ensuring correctness in multi-threaded applications. It has been established that the concurrent applications working with hierarchical data witness significant benefits due to multi-granularity locking (MGL) techniques compared to either fine- or coarse-grained locking. The
de facto
MGL technique used in hierarchical databases is
intention locks
, which uses a traversal-based protocol for hierarchical locking. A recent MGL implementation, dominator-based locking (DomLock), exploits interval numbering to balance the locking cost and concurrency and outperforms intention locks for non-tree-structured hierarchies. We observe, however, that depending upon the hierarchy structure and the interval numbering, DomLock pessimistically declares subhierarchies to be locked when in reality they are not. This increases the waiting time of locks and, in turn, reduces concurrency. To address this issue, we present Multi-Interval DomLock (MID), a new technique to improve the degree of concurrency of interval-based hierarchical locking. By adding additional intervals for each node,
MID
helps in reducing the unnecessary lock rejections due to false-positive lock status of sub-hierarchies. Unleashing the hidden opportunities to exploit more concurrency allows the parallel threads to finish their operations quickly, leading to notable performance improvement. We also show that with sufficient number of intervals,
MID
can avoid all the lock rejections due to false-positive lock status of nodes.
MID
is general and can be applied to any arbitrary hierarchy of trees,
Directed Acyclic Graphs (DAGs)
, and cycles. It also works with dynamic hierarchies wherein the hierarchical structure undergoes updates. We illustrate the effectiveness of
MID
using STMBench7 and, with extensive experimental evaluation, show that it leads to significant throughput improvement (up to 141%, average 106%) over DomLock.
Publisher
Association for Computing Machinery (ACM)
Subject
Computational Theory and Mathematics,Computer Science Applications,Hardware and Architecture,Modeling and Simulation,Software
Reference35 articles.
1. Vitalii Aksenov. 2018. Synchronization Costs in Parallel Programs and Concurrent Data Structures. Ph.D. Dissertation. ITMO University, Paris Diderot University.
2. Granularity hierarchies in concurrency control
3. Michael J. Carey. 1984. The Performance of Concurrency Control Algorithms for Database Management Systems. Technical Report. University of Wisconsin–Madison Department of Computer Sciences.
4. The 007 Benchmark
5. Safe Locking Policies for Dynamic Databases
Cited by
2 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. FlexiGran: Flexible Granularity Locking in Hierarchies;Lecture Notes in Computer Science;2024
2. Dynamic Data Partitioning in the WAFL File System;2023 IEEE High Performance Extreme Computing Conference (HPEC);2023-09-25