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

skip to main content
research-article

SpecTLB: a mechanism for speculative address translation

Published: 04 June 2011 Publication History

Abstract

Data-intensive computing applications are using more and more memory and are placing an increasing load on the virtual memory system. While the use of large pages can help alleviate the overhead of address translation, they limit the control the operating system has over memory allocation and protection. We present a novel device, the SpecTLB, that exploits the predictable behavior of reservation-based physical memory allocators to interpolate address translations.
Our device provides speculative translations for many TLB misses on small pages without referencing the page table. While these interpolations must be confirmed, doing so can be done in parallel with speculative execution. This effectively hides the execution latency of these TLB misses. In simulation, the SpecTLB is able to overlap an average of 57% of page table walks with successful speculative execution over a wide variety of applications. We also show that the SpecTLB outperforms a state-of-the-art TLB prefetching scheme for virtually all tested applications with significant TLB miss rates. Moreover, we show that the SpecTLB is efficient since mispredictions are extremely rare, occurring in less than 1% of TLB misses. In essense, the SpecTLB effectively enables the use of small pages to achieve fine-grained allocation and protection, while avoiding the associated latency penalties of small pages.

Supplementary Material

JPG File (isca_7a_3.jpg)
MP4 File (isca_7a_3.mp4)

References

[1]
Advanced Micro Devices. AMD x86-64 Architecture Programmer's Manual, Volume 2, 2002.
[2]
D. H. Bailey, E. Barszcz, J. T. Barton, D. S. Browning, R. L. Carter, R. A. Fatoohi, P. O. Frederickson, T. A. Lasinski, H. D. Simon, V. Venkatakrishnan, and S. K. Weeratunga. The nas parallel benchmarks. Technical report, The International Journal of Supercomputer Applications, 1991.
[3]
T. W. Barr, A. L. Cox, and S. Rixner. Translation caching: Skip, don't walk (the page table). In ISCA '10: Proceedings of the 37th annual international symposium on Computer architecture, New York, NY, USA, 2010. ACM.
[4]
R. Bedicheck. SimNow: Fast platform simulation purely in software. In Hot Chips 16, 2004.
[5]
R. Bhargava, B. Serebrin, F. Spadini, and S. Manne. Accelerating two-dimensional page walks for virtualized systems. In ASPLOS XIII: Proceedings of the 13th international conference on Architectural support for programming languages and operating systems, pages 26--35, New York, NY, USA, 2008. ACM.
[6]
A. Bhattacharjee and M. Martonosi. Inter-core cooperative tlb for chip multiprocessors. In ASPLOS '10: Proceedings of the fifteenth edition of ASPLOS on Architectural support for programming languages and operating systems, pages 359--370, New York, NY, USA, 2010. ACM.
[7]
J. Corbet. benchw. http://benchw.sourceforge.net/.
[8]
J. Corbet. KS2009: How Google uses Linux. http://lwn.net/Articles/357658/.
[9]
J. Edler and M. D. Hill. Dinero IV Trace-Driven Uniprocessor Cache Simulator, 1998.
[10]
N. Ganapathy and C. Schimmel. General purpose operating system support for multiple page sizes. In In Proceedings of the USENIX Conference. USENIX, pages 91--104, 1998.
[11]
J. L. Henning. SPEC CPU2006 benchmark descriptions. SIGARCH Comput. Archit. News, 34(4):1--17, 2006.
[12]
G. B. Kandiraju and A. Sivasubramaniam. Going the distance for tlb prefetching: an application-driven study. In ISCA '02: Proceedings of the 29th annual international symposium on Computer architecture, pages 195--206, Washington, DC, USA, 2002. IEEE Computer Society.
[13]
J. Liedtke. Address space sparsity and fine granularity. In EW 6: Proceedings of the 6th workshop on ACM SIGOPS European workshop, pages 78--81, New York, NY, USA, 1994. ACM.
[14]
M. M. K. Martin, D. J. Sorin, H. W. Cain, M. D. Hill, and M. H. Lipasti. Correctly implementing value prediction in microprocessors that support multithreading or multiprocessing. In Proceedings of the 34th annual ACM/IEEE international symposium on Microarchitecture, MICRO 34, pages 328--337, Washington, DC, USA, 2001. IEEE Computer Society.
[15]
C. Mather, I. Subramanian, I. Subramanian, C. Mather, K. Peterson, K. Peterson, B. Raghunath, and B. Raghunath. Implementation of Multiple Pagesize Support in HP-UX, 1998.
[16]
J. Mauro and R. McDougall. Solaris Internals. Sun Microsystems Press, 2000.
[17]
C. McCurdy, A. L. Cox, and J. Vetter. Investigating the TLB Behavior of High-end Scientific Applications on Commodity Microprocessors. In ISPASS '08: Proceedings of the ISPASS 2008 - IEEE International Symposium on Performance Analysis of Systems and software, pages 95--104, Washington, DC, USA, 2008. IEEE Computer Society.
[18]
J. C. Mogul. SIGOPS to SIGARCH: Now it';s our turn to push you around. In OSDI 2010, Berkeley, CA, USA, 2010. USENIX Association.
[19]
J. Navarro, S. Iyer, P. Druschel, and A. Cox. Practical, transparent operating system support for superpages. SIGOPS Oper. Syst. Rev., 36(SI):89--104, 2002.
[20]
B. F. Romanescu, A. R. Lebeck, and D. J. Sorin. Specifying and dynamically verifying address translation-aware memory consistency. In Proceedings of the fifteenth edition of ASPLOS on Architectural support for programming languages and operating systems, ASPLOS '10, pages 323--334, New York, NY, USA, 2010. ACM.
[21]
T. H. Romer, W. H. Ohlrich, A. R. Karlin, and B. N. Bershad. Reducing TLB and memory overhead using online superpage promotion. In ISCA '95: Proceedings of the 22nd annual international symposium on Computer architecture, pages 176--187, New York, NY, USA, 1995. ACM.
[22]
A. Saulsbury, F. Dahlgren, and P. Stenström. Recency-based tlb preloading. In ISCA '00: Proceedings of the 27th annual international symposium on Computer architecture, pages 117--127, New York, NY, USA, 2000. ACM.
[23]
Standard Performance Evaluation Corporation. The SPEC JBB2005 Benchmark, 2005.
[24]
M. Talluri and M. D. Hill. Surpassing the tlb performance of superpages with less operating system support. In Proceedings of the Sixth International Conference on Architectural Support for Programming Languages and Operating Systems, 1994.
[25]
M. Talluri, M. D. Hill, and Y. A. Khalidi. A new page table for 64-bit address spaces. In SOSP '95: Proceedings of the fifteenth ACM symposium on Operating systems principles, pages 184--200, New York, NY, USA, 1995. ACM.
[26]
R. Uhlig, G. Neiger, D. Rodgers, A. Santoni, F. Martins, A. Anderson, S. Bennett, A. Kagi, F. Leung, and L. Smith. Intel Virtualization Technology. Computer, 38(5):48--56, May 2005.

Cited By

View all
  • (2023)Accelerating Extra Dimensional Page Walks for Confidential ComputingProceedings of the 56th Annual IEEE/ACM International Symposium on Microarchitecture10.1145/3613424.3614293(654-669)Online publication date: 28-Oct-2023
  • (2023)vPIM: Efficient Virtual Address Translation for Scalable Processing-in-Memory Architectures2023 60th ACM/IEEE Design Automation Conference (DAC)10.1109/DAC56929.2023.10247745(1-6)Online publication date: 9-Jul-2023
  • (2022)MaPHeA: A Framework for Lightweight Memory Hierarchy-aware Profile-guided Heap AllocationACM Transactions on Embedded Computing Systems10.1145/352785322:1(1-28)Online publication date: 13-Dec-2022
  • Show More Cited By

Index Terms

  1. SpecTLB: a mechanism for speculative address translation

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image ACM SIGARCH Computer Architecture News
    ACM SIGARCH Computer Architecture News  Volume 39, Issue 3
    ISCA '11
    June 2011
    462 pages
    ISSN:0163-5964
    DOI:10.1145/2024723
    Issue’s Table of Contents
    • cover image ACM Conferences
      ISCA '11: Proceedings of the 38th annual international symposium on Computer architecture
      June 2011
      488 pages
      ISBN:9781450304726
      DOI:10.1145/2000064
    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: 04 June 2011
    Published in SIGARCH Volume 39, Issue 3

    Check for updates

    Author Tags

    1. memory management
    2. tlb

    Qualifiers

    • Research-article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

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

    Other Metrics

    Citations

    Cited By

    View all
    • (2023)Accelerating Extra Dimensional Page Walks for Confidential ComputingProceedings of the 56th Annual IEEE/ACM International Symposium on Microarchitecture10.1145/3613424.3614293(654-669)Online publication date: 28-Oct-2023
    • (2023)vPIM: Efficient Virtual Address Translation for Scalable Processing-in-Memory Architectures2023 60th ACM/IEEE Design Automation Conference (DAC)10.1109/DAC56929.2023.10247745(1-6)Online publication date: 9-Jul-2023
    • (2022)MaPHeA: A Framework for Lightweight Memory Hierarchy-aware Profile-guided Heap AllocationACM Transactions on Embedded Computing Systems10.1145/352785322:1(1-28)Online publication date: 13-Dec-2022
    • (2022)Effective TLB thrashingProceedings of the 37th ACM/SIGAPP Symposium on Applied Computing10.1145/3477314.3507110(1704-1712)Online publication date: 25-Apr-2022
    • (2021)MaPHeA: a lightweight memory hierarchy-aware profile-guided heap allocation frameworkProceedings of the 22nd ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, and Tools for Embedded Systems10.1145/3461648.3463844(24-36)Online publication date: 22-Jun-2021
    • (2021)Exploiting page table locality for agile TLB prefetchingProceedings of the 48th Annual International Symposium on Computer Architecture10.1109/ISCA52012.2021.00016(85-98)Online publication date: 14-Jun-2021
    • (2020)A Unified Page Walk Buffer and Page Walk Cache2020 IEEE Intl Conf on Parallel & Distributed Processing with Applications, Big Data & Cloud Computing, Sustainable Computing & Communications, Social Computing & Networking (ISPA/BDCloud/SocialCom/SustainCom)10.1109/ISPA-BDCloud-SocialCom-SustainCom51426.2020.00038(93-101)Online publication date: Dec-2020
    • (2020)Superpage-Friendly Page Table Design for Hybrid Memory SystemsData Science10.1007/978-981-15-7981-3_46(623-641)Online publication date: 20-Aug-2020
    • (2020)CoPTA: Contiguous Pattern Speculating TLB ArchitectureEmbedded Computer Systems: Architectures, Modeling, and Simulation10.1007/978-3-030-60939-9_5(67-83)Online publication date: 7-Oct-2020
    • (2019)DUCATIACM Transactions on Architecture and Code Optimization10.1145/330971016:1(1-24)Online publication date: 8-Mar-2019
    • 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