Predictive log-synchronization

Ori Shalev*, Nir Shavit

*Corresponding author for this work

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

This paper proposes predictive log-synchronization, an alternative paradigm to the software transactional memory approach for simplifying the design of concurrent data structures. Predictive log-synchronization simplifies concurrent programming and program verification by requiring programmers to write only specialized sequential code. This sequential code is then automatically transformed into a non-blocking concurrent program in which threads coordinate all data structure operations via a shared lock-controlled log. The non-blocking progress property is achieved by having threads that fail to acquire the lock predict the outcome of their operations by reading the log and state and computing the effect of these operations without modifying the actual data structure.Log-synchronization is founded on the belief (at this point unsubstantiated by statistical data) that in many concurrent data structures used in real-world applications, the ratio of high level operations that modify the structure to ones that simply read it, greatly favors read-only operations, and what's more, that many natural data structures have inherent sequential bottlenecks limiting the concurrency among operations that modify the structure. It follows that delegating all data structure modifications to a single lock-controlled thread at a time will not significantly harm the throughput of modifying operations. Moreover, as we show, it can boost read-only throughput by significantly reducing the overhead of coordination among concurrent operations, and provides a way to simplify concurrent data structures.Initial experimental testing using a Java-based implementation of predictive log-synchronization showed that a log-synchronized concurrent red-black tree is up to five times faster than a simple lock-based one. This paper presents our current understanding of the advantages, drawbacks, and scope of predictive log-synchronization.

Original languageEnglish
Title of host publicationProceedings of the 2006 EuroSys Conference
Pages305-315
Number of pages11
DOIs
StatePublished - 2006
Externally publishedYes
Event2006 EuroSys Conference - Leuven, Belgium
Duration: 18 Apr 200621 Apr 2006

Publication series

NameProceedings of the 2006 EuroSys Conference

Conference

Conference2006 EuroSys Conference
Country/TerritoryBelgium
CityLeuven
Period18/04/0621/04/06

Keywords

  • Concurrent
  • Monitor
  • Prediction
  • Synchronization

Fingerprint

Dive into the research topics of 'Predictive log-synchronization'. Together they form a unique fingerprint.

Cite this