Successfully reported this slideshow.
Your SlideShare is downloading. ×

Optimizing Virtual Machines Using Hybrid Virtualization

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Loading in …3
×

Check these out next

1 of 17 Ad

More Related Content

Slideshows for you (20)

Similar to Optimizing Virtual Machines Using Hybrid Virtualization (20)

Advertisement

More from Qian Lin (13)

Recently uploaded (20)

Advertisement

Optimizing Virtual Machines Using Hybrid Virtualization

  1. 1. SAC 2011 -- OS track Optimizing Virtual Machines Using Hybrid Virtualization Qian Lin Shanghai Jiao Tong University
  2. 2. Agenda Background: system virtualization Motivation Design and optimization Evaluation Summary
  3. 3. Background: system virtualization Goal: consolidate and maximize H/W platform resources Way: multiple VMs run concurrently on a single machine
  4. 4. Motivation Current virtualization types Software-only full virtualization  Dynamic binary translation technique  For cross-platform development and debug only H/W assisted full virtualization  Leverage H/W virtualization extension of CPU architecture  Superior in CPU and memory virtualization, but not in I/O Paravirtualization  Ring compression → compromised strategy  Exist much overhead in the execution of system call  Efficient in I/O event handling
  5. 5. Motivation (cont.) Reduce overhead incurred by virtualization Optimize to reduce the execution redundancy Hybrid approach to merge advantages 64-bit HVM is at par or faster than 64-bit PVM Paravirtualization is helpful for enhancing HVM  Simplicity, performance, efficiency, scalability, correctness
  6. 6. Design Type I: Hybrid PVM Type II: Hybrid HVM Port paravirtualized OS Local optimize HVM Common design goal: into HVM container using PV strategy Run paravirtualized OS in the HVM container. Add HAP support Import PV components
  7. 7. VM optimization (1) Abridge the system call path PVM: Kernel/User space share the same ring Hybrid VM: Rings are assigned normally
  8. 8. VM optimization (2) Shadow page table → complex and dull
  9. 9. VM optimization (2) H/W assisted paging → accelerated!
  10. 10. VM optimization (3) Local APIC is not used by Hybrid VM Linux EOI (End of Interrupt) does not cause VM exit. Use Xen API (event channel) MSI/MSI-X handling is paravirtualized in Hybrid VM MSI Mask/Unmask does not cause VM exit No changes are made to device drivers I/O intensive loads expose those virtualization overheads About 12K interrupts/per sec. (per VCPU) with 10 GbE CPU utilization is >3% higher per VCPU on ordinary HVM Linux As number of VCPUs increases, overhead increases
  11. 11. Micro performance (1) LMBench - Processor Overhead contributed by fundamental operations Factor: system call
  12. 12. Micro performance (2) LMBench - Context switch Inter processes, kernel/user mode, interrupt Factor: address translation, TLB flush
  13. 13. Micro performance (3) LMBench - Local communication latency Response time of I/O request Factor: address translation
  14. 14. Macro performance: CPU intensive Kernel compile benchmark Factor: system call, context switch, address translation
  15. 15. Macro performance: I/O intensive CPU utilization within Ethernet workload Factor: interrupt handling
  16. 16. Summary Minimize virtualization overheads and utilize new/advanced H/W features in VMs as much as possible for cloud computing Take both superiority of H/W assisted virtualization and paravirtualization Open source implementation of prototype Also release to the Xen community
  17. 17. Thank you! Trusted Computing Group @ SJTU http://202.120.40.124/index.php/Project_TC

×