Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3087556.3087600acmconferencesArticle/Chapter ViewAbstractPublication PagesspaaConference Proceedingsconference-collections
abstract
Public Access

Brief Announcement: Extending Transactional Memory with Atomic Deferral

Published: 24 July 2017 Publication History
  • Get Citation Alerts
  • Abstract

    Atomic deferral is a language-level mechanism for transactional memory (TM) that enables programmers to move output and long-running operations out of a transaction's body without sacrificing serializability: the deferred operation appears to execute as part of its parent transaction, even though it does not make use of TM.
    We introduce the first implementation of atomic deferral, based on transaction-friendly locks; describe enhancements to its API; and demonstrate its effectiveness. Our experiments show that atomic deferral is useful for its original purpose of moving output operations out of transactions, and also for moving expensive library calls out of transactions. The result is a significant improvement in performance for the PARSEC dedup kernel, for both software and hardware TM systems.

    References

    [1]
    Christian Bienia, Sanjeev Kumar, Jaswinder Pal Singh, and Kai Li. 2008. The PARSEC Benchmark Suite: Characterization and Architectural Implications. In Proceedings of the 17th International Conference on Parallel Architectures and Compilation Techniques. Toronto, ON, Canada.
    [2]
    Brian D. Carlstrom, Austen McDonald, Hassan Chafi, JaeWoong Chung, Chi Cao Minh, Christos Kozyrakis, and Kunle Olukotun. 2006. The Atomos Transactional Programming Language. In Proceedings of the 27th ACM Conference on Programming Language Design and Implementation.
    [3]
    Kapali P. Eswaran, Jim Gray, Raymond A. Lorie, and Irving L. Traiger. 1976. The Notions of Consistency and Predicate Locks in a Database System. Communications of the ACM 19, 11 (1976), 624--633.
    [4]
    Free Software Foundation. 2012. Transactional Memory in GCC. (2012). http://gcc.gnu.org/wiki/TransactionalMemory.
    [5]
    Tim Harris, Simon Marlow, Simon Peyton Jones, and Maurice Herlihy. 2005. Composable Memory Transactions. In Proceedings of the 10th ACM Symposium on Principles and Practice of Parallel Programming. Chicago, IL.
    [6]
    Maurice P. Herlihy and J. Eliot B. Moss. 1993. Transactional Memory: Architectural Support for Lock-Free Data Structures. In Proceedings of the 20th International Symposium on Computer Architecture. San Diego, CA.
    [7]
    ISO/IEC JTC 1/SC 22/WG 21. 2015. Technical Specification for C+ Extensions for Transactional Memory. (May 2015). http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4514.pdf
    [8]
    Takuya Nakaike, Rei Odaira, Matthew Gaudet, Maged M. Michael, and Hisanobu Tomari. 2015. Quantitative Comparison of Hardware Transactional Memory for Blue Gene/Q, zEnterprise EC12, Intel Core, and POWER8. In Proceedings of the 42nd Annual International Symposium on Computer Architecture. Portland, OR.
    [9]
    Yang Ni, Adam Welc, Ali-Reza Adl-Tabatabai, Moshe Bach, Sion Berkowits, James Cownie, Robert Geva, Sergey Kozhukow, Ravi Narayanaswamy, Jeffrey Olivier, Serguei Preis, Bratin Saha, Ady Tal, and Xinmin Tian. 2008. Design and Implementation of Transactional Constructs for C/C+. In Proceedings of the 23rd ACM Conference on Object Oriented Programming, Systems, Languages, and Applications. Nashville, TN, USA.
    [10]
    Michael Spear, Michael Silverman, Luke Dalessandro, Maged M. Michael, and Michael L. Scott. 2008. Implementing and Exploiting Inevitability in Software Transactional Memory. In Proceedings of the 37th International Conference on Parallel Processing. Portland, OR.
    [11]
    Haris Volos, Andres Jaan Tack, Neelam Goyal, Michael Swift, and Adam Welc. 2009. xCalls: Safe I/O in Memory Transactions. In Proceedings of the EuroSys2009 Conference. Nuremberg, Germany.
    [12]
    Chao Wang, Yujie Liu, and Michael Spear. 2014. Transaction-Friendly Condition Variables. In Proceedings of the 26th ACM Symposium on Parallelism in Algorithms and Architectures. Prague, Czech Republic.
    [13]
    Adam Welc, Bratin Saha, and Ali-Reza Adl-Tabatabai. 2008. Irrevocable Transactions and their Applications. In Proceedings of the 20th ACM Symposium on Parallelism in Algorithms and Architectures. Munich, Germany.
    [14]
    Tingzhe Zhou and Michael Spear. 2016. The Mimir Approach to Transactional Output. In Proceedings of the 11th ACM SIGPLAN Workshop on Transactional Computing. Barcelona, Spain.

    Index Terms

    1. Brief Announcement: Extending Transactional Memory with Atomic Deferral

        Recommendations

        Comments

        Information & Contributors

        Information

        Published In

        cover image ACM Conferences
        SPAA '17: Proceedings of the 29th ACM Symposium on Parallelism in Algorithms and Architectures
        July 2017
        392 pages
        ISBN:9781450345934
        DOI:10.1145/3087556
        Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the Owner/Author.

        Sponsors

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        Published: 24 July 2017

        Check for updates

        Author Tags

        1. I/O
        2. concurrency
        3. synchronization
        4. transactional memory

        Qualifiers

        • Abstract

        Funding Sources

        Conference

        SPAA '17
        Sponsor:

        Acceptance Rates

        SPAA '17 Paper Acceptance Rate 31 of 127 submissions, 24%;
        Overall Acceptance Rate 447 of 1,461 submissions, 31%

        Contributors

        Other Metrics

        Bibliometrics & Citations

        Bibliometrics

        Article Metrics

        • 0
          Total Citations
        • 145
          Total Downloads
        • Downloads (Last 12 months)15
        • Downloads (Last 6 weeks)6
        Reflects downloads up to 10 Aug 2024

        Other Metrics

        Citations

        View Options

        View options

        PDF

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader

        Get Access

        Login options

        Media

        Figures

        Other

        Tables

        Share

        Share

        Share this Publication link

        Share on social media