kirancodes.me
To Proof Maintenance & Beyond!

Unleashing concurrency for irregular data structures

Peng Liu, Charles Zhang

Abstract

To implement the atomicity in accessing the irregular data structure, developers often use the coarse-grained locking because the hierarchical nature of the data structure makes the reasoning of fine-grained locking difficult and error-prone for the update of an ancestor field in the data structure may affect its descendants. The coarse-grained locking disallows the concurrent accesses to the entire data structure and leads to a low degree of concurrency. We propose an approach, built upon the Multiple Granularity Lock (MGL), that replaces the coarse-grained locks to unleash more concurrency for irregular data structures. Our approach is widely applicable and does not require the data structures to have special shapes. We produce the MGL locks through reasoning about the hierarchy of the data structure and the accesses to it. According to the evaluation results on widely used applications, our optimization brings the significant speedup, e.g., at least 7%-20% speedup and up to 2X speedup.

BibTeX
@inproceedings{Liu-Zhang:ICSE14,
  author    = {Peng Liu and
               Charles Zhang},
  title     = {Unleashing concurrency for irregular data structures},
  booktitle = {ICSE},
  pages     = {480--490},
  publisher = {{ACM}},
  year      = {2014},
}

Related papers