ACM Home Page
Please provide us with feedback. Feedback
A transactional approach to lock scalability
Full text PdfPdf (106 KB)
Source
ACM Symposium on Parallel Algorithms and Architectures archive
Proceedings of the twentieth annual symposium on Parallelism in algorithms and architectures table of contents
Munich, Germany
SESSION: Brief announcements table of contents
Pages 101-103  
Year of Publication: 2008
ISBN:978-1-59593-973-9
Authors
Amitabha Roy  University of Cambridge, Cambridge, United Kingdom
Keir Fraser  University of Cambridge, Cambridge, United Kingdom
Steven Hand  University of Cambridge, Cambridge, United Kingdom
Sponsors
ACM: Association for Computing Machinery
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
SIGARCH: ACM Special Interest Group on Computer Architecture
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 9,   Downloads (12 Months): 81,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1378533.1378550
What is a DOI?

ABSTRACT

Most software transactional memory implementations execute code using fine-grained optimistic concurrency control. This does not perform well with low contention data structures where fine grained conflict detection means manipulating metadata for every object touched and optimistic concurrency control imposes the overhead of making thread private shadow copies. Also, a purely optimistic approach does not coexist naturally with legacy code that is either already concurrent using locks or does IO operations that cannot be revoked. We try to address these problems by presenting a new form of the reader writer locks used by the vast majority of concurrent code today. Along with the traditional lock/unlock operations, these new locks support STM-like management of shadow versions that can be used when desired by the programmer. We show how existing lock based code can be scaled to perform as well as an STM, with few changes to the existing code base. We also show as a corollary that our design allows construction of data structures that retain strict fairness between threads, while simultaneously allowing disjoint access parallelism.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
O. Shalev D. Dice and N. Shavit. Transactional locking II. In DISC 2006.
 
2
K. Fraser. Practical lock freedom. PhD thesis, Cambridge University Computer Laboratory, 2003.
 
3
Paul E. McKenney and John D. Slingwine. Read-copy update: Using execution history to solve concurrency problems. In Parallel and Distributed Computing and Systems, pages 509--518, October 1998.
4
 
5
D. N. Jayasimha N. Dershowitz and S. Park. Bounded fairness. In Verification: Theory and Practice, 2003.

Collaborative Colleagues:
Amitabha Roy: colleagues
Keir Fraser: colleagues
Steven Hand: colleagues