skip to main content
poster

Automatic semantic locking

Published:06 February 2014Publication History
Skip Abstract Section

Abstract

In this paper, we consider concurrent programs in which the shared state consists of instances of linearizable ADTs (abstract data types). We develop a novel automated approach to concurrency control that addresses a common need: the need to atomically execute a code fragment, which may contain multiple ADT operations on multiple ADT instances. In our approach, each ADT implements ADT-specific semantic locking operations that serve to exploit the semantics of ADT operations. We develop a synthesis algorithm that automatically inserts calls to these locking operations in a set of given code fragments (in a client program) to ensure that these code fragments execute atomically without deadlocks, and without rollbacks.

We have implemented the synthesis algorithm and several general-purpose ADTs with semantic locking. We have applied the synthesis algorithm to several Java programs that use these ADTs. Our results show that our approach enables efficient and scalable synchronization.

References

  1. sites.google.com/site/deucestm/.Google ScholarGoogle Scholar
  2. http://www.jgroups.org.Google ScholarGoogle Scholar
  3. Bernstein, P. A., Hadzilacos, V., and Goodman, N. Concurrency Control and Recovery in Database Systems. Addison-Wesley, 1987. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Golan-Gueta, G., Ramalingam, G., Sagiv, M., and Yahav, E. Concurrent libraries with foresight. In PLDI (2013). Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Automatic semantic locking

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Published in

        cover image ACM SIGPLAN Notices
        ACM SIGPLAN Notices  Volume 49, Issue 8
        PPoPP '14
        August 2014
        390 pages
        ISSN:0362-1340
        EISSN:1558-1160
        DOI:10.1145/2692916
        Issue’s Table of Contents
        • cover image ACM Conferences
          PPoPP '14: Proceedings of the 19th ACM SIGPLAN symposium on Principles and practice of parallel programming
          February 2014
          412 pages
          ISBN:9781450326568
          DOI:10.1145/2555243

        Copyright © 2014 Owner/Author

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 6 February 2014

        Check for updates

        Qualifiers

        • poster

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader
      About Cookies On This Site

      We use cookies to ensure that we give you the best experience on our website.

      Learn more

      Got it!