Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1109/ISCA.2008.34acmconferencesArticle/Chapter ViewAbstractPublication PagesiscaConference Proceedingsconference-collections
Article

Using Hardware Memory Protection to Build a High-Performance, Strongly-Atomic Hybrid Transactional Memory

Published: 01 June 2008 Publication History

Abstract

We demonstrate how fine-grained memory protection can be used in support of transactional memory systems: first showing how a software transactional memory system (STM) can be made strongly atomic by using memory protection on transactionally-held state, then showing how such a strongly-atomic STM can be used with a bounded hardware TM system to build a hybrid TM system in which zero-overhead hardware transactions may safely run concurrently with potentially-conflicting software transactions. We experimentally demonstrate how this hybrid TM organization avoids the common-case overheads associated with previous hybrid TM proposals, achieving performance rivaling an unbounded HTM system without the hardware complexity of ensuring completion of arbitrary transactions in hardware. As part of our findings, we identify key policies regarding contention management within and across the hardware and software TM components that are key to achieving robust performance with a hybrid TM.

References

[1]
C. S. Ananian et al., "Unbounded Transactional Memory," in HPCA-XI , Feb. 2005.
[2]
A. W. Appel, J. R. Ellis, and K. Li, "Real-time concurrent collection on stock multiprocessors," in ACM SIGPLAN, June 1988.
[3]
L. Baugh and C. Zilles, "An Analysis of I/O and Syscalls in Critical Sections and Their Implications for Transactional Memory," in TRANSACT-II, Aug. 2007.
[4]
C. Blundell et al., "Subtleties of Transactional Memory Atomicity Semantics," Computer Architecture Letters, vol. 5, Nov. 2006.
[5]
C. Blundell et al., "Making the Fast Case Common and the Uncommon Case Simple in Unbounded Transactional Memory," SIGARCH Comput. Archit. News, vol. 35, no. 2, 2007.
[6]
J. Bobba et al., "Performance Pathologies in Hardware Transactional Memory," in ISCA-34, Jun 2007.
[7]
L. Ceze et al., "BulkSC: Bulk Enforcement of Sequential Consistency," in ISCA-34, June 2007.
[8]
W. Chuang et al., "Unbounded Page-Based Transactional Memory," in ASPLOS-XII, Oct. 2006.
[9]
P. Damron et al., "Hybrid Transactional Memory," SIGOPS Oper. Syst. Rev., vol. 40, no. 5, 2006.
[10]
D. Dice, O. Shalev, and N. Shavit, "Transactional Locking II," in Proc. of the 20th International Symposium on Distributed Computing (DISC 2006), 2006.
[11]
M. Franklin and G. S. Sohi, "The expandable split window paradigm for exploiting fine-grain parallelism," in ISCA-19, May 1992.
[12]
L. Gwennap, "Alpha 21364 to Ease Memory Bottleneck," in Micro-processor Report, Oct. 1998.
[13]
L. Hammond et al., "Transactional Memory Coherence and Consistency," in ISCA-31, June 2004.
[14]
T. Harris, "What does 'atomic' mean?." Presentation.
[15]
T. Harris et al., "Composable Memory Transactions," in PPOPP, 2005.
[16]
M. Herlihy and J. E. B. Moss, "Transactional Memory: Architectural Support for Lock-Free Data Structures," in ISCA-20, May 1993.
[17]
W. N. S. III and M. L. Scott, "Advanced Contention Management for Dynamic Software Transactional Memory," in PODC-XXIV, 2005.
[18]
J. R. Larus and R. Rajwar, Transactional Memory. Dec. 2006.
[19]
Y. Lev, M. Moir, and D. Nussbaum, "PhTM: Phased Transactional Memory," in TRANSACT-II, Aug. 2007.
[20]
P. S. Magnusson et al., "Simics: A full system simulation platform," IEEE Computer, vol. 35, Feb. 2002.
[21]
M. M. Martin et al., "Multifacet's General Execution-driven Multiprocessor Simulator (GEMS) Toolset," Computer Architecture News (CAN), Sept. 2005.
[22]
C. J. Mauer et al., "Full system timing-first simulation," in SIGMETRICS-02, June 2002.
[23]
A. McDonald et al., "Architectural Semantics for Practical Transactional Memory," in ISCA-33, June 2006.
[24]
C. C. Minh et al., "An Effective Hybrid Transactional Memory System with Strong Isolation Guarantees," in ISCA-34, June 2007.
[25]
K. E. Moore et al., "LogTM: Log-based Transactional Memory," in HPCA-XII, Feb. 2006.
[26]
M. J. Moravan et al., "Supporting nested transactional memory in LogTM," SIGOPS Oper. Syst. Rev., vol. 40, no. 5, 2006.
[27]
N. Neelakantam et al., "Hardware Atomicity for Reliable Software Speculation," in ISCA-34, June 2007.
[28]
R. Rajwar and J. R. Goodman, "Speculative Lock Elision: Enabling Highly Concurrent Multithreaded Execution," in MICRO-34, Dec. 2001.
[29]
R. Rajwar, M. Herlihy, and K. Lai, "Virtualizing Transactional Memory," in ISCA-32, June 2005.
[30]
P. Ranganathan, V. S. Pai, and S. V. Adve, "Using speculative retirement and larger instruction windows to narrow the performance gap between memory consistency models," in SPAA-IX, June 1997.
[31]
C. J. Rossbach et al., "TxLinux: Using and Managing Transactional Memory in an Operating System," in SOSP-XXI, Oct. 2007.
[32]
I. Schoinas, B. Falsafi, A. R. Lebeck, S. K. Reinhardt, J. R. Larus, and D. A. Wood, "Fine-grain access control for distributed shared memory," in ASPLOS-VI, Oct. 1994.
[33]
M. L. Scott et al., "Transactions and Privatization in Delaunay Triangulation," in PODC-XVI, 2007.
[34]
A. Shankar et al., "Runtime Specialization with Optimistic Heap Analysis," in OOPSLA 2005, 2005.
[35]
T. Shpeisman et al., "Enforcing Isolation and Ordering in STM," in PLDI '07, June 2007.
[36]
T. F. Wenisch et al., "Mechanisms for Store-Wait-Free Multiprocessors," in ISCA-34, June 2007.
[37]
E. Witchel et al., "Mondrian Memory Protection," in ASPLOS-X, Oct 2002.
[38]
W. A. Wulf, "Compilers and Computer Architecture," IEEE Computer , vol. 14, no. 7, 1981.
[39]
M. Yourst, "PTLsim: A cycle accurate full system x86-64 microarchitectural simulator," in ISPASS '07, Apr. 2007.
[40]
P. Zhou et al., "iWatcher: Efficient Architectural Support for Software Debugging," in ASPLOS-VI, Oct. 1994.

Cited By

View all
  • (2019)The Mechanized Marriage of Effects and Monads with Applications to High-assurance HardwareACM Transactions on Embedded Computing Systems10.1145/327428218:1(1-26)Online publication date: 8-Jan-2019
  • (2015)Low-overhead software transactional memory with progress guarantees and strong semanticsACM SIGPLAN Notices10.1145/2858788.268851050:8(97-108)Online publication date: 24-Jan-2015
  • (2015)Low-overhead software transactional memory with progress guarantees and strong semanticsProceedings of the 20th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming10.1145/2688500.2688510(97-108)Online publication date: 24-Jan-2015
  • Show More Cited By

Index Terms

  1. Using Hardware Memory Protection to Build a High-Performance, Strongly-Atomic Hybrid Transactional Memory

        Recommendations

        Comments

        Information & Contributors

        Information

        Published In

        cover image ACM Conferences
        ISCA '08: Proceedings of the 35th Annual International Symposium on Computer Architecture
        June 2008
        449 pages
        ISBN:9780769531748
        • cover image ACM SIGARCH Computer Architecture News
          ACM SIGARCH Computer Architecture News  Volume 36, Issue 3
          June 2008
          449 pages
          ISSN:0163-5964
          DOI:10.1145/1394608
          Issue’s Table of Contents

        Sponsors

        Publisher

        IEEE Computer Society

        United States

        Publication History

        Published: 01 June 2008

        Check for updates

        Author Tags

        1. Abort Handler
        2. Hybrid
        3. Memory Protection
        4. Primitives
        5. Strong Atomicity
        6. Transactional Memory

        Qualifiers

        • Article

        Conference

        ISCA08
        Sponsor:

        Acceptance Rates

        ISCA '08 Paper Acceptance Rate 37 of 259 submissions, 14%;
        Overall Acceptance Rate 543 of 3,203 submissions, 17%

        Upcoming Conference

        ISCA '25

        Contributors

        Other Metrics

        Bibliometrics & Citations

        Bibliometrics

        Article Metrics

        • Downloads (Last 12 months)11
        • Downloads (Last 6 weeks)3
        Reflects downloads up to 13 Sep 2024

        Other Metrics

        Citations

        Cited By

        View all
        • (2019)The Mechanized Marriage of Effects and Monads with Applications to High-assurance HardwareACM Transactions on Embedded Computing Systems10.1145/327428218:1(1-26)Online publication date: 8-Jan-2019
        • (2015)Low-overhead software transactional memory with progress guarantees and strong semanticsACM SIGPLAN Notices10.1145/2858788.268851050:8(97-108)Online publication date: 24-Jan-2015
        • (2015)Low-overhead software transactional memory with progress guarantees and strong semanticsProceedings of the 20th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming10.1145/2688500.2688510(97-108)Online publication date: 24-Jan-2015
        • (2013)OCTETACM SIGPLAN Notices10.1145/2544173.250951948:10(693-712)Online publication date: 29-Oct-2013
        • (2013)OCTETProceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applications10.1145/2509136.2509519(693-712)Online publication date: 29-Oct-2013
        • (2013)Wait-n-GoTMACM SIGPLAN Notices10.1145/2499368.245117348:4(521-534)Online publication date: 16-Mar-2013
        • (2013)Wait-n-GoTMACM SIGARCH Computer Architecture News10.1145/2490301.245117341:1(521-534)Online publication date: 16-Mar-2013
        • (2013)Wait-n-GoTMProceedings of the eighteenth international conference on Architectural support for programming languages and operating systems10.1145/2451116.2451173(521-534)Online publication date: 16-Mar-2013
        • (2012)TagTM - accelerating STMs with hardware tags for fast meta-data accessProceedings of the Conference on Design, Automation and Test in Europe10.5555/2492708.2492720(39-44)Online publication date: 12-Mar-2012
        • (2012)A case for unlimited watchpointsACM SIGPLAN Notices10.1145/2248487.215099447:4(159-172)Online publication date: 3-Mar-2012
        • Show More Cited By

        View Options

        Get Access

        Login options

        View options

        PDF

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader

        Media

        Figures

        Other

        Tables

        Share

        Share

        Share this Publication link

        Share on social media