Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Revisiting hardware-assisted page walks for virtualized systems

Published: 09 June 2012 Publication History

Abstract

Recent improvements in architectural supports for virtualization have extended traditional hardware page walkers to traverse nested page tables. However, current two-dimensional (2D) page walkers have been designed under the assumption that the usage patterns of guest and nested page tables are similar. In this paper, we revisit the architectural supports for nested page table walks to incorporate the unique characteristics of memory management by hypervisors. Unlike page tables in native systems, nested page table sizes do not impose significant overheads on the overall memory usage. Based on this observation, we propose to use flat nested page tables to reduce unnecessary memory references for nested walks.
A competing mechanism to HW 2D page walkers is shadow paging, which duplicates guest page tables but provides direct translations from guest virtual to system physical addresses. However, shadow paging has been suffering from the overheads of synchronization between guest and shadow page tables. The second mechanism we propose is a speculative shadow paging mechanism, called speculative inverted shadow paging, which is backed by non-speculative flat nested page tables. The speculative mechanism provides a direct translation with a single memory reference for common cases, and eliminates the page table synchronization overheads. We evaluate the proposed schemes with the real Xen hypervisor running on a full system simulator. The flat page tables improve a state-of-the-art 2D page walker with a page walk cache and nested TLB by 7%. The speculative shadow paging improves the same 2D page walker by 14%.

References

[1]
Microsoft Hyper-V Server. http://www.microsoft.com/hyper-v-server/en/us/default.aspx.
[2]
UltraSPARC III Cu Users' Manual.
[3]
AMD-V Nested Paging, 2008.
[4]
K. Adams and O. Agesen. A comparison of software and hardware techniques for x86 virtualization. In Proceedings of the 12th international conference on Architectural support for programming languages and operating systems (ASPLOS), 2006.
[5]
P. Barham, B. Dragovic, K. Fraser, S. Hand, T. Harris, A. Ho, R. Neugebauer, I. Pratt, and A. Warfield. Xen and the art of virtualization. In Proceedings of the 19th ACM Symposium on Operating Systems Principles (SOSP), 2003.
[6]
T. W. Barr, A. L. Cox, and S. Rixner. Translation caching: skip, don't walk (the page table). In Proceedings of the 37th annual international symposium on Computer architecture (ISCA), 2010.
[7]
T. W. Barr, A. L. Cox, and S. Rixner. SpecTLB: a mechanism for speculative address translation. In Proceeding of the 38th annual international symposium on Computer architecture (ISCA), 2011.
[8]
R. Bhargava, B. Serebrin, F. Spadini, and S. Manne. Accelerating two-dimensional page walks for virtualized systems. In Proceedings of the 13th international conference on Architectural support for programming languages and operating systems (ASPLOS), 2008.
[9]
A. Bhattacharjee, D. Lustig, and M. Martonosi. Shared last-level TLBs for chip multiprocessors. In proceedings of the 17th IEEE International Symposium on High Performance Computer Architecture (HPCA), 2011.
[10]
A. Bhattacharjee and M. Martonosi. Characterizing the TLB behavior of emerging parallel workloads on chip multiprocessors. In Proceedings of the 18th International Conference on Parallel Architectures and Compilation Techniques (PACT), 2009.
[11]
A. Bhattacharjee and M. Martonosi. Inter-core cooperative TLB for chip multiprocessors. In Proceedings of the 15th international conference on Architectural support for programming languages and operating systems (ASPLOS), 2010.
[12]
M. Butler. AMD "Bulldozer" Core - a new approach to multithreaded compute performance for maximum efficiency and throughput. HotChips, 2010.
[13]
S. Chaudhry, R. Cypher, M. Ekman, M. Karlsson, A. Landin, S. Yip, H. Zeffer, and M. Tremblay. Simultaneous speculative threading: a novel pipeline architecture implemented in sun's rock processor. In Proceedings of the 36th annual international symposium on Computer architecture (ISCA), 2009.
[14]
J. Huck and J. Hays. Architectural support for translation table management in large address space machines. In Proceedings of the 20th annual international symposium on computer architecture (ISCA), 1993.
[15]
B. L. Jacob and T. N. Mudge. A look at several memory management units, TLB-refill mechanisms, and page table organizations. In Proceedings of the 8th international conference on Architectural support for programming languages and operating systems (ASPLOS), 1998.
[16]
P. Magnusson, M. Christensson, J. Eskilson, D. Forsgren, G. Hallberg, J. Hogberg, F. Larsson, A. Moestedt, and B. Werner. Simics: A full system simulation platform. Computer, 35(2):50--58, feb 2002.
[17]
S. Srikantaiah and M. Kandemir. Synergistic TLBs for high performance address translation in chip multiprocessors. In Proceedings of the 43rd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO), 2010.
[18]
M. Talluri, M. D. Hill, and Y. A. Khalidi. A new page table for 64-bit address spaces. In Proceedings of the 15th ACM symposium on Operating systems principles (SOSP), 1995.
[19]
R. Uhlig, G. Neiger, D. Rodgers, A. L. Santoni, F. C. Martins, A. V. Anderson, S. M. Bennett, A. K?gi, F. H. Leung, and L. Smith. Intel virtualization technology. Computer, 38:48--56, 2005.
[20]
VMware. Performance Evaluation of AMD RVI Hardware Assist. Technical report, 2009.
[21]
VMware. Performance Evaluation of Intel EPT Hardware Assist. Technical report, 2009.
[22]
X. Wang, J. Zang, Z. Wang, Y. Luo, and X. Li. Selective hardware/software memory virtualization. In Proceedings of the 7th international conference on Virtual execution environments (VEE), 2011.

Cited By

View all
  • (2021)Compendia: reducing virtual-memory costs via selective densificationProceedings of the 2021 ACM SIGPLAN International Symposium on Memory Management10.1145/3459898.3463902(52-65)Online publication date: 22-Jun-2021
  • (2021)CacheInspectorACM Transactions on Architecture and Code Optimization10.1145/345737318:3(1-25)Online publication date: 8-Jun-2021
  • (2018)Principles of Secure Processor Architecture DesignSynthesis Lectures on Computer Architecture10.2200/S00864ED1V01Y201807CAC04513:3(1-173)Online publication date: 18-Oct-2018
  • Show More Cited By

Index Terms

  1. Revisiting hardware-assisted page walks for virtualized systems
Index terms have been assigned to the content through auto-classification.

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM SIGARCH Computer Architecture News
ACM SIGARCH Computer Architecture News  Volume 40, Issue 3
ISCA '12
June 2012
559 pages
ISSN:0163-5964
DOI:10.1145/2366231
Issue’s Table of Contents
  • cover image ACM Conferences
    ISCA '12: Proceedings of the 39th Annual International Symposium on Computer Architecture
    June 2012
    584 pages
    ISBN:9781450316422
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: 09 June 2012
Published in SIGARCH Volume 40, Issue 3

Check for updates

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)37
  • Downloads (Last 6 weeks)2
Reflects downloads up to 03 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2021)Compendia: reducing virtual-memory costs via selective densificationProceedings of the 2021 ACM SIGPLAN International Symposium on Memory Management10.1145/3459898.3463902(52-65)Online publication date: 22-Jun-2021
  • (2021)CacheInspectorACM Transactions on Architecture and Code Optimization10.1145/345737318:3(1-25)Online publication date: 8-Jun-2021
  • (2018)Principles of Secure Processor Architecture DesignSynthesis Lectures on Computer Architecture10.2200/S00864ED1V01Y201807CAC04513:3(1-173)Online publication date: 18-Oct-2018
  • (2017)MosaicProceedings of the 50th Annual IEEE/ACM International Symposium on Microarchitecture10.1145/3123939.3123975(136-150)Online publication date: 14-Oct-2017
  • (2016)Evaluating the impacts of hugepage on virtual machines评估大页对内存虚拟化的影响Science China Information Sciences10.1007/s11432-015-0764-760:1Online publication date: 29-Nov-2016
  • (2024)Direct Memory Translation for Virtualized CloudsProceedings of the 29th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 210.1145/3620665.3640358(287-304)Online publication date: 27-Apr-2024
  • (2023)Contiguitas: The Pursuit of Physical Memory Contiguity in DatacentersProceedings of the 50th Annual International Symposium on Computer Architecture10.1145/3579371.3589079(1-15)Online publication date: 17-Jun-2023
  • (2022)Parallel virtualized memory translation with nested elastic cuckoo page tablesProceedings of the 27th ACM International Conference on Architectural Support for Programming Languages and Operating Systems10.1145/3503222.3507720(84-97)Online publication date: 28-Feb-2022
  • (2021)Extending Intel PML for hardware-assisted working set size estimation of VMsProceedings of the 17th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments10.1145/3453933.3454018(111-124)Online publication date: 7-Apr-2021
  • (2021)(No)Compromis: paging virtualization is not a fatalityProceedings of the 17th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments10.1145/3453933.3454013(43-56)Online publication date: 7-Apr-2021
  • 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