Nothing Special   »   [go: up one dir, main page]

skip to main content
article

Unbounded page-based transactional memory

Published: 20 October 2006 Publication History

Abstract

Exploiting thread level parallelism is paramount in the multicore era. Transactions enable programmers to expose such parallelism by greatly simplifying the multi-threaded programming model. Virtualized transactions (unbounded in space and time) are desirable, as they can increase the scope of transactions' use, and thereby further simplify a programmer's job. However, hardware support is essential to support efficient execution of unbounded transactions. In this paper, we introduce Page-based Transactional Memory to support unbounded transactions. We combine transaction bookkeeping with the virtual memory system to support fast transaction conflict detection, commit, abort, and to maintain transactions' speculative data.

References

[1]
C.S. Ananian, K. Asanovic, B.C. Kuszmaul, C.E. Leiserson, and S. Lie. Unbounded transactional memory. In HPCA '05: Proceedings of the 11th International Symposium on High-Performance Computer Architecture, pages 316--327, Washington, DC, USA, 2005. IEEE Computer Society.
[2]
A. Chang and M.F. Mergen. 801 storage: Architecture and programming. ACM Transactions on Computer Systems, 6(1):28--50, 1988.
[3]
J. Chung, H. Chafi, C.C. Minh, A. McDonald, B.D. Carlstrom, C. Kozyrakis, and K. Olukotun. The common case transactional behavior of multithreaded programs. In HPCA '06: Proceedings of the 12th International Symposium on High-Performance Computer Architecture, Washington, DC, USA, 2006. IEEE Computer Society.
[4]
C. Dubnicki and T.J. LeBlanc. Adjustable block size coherent caches. In Proceedings of the 19th International Symposium on Computer Architecture, Gold Coast, Australia, 1992.
[5]
J.N. Gray. Operating Systems: An Advanced Course, chapter Notes on Database Operating Systems, pages 393--481. Springer-Verlag, Berlin, 1978. R. Bayer, R.M. Graham, and G. Seegmuller, editors.
[6]
L. Hammond, B.D. Carlstrom, V. Wong, M. Chen, C. Kozyrakis, and K. Olukotun. Transactional coherence and consistency: Simplifying parallel hardware and software. Mico's Top Picks, IEEE Micro, 24(6), nov/dec 2004.
[7]
L. Hammond, B.D. Carlstrom, V. Wong, B. Hertzberg, M. Chen, C. Kozyrakis, and K. Olukotun. Programming with transactional coherence and consistency (tcc). In ASPLOS-XI: Proceedings of the 11th international conference on Architectural support for programming languages and operating systems, pages 1--13, New York, NY, USA, 2004. ACM Press.
[8]
L. Hammond, M. Willey, and K. Olukotun. Data speculation support for a chip multiprocessor. ACM SIGOPS Operating Systems Review, 32(5):58--69, 1998.
[9]
L. Hammond, V. Wong, M. Chen, B.D. Carlstrom, J.D. Davis, B. Hertzberg, M.K. Prabhu, H. Wijaya, C. Kozyrakis, and K. Olukotun. Transactional memory coherence and consistency. In Proceedings of the 31st Annual International Symposium on Computer Architecture, page 102. IEEE Computer Society, Jun 2004.
[10]
T. Harris, M. Plesko, A. Shinnar, and D. Tarditi. Optimizing memory transactions. In PLDI-06 Programming Languages Design and Implementation, pages 14--25. ACM Press, 2006.
[11]
M. Herlihy and J.E.B. Moss. Transactional memory: architectural support for lock-free data structures. In ISCA '93: Proceedings of the 20th annual international symposium on Computer architecture, pages 289--300, New York, NY, USA, 1993. ACM Press.
[12]
S. Magnusson, M. Christensson, J. Eskilson, D. Forsgren, G. Hållberg, J. Högberg, F. Larsson, A. Moestedt, and B. Werner. Simics: A full system simulation platform. IEEE Computer, 35(2):50--58, 2002.
[13]
A. McDonald, J. Chung, H. Chafi, C. Cao Minh, B.D. Carlstrom, L. Hammond, C. Kozyrakis, and K. Olukotun. Characterization of tcc on chip-multiprocessors. In Proceedings of the 14th International Conference on Parallel Architectures and Compilation Techniques, Sept 2005.
[14]
K.E. Moore, J. Bobba, M.J. Moravan, M.D. Hill, and D.A. Wood. Logtm: Log-based transactional memory. In HPCA '06: Proceedings of the 12th International Symposium on High-Performance Computer Architecture, Washington, DC, USA, 2006. IEEE Computer Society.
[15]
R. Rajwar, M. Herlihy, and K. Lai. Virtualizing transactional memory. SIGARCH Comput. Archit. News, 33(2):494--505, 2005.
[16]
J. Torrellas, M.S. Lam, and J.L. Hennessy. False sharing and spatial locality in multiprocessor caches. IEEE Trans. Computers, 43(6):651--663, 1994.
[17]
S.C. Woo, M. Ohara, E. Torrie, J.P. Singh, and A. Gupta. The splash-2 programs: Characterization and methodological considerations. In 22nd Annual International Symposium on Computer Architecture, pages 24--36. Association for Computing Machinery, 1995.
[18]
C. Zilles and L. Baugh. Extending hardware transactional memory to support non-busy waiting and nontransactional actions. In TRANSACT: First ACM SIGPLAN Workshop on Languages, Compilers, and Hardware Support for Transactional Computing, June 2006.

Cited By

View all

Index Terms

  1. Unbounded page-based transactional memory

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image ACM SIGPLAN Notices
    ACM SIGPLAN Notices  Volume 41, Issue 11
    Proceedings of the 2006 ASPLOS Conference
    November 2006
    425 pages
    ISSN:0362-1340
    EISSN:1558-1160
    DOI:10.1145/1168918
    Issue’s Table of Contents
    • cover image ACM Conferences
      ASPLOS XII: Proceedings of the 12th international conference on Architectural support for programming languages and operating systems
      October 2006
      440 pages
      ISBN:1595934510
      DOI:10.1145/1168857
    Permission to make digital or hard copies of all or part 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 components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 20 October 2006
    Published in SIGPLAN Volume 41, Issue 11

    Check for updates

    Author Tags

    1. concurrency
    2. parallel programming
    3. transactional memory
    4. transactions
    5. virtual memory

    Qualifiers

    • Article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)4
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 21 Nov 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2019)SSPProceedings of the 52nd Annual IEEE/ACM International Symposium on Microarchitecture10.1145/3352460.3358326(836-848)Online publication date: 12-Oct-2019
    • (2016)EXCITE-VMProceedings of the 2016 International Conference on Parallel Architectures and Compilation10.1145/2967938.2967955(401-412)Online publication date: 11-Sep-2016
    • (2014)SI-TMACM SIGARCH Computer Architecture News10.1145/2654822.254195242:1(383-398)Online publication date: 24-Feb-2014
    • (2014)SI-TMACM SIGPLAN Notices10.1145/2644865.254195249:4(383-398)Online publication date: 24-Feb-2014
    • (2014)SI-TMProceedings of the 19th international conference on Architectural support for programming languages and operating systems10.1145/2541940.2541952(383-398)Online publication date: 24-Feb-2014
    • (2013)Shared-Memory SynchronizationSynthesis Lectures on Computer Architecture10.2200/S00499ED1V01Y201304CAC0238:2(1-221)Online publication date: 12-Jun-2013
    • (2011)RMS-TM: a comprehensive benchmark suite for transactional memory systemsProceedings of the 2nd ACM/SPEC International Conference on Performance engineering10.1145/1958746.1958795(335-346)Online publication date: 14-Mar-2011
    • (2010)LiteTM: Reducing transactional state overheadHPCA - 16 2010 The Sixteenth International Symposium on High-Performance Computer Architecture10.1109/HPCA.2010.5416653(1-12)Online publication date: Jan-2010
    • (2008)Hardware transactional memory system for parallel programming2008 13th Asia-Pacific Computer Systems Architecture Conference10.1109/APCSAC.2008.4625429(1-7)Online publication date: Aug-2008
    • (2007)TxLinuxACM SIGOPS Operating Systems Review10.1145/1323293.129427141:6(87-102)Online publication date: 14-Oct-2007
    • Show More Cited By

    View Options

    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