Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2451116.2451163acmconferencesArticle/Chapter ViewAbstractPublication PagesasplosConference Proceedingsconference-collections
research-article

Efficient virtualization on embedded power architecture® platforms

Published: 16 March 2013 Publication History

Abstract

Power Architecture® processors are popular and widespread on embedded systems, and such platforms are increasingly being used to run virtual machines. While the Power Architecture meets the Popek-and-Goldberg virtualization requirements for traditional trap-and-emulate style virtualization, the performance overhead of virtualization remains high. For example, workloads exhibiting a large amount of kernel activity typically show 3-5x slowdowns over bare-metal.
Recent additions to the Linux kernel contain guest and host side paravirtual extensions for Power Architecture platforms. While these extensions improve performance significantly, they are guest-specific, guest-intrusive, and cover only a subset of all possible virtualization optimizations.
We present a set of host-side optimizations that achieve comparable performance to the aforementioned paravirtual extensions, on an unmodified guest. Our optimizations are based on adaptive in-place binary translation. Unlike the paravirtual approach, our solution is guest neutral. We implement our ideas in a prototype based on Qemu/KVM. After our modifications, KVM can boot an unmodified Linux guest around 2.5x faster. We contrast our optimization approach with previous similar binary translation based approaches for the x86 architecture; in our experience, each architecture presents a unique set of challenges and optimization opportunities.

References

[1]
QorIQ Qonverge BSC 9131 RDB for Femtocell base station development. http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=BSC9131RDB (as on Jan 10, 2013).
[2]
Freescale Semiconductor. Hardware and software assists in virtualization, Rev 0, Aug. 2009.
[3]
Freescale Semiconductor. Freescale's embedded hypervisor for QorIQTM. P4 Series Communications Platform, Rev 1, Oct. 2008.
[4]
K. Adams and O. Agesen. A comparison of software and hardware techniques for x86 virtualization. In ASPLOS '06.
[5]
O. Agesen, J. Mattson, R. Rugina, and J. Sheldon. Software techniques for avoiding hardware virtualization exits. In USENIX ATC '12.
[6]
V. Bala, E. Duesterwald, and S. Banerjia. Dynamo: a transparent dynamic optimization system. ACM SIGPLAN Notices, 35 (5): 1--12, 2000.
[7]
S. Bansal and A. Aiken. Binary translation using peephole superoptimizers. In OSDI '08.
[8]
R. Bhargava, B. Serebrin, F. Spadini, and S. Manne. Accelerating two-dimensional page walks for virtualized systems. In ASPLOS '08.
[9]
D. Bruening. Efficient, Transparent and Comprehensive Runtime Code Manipulation. PhD thesis, Massachusetts Institute of Technology, 2004.
[10]
Unix benchmark suite()}unixbenchbyte-unixbench: A Unix benchmark suite. byte-unixbench: A Unix benchmark suite. http://code.google.com/p/byte-unixbench (as on Jan 10, 2013).
[11]
G. Heiser. The role of virtualization in embedded systems. 2008.
[12]
A. Klaiber. The technology behind Crusoe processors. Technical report, Transmeta Corp., January 2000. URL http://www.transmeta.com.
[13]
M PowerPC: About exit timing()}kvm_ppc_exittimingsKVM PowerPC: About exit timing. KVM PowerPC: About exit timing. http:///www.linux-kvm.org/page/PowerPC_Exittimings (as on Jan 10, 2013).
[14]
L. McVoy and C. Staelin. lmbench: portable tools for performance analysis. In USENIX ATC '96.
[15]
N. Nethercote and J. Seward. Valgrind: a framework for heavyweight dynamic binary instrumentation. SIGPLAN Not., 42 (6): 89--100, June 2007.
[16]
P1010 and P1014 low-power communication processors. P1010 and p1014 low-power communication processors. http://cache.freescale.com/files/32bit/doc/fact_sheet/QP1010FS.pdf (as on Jan 10, 2013).
[17]
P1023 Product Summary. P1023 product summary. http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=P1023 (as on Jan 10, 2013).
[18]
Paravirtual Extensions to Linux for Power Architecture Virtualization. Paravirtual extensions to Linux for Power Architecture virtualization. http://svn.dd-wrt.com/browser/src/linux/pb42/linux-3.2/Documentation/virtual/kvm/ppc-pv.txt?rev=18112 (as on Jan 10, 2013).
[19]
G. J. Popek and R. P. Goldberg. Formal requirements for virtualizable third generation architectures. Commun. ACM, 17 (7): 412--421, 1974. ISSN 0001-0782.
[20]
Power ISA Version 2.06 Revision B. Power ISA Version 2.06 Revision B. http://www.power.org/resources/downloads/PowerISA_V2.06_PUBLIC.pdf (as on Jan 10, 2013).
[21]
Qemu: open source processor emulator. Qemu: open source processor emulator. http://fabrice.bellard.free.fr/qemu/ (as on Jan 10, 2013).
[22]
S. Yoder. KVM on Embedded Power Architecture Platforms. http://www.linux-kvm.org/wiki/imagesc/c2/2011-forum-embedded-power.pdf (as on Jan 10, 2013).

Cited By

View all
  • (2020)More with Less – Deriving More Translation Rules with Less Training Data for DBTs Using Parameterization2020 53rd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO)10.1109/MICRO50266.2020.00043(415-426)Online publication date: Oct-2020
  • (2019)Unleashing the power of learningProceedings of the 2019 USENIX Conference on Usenix Annual Technical Conference10.5555/3358807.3358815(77-89)Online publication date: 10-Jul-2019
  • (2015)HERMESProceedings of the 13th Annual IEEE/ACM International Symposium on Code Generation and Optimization10.5555/2738600.2738631(246-256)Online publication date: 7-Feb-2015
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ASPLOS '13: Proceedings of the eighteenth international conference on Architectural support for programming languages and operating systems
March 2013
574 pages
ISBN:9781450318709
DOI:10.1145/2451116
  • cover image ACM SIGPLAN Notices
    ACM SIGPLAN Notices  Volume 48, Issue 4
    ASPLOS '13
    April 2013
    540 pages
    ISSN:0362-1340
    EISSN:1558-1160
    DOI:10.1145/2499368
    Issue’s Table of Contents
  • cover image ACM SIGARCH Computer Architecture News
    ACM SIGARCH Computer Architecture News  Volume 41, Issue 1
    ASPLOS '13
    March 2013
    540 pages
    ISSN:0163-5964
    DOI:10.1145/2490301
    Issue’s Table of Contents
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]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 16 March 2013

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. adaptive data mirroring
  2. adaptive page resizing
  3. architecture design
  4. code patching
  5. dynamic binary translation
  6. in-place binary translation
  7. power architecture platforms
  8. read/write tracing
  9. tlb
  10. virtual machine monitor
  11. virtualization

Qualifiers

  • Research-article

Conference

ASPLOS '13

Acceptance Rates

Overall Acceptance Rate 535 of 2,713 submissions, 20%

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 10 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2020)More with Less – Deriving More Translation Rules with Less Training Data for DBTs Using Parameterization2020 53rd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO)10.1109/MICRO50266.2020.00043(415-426)Online publication date: Oct-2020
  • (2019)Unleashing the power of learningProceedings of the 2019 USENIX Conference on Usenix Annual Technical Conference10.5555/3358807.3358815(77-89)Online publication date: 10-Jul-2019
  • (2015)HERMESProceedings of the 13th Annual IEEE/ACM International Symposium on Code Generation and Optimization10.5555/2738600.2738631(246-256)Online publication date: 7-Feb-2015
  • (2015)Hermes: A fast cross-ISA binary translator with post-optimization2015 IEEE/ACM International Symposium on Code Generation and Optimization (CGO)10.1109/CGO.2015.7054204(246-256)Online publication date: Feb-2015
  • (2016)A Survey of Mobile Device VirtualizationACM Computing Surveys10.1145/289716449:1(1-36)Online publication date: 5-Apr-2016

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