Proceedings of the 31st ACM SIGPLAN Conference on Programming Language Design and Implementation 2010
DOI: 10.1145/1806596.1806627
|View full text |Cite
|
Sign up to set email alerts
|

Lock elision for read-only critical sections in Java

Abstract: It is not uncommon in parallel workloads to encounter shared data structures with read-mostly access patterns, where operations that update data are infrequent and most operations are read-only. Typically, data consistency is guaranteed using mutual exclusion or read-write locks. The cost of atomic update of lock variables result in high overheads and high cache coherence traffic under active sharing, thus slowing down single thread performance and limiting scalability.In this paper, we present SOLERO (Softwar… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1

Citation Types

0
4
0

Year Published

2011
2011
2017
2017

Publication Types

Select...
2
2
2

Relationship

0
6

Authors

Journals

citations
Cited by 10 publications
(4 citation statements)
references
References 21 publications
0
4
0
Order By: Relevance
“…FIB provides analysis atomicity for no added cost on common-case threadlocal and read-shared accesses by introducing safe synchronous coordination between threads in uncommon cases. Shifting blanket pessimistic synchronization overhead to rare cooperative events can reduce overall cost, an insight whose foundations are exploited in diverse ways by cooperative systems such as cache coherence [Papamarcos and Patel 1984], biased locking [Bacon et al 1998;Kawachiya et al 2002;Nakaike and Michael 2010;Pizlo et al 2011;Rajwar and Goodman 2001;Rogers and Iyengar 2011;Russell and Detlefs 2006;Vasudevan et al 2010], the Octet dependence tracker [Bond et al 2013] and other cooperative techniques for object-granularity race detection [von Praun and Gross 2001], and the RADISH hardware-supported data race detector [Devietti et al 2012]. Unlike these systems, most status information and checks used by the FIB cooperative protocol incur no extra cost, since they are derived from existing data race detection metadata and logic.…”
Section: Cooperative Analysis Atomicity Mitigates Synchronization Costsmentioning
confidence: 99%
“…FIB provides analysis atomicity for no added cost on common-case threadlocal and read-shared accesses by introducing safe synchronous coordination between threads in uncommon cases. Shifting blanket pessimistic synchronization overhead to rare cooperative events can reduce overall cost, an insight whose foundations are exploited in diverse ways by cooperative systems such as cache coherence [Papamarcos and Patel 1984], biased locking [Bacon et al 1998;Kawachiya et al 2002;Nakaike and Michael 2010;Pizlo et al 2011;Rajwar and Goodman 2001;Rogers and Iyengar 2011;Russell and Detlefs 2006;Vasudevan et al 2010], the Octet dependence tracker [Bond et al 2013] and other cooperative techniques for object-granularity race detection [von Praun and Gross 2001], and the RADISH hardware-supported data race detector [Devietti et al 2012]. Unlike these systems, most status information and checks used by the FIB cooperative protocol incur no extra cost, since they are derived from existing data race detection metadata and logic.…”
Section: Cooperative Analysis Atomicity Mitigates Synchronization Costsmentioning
confidence: 99%
“…Lock Elision Our transformation is inspired by the idea of sequential locks [37] and the approach presented in [39], which replace locks with optimistic concurrency control in read-only transactions. But in contrast to these works, we handle read-only prefixes of transactions (operations) that do update the shared memory.…”
Section: Related Workmentioning
confidence: 99%
“…Though the cost of memory ordering via CAS and fences was substantial, lock elision achieved performance gains of up to 5% [22]. In comparison, DRE-based optimistic synchronization is safe for a larger class of critical sections and memory ordering costs may be absorbed by data-race detection cost.…”
Section: Performancementioning
confidence: 99%
“…Our transformation is similar to eagerupdate/eager-conflict-detection TM [16]; we avoid problems of escaping and rollback by restricting the transformation to limited critical sections. DRE-based optimistic synchronization makes a compromise, supporting more (but not all) critical sections than software lock elision [22], with no specialized support beyond DREs.…”
Section: Related Workmentioning
confidence: 99%