SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Downloaden Sie, um offline zu lesen
Hwanju Kim12, Sangwook Kim1, Jinkyu Jeong1,
and Joonwon Lee1
Sungkyunkwan University1
University of Cambridge2
The 10th ACM SIGPLAN/SIGOPS International Conference on Virtual
Execution Environments (VEE)
Salt Lake City, Utah, March 1-2 2014
Virtual Asymmetric Multiprocessor
for Interactive Performance of
Consolidated Desktops
Virtual Desktop Infrastructure (VDI)
• Desktop provisioning
Dedicated workstations
VM VM
VM
VM
VM
- Resource underutilization
- High management cost
- High maintenance cost
- Energy wastage by idle desktops
- Low level of security
+ High resource utilization
+ Low management cost
(flexible HW/SW provisioning)
+ Low maintenance cost
(dynamic HW/SW upgrade)
+ Energy savings by consolidation
+ High level of security
(centralized data containment)
VM-based shared environments
2/20
Hardware
Virtual Machine Monitor (VMM)
Desktop Consolidation
• Distinctive workload characteristics
• High consolidation ratio
• 4:1~15:1 [VMware VDI], 6~8 per core [Botelho’08]
• Ever-increasing h/w parallelism (multi-core)
• Multi-layer mixed workloads
• Diverse user-dependent workloads
• Multi-tasking (interactive+background) in a consolidated VM
VM VM VM VM VM
VM VM VM VM
Mixed
Interactive
CPU-intensive Parallel
3/20
[VMware VDI] Enabling your end-to end virtualization solution. (http://www.vmware.com/solutions/partners/alliances/hp-vmware-customers.html)
[Botelho’08] Virtual machines per server, a viable metric for hardware selection? (http://itknowledgeexchange.techtarget.com/server-farm/virtual-
machines-per-server-a-viable-metric-for-hardware-selection/)
8 threads
(Core i7)
16 threads
(Nehalem EX)
Motivation
• Limited support for interactive performance
• Existing VMM schedulers give an illusion of
symmetric multiprocessor (SMP) to each VM
• Proportional share-based scheduler used for commodity
VMM (e.g., Xen, KVM, VMware)
pCPU pCPU pCPU pCPU
vCPU
vCPU
vCPU
vCPU
vCPU
vCPU
vCPU
vCPU
vCPU
vCPU
VM
Interactive Background
Time
shared
Virtual SMP (vSMP)
pCPU pCPU pCPU pCPU
vCPU
vCPU
vCPU
vCPU
vCPU
vCPU
vCPU
VMInteractive
Background
Virtual AMP (vAMP)
vCPU
Equally contended
regardless of
user interactions
Proposal
The size of vCPU =
The amount of CPU shares
Fast vCPUs Slow vCPUs
4/20
Goal
• Issue
• Accurately identifying a set of interactive vCPUs
• Design goals
• VMM-level approach
• Identifying interactive vCPUs unobtrusively using simple VMM
extension
• No share exchange
• Distributing CPU shares asymmetrically to sibling vCPUs within per-
VM share budget for performance isolation
• Optional guest OS extension
• Optionally installing lightweight guest OS extension for further
improvement of interactive performance
5/20
Workload Classification
• Previous methods
• Time-quanta based classification
[Kim et al., VEE’09]
• “Interactive workloads typically show short time quantum”
6/20
+ Clear classification between
I/O-bound and CPU-bound tasks
- Modern interactive workloads
show mixed behaviors
- Multithreaded CPU-bound job
shows short time quanta due to
inter-thread communication
[Kim et al., VEE’09] Task-aware virtual machine scheduling for I/O performance
Workload Classification
• Previous methods
• OS technique
• User I/O-driven IPC tracking [Zheng et al., SIGMETRICS’10]
+ Identifying a set of tasks involved in a user interaction (I/O)
- Relying on various OS-level IPC structures
 E.g., socket, pipe, signal
7/20
X server Terminal Firefox
IPC IPC
User I/O An interactive task group
[Zheng et al., SIGMETRICS’10] RSIO: automatic user interaction detection and scheduling
Workload Classification
• Challenges
• Time-quanta based scheme cannot accurately classify
modern desktop workloads
• VMM cannot access OS-internal IPC structure
• Key idea
• Tracking background tasks
• Identifying “background CPU load” before “user I/O”
• Interactive CPU load is typically initiated by user I/O
• VMM can unobtrusively monitor user I/O & per-task CPU load
8/20
• Proposed scheme
Workload Classification
9/20
VM
InteractiveBackground
QEMU/
SPICE
vCPU1 vCPU2
vCPU3 vCPU4
KVM Hypervisor
vAMP
Scheduler
Task Load Monitor
Background task information
Time
Interactive
phase
User input
T1
T2
T1
T2
CPUCPUCPUCPU
Background
Background
Task Load Monitor
• User I/O monitoring => I/O virtualization
• Per-task CPU load monitoring => task tracking technique
[Jones et al., USENIX’06]
[Jones et al., USENIX’06] Antfarm: Tracking processes in a virtual machine environment
Virtual Asymmetric Multiprocessor
• vAMP
• Dynamically adjusting CPU shares of a vCPU
according to its currently hosting task
1. Maintaining
per-task CPU load
during pre-I/O period
 Pre-I/O period is
set to shorter than
general user think time
(1 second by default)
2. Tagging tasks that
have generated
nontrivial CPU loads
as background tasks
 Threshold can be
set to filter daemon tasks
that possibly serve
interactive workloads
3. Dynamically adjusting
vCPU’s shares based on
weight ratio
(e.g., background :
non-background
= 1:5)
4. Providing vAMP
during an interactive
episode
 An interactive episode
is restarted when another
user I/O occurs or is
finished if maximum time is
elapsed without user I/O
10/20
Multimedia Workload Filtering
• Exceptional case
• Multimedia workloads (e.g., video playback)
• Can be misidentified as background workloads since it
continuously generate CPU load without user input
• Key observation
• Multimedia workloads generally accompany audio
output [Zheng et al., SIGMETRICS’10, Kim et al., MMSys’12]
• Solution
• Tracking tasks that access a virtual audio device
• Excluding audio access in an interrupt context
• Checking audio Interrupt Service Register (ISR)
11/20[Zheng et al., SIGMETRICS’10] RSIO: automatic user interaction detection and scheduling
[Kim et al., MMSys’12] Scheduler support for video-oriented multimedia on client-side virtualization
Limitation
• An intrinsic limitation of VMM-only approach
• A vAMP-oblivious OS scheduler
• Agnostic about underlying vAMP (i.e., all vCPUs are identical)
• Possibly multiplexing interactive and background tasks on the
same vCPU
• A slow vCPU has higher scheduling latency
• “Frequent multiplexing” might offset the benefit of vAMP
Example: A scheduling trace during Google Chrome launch
“vAMP might less effective if multiplexing frequently happens”
 Guest OS can be enlightened to mitigate the adverse effect of multiplexing
Background task Non-background task
12/20
Guest OS Extension
• Guest OS extension for vAMP
• OS enlightenment about vAMP
• To avoid ineffective multiplexing of interactive and
background tasks on the same vCPU  Isolation
• Design principles
• Keeping VMM OS-independent
• Optional extension for further enhancement of interactive
performance
• Keeping extension OS-independent
• No reliance on specific OS functionality
• Isolating tasks on separate CPUs is a general interface of
commodity OSes (e.g., modifying CPU affinity)
• Small kernel changes for low maintenance cost
13/20
Guest OS Extension
• Linux extension for vAMP
• User-level vAMP-daemon
• Isolating background tasks exposed by VMM from non-
background tasks
• Small kernel changes that expose background tasks to user
VM
vAMP scheduler
VMM
vCPU vCPU
Task load monitor
Background
tasks
T1, T2
vAMP-daemon
Kernel
User
Input
interface
Cpuset
interface
T1 T2
T3 T4
Procfs
interface
1. Event-
driven
2. Read
3. Isolate
Isolation procedure:
1. Initially dedicating nr_fast_vcpus to interactive
tasks (i.e., non-background tasks)
2. Periodically increasing nr_fast_vcpus when
fast vCPUs become fully utilized
(also periodically checking the end of an interactive
episode  stop isolation)
Default nr_fast_vcpus = 1 due to the low
thread-level parallelism of interactive workloads
[Blake et al., ISCA’10]
14/20
[Blake et al., ISCA’10] Evolution of thread-level parallelism in desktop applications
Experimental Setup
• S/W
• Linux KVM 3.0.0
• QEMU 1.0: handles I/O requests from guest OS
• H/W
• Intel Xeon X5550 2.67Ghz quad-core processor
• 8 pCPUs are available w/ hyperthreading enabled
• 8GB of DDR3 DRAM
• Measurement methodology
• Spiceplay: measures client-side performance
• Snapshot-based record/replay
• Robust replay for varying loads
• Similar to VNCPlay [Zeldovich et al., USENIX’05] and Deskbench [Rhee et al.,
IM’09]
• Extension on the SPICE remote desktop client
15/20[Zeldovich et al., USENIX’05] Interactive performance measurement with VNCplay
[Rhee et al., IM’09] DeskBench: Flexible virtual desktop benchmarking toolkit
Evaluation
• Application launch
• Background workload
• Data mining application (freqmine) with 8 threads
• Weight ratio (background : non-background)
• vAMP(L)=1:3, vAMP(M)=1:9, vAMP(H)=1:18
8-vCPU VM 8-vCPU VM
freqminefreqmine
App
launch
Remote
desktop
client
0.00
0.20
0.40
0.60
0.80
1.00
1.20
Impress Firefox Chrome Gimp
Normalizedaveragelaunchtime
Interactive applications
Baseline
vAMP(L)
vAMP(M)
vAMP(H)
vAMP(L) w/ Ext
vAMP(M) w/ Ext
vAMP(H) w/ Ext
vAMP improves launch performance by 7~40% High weight ratio is ineffective because of
negative effect of multiplexing
Guest OS extension achieves further improvement
of interactive performance by up to 70%
Why did Gimp show significant improvement
even without the guest OS extension?
8-pCPU
16/20
Evaluation
• Application launch
• Chrome vs. Gimp (without guest OS extension)
Chrome (Web browser)
Gimp (Image editing program)
 Many threads are cooperatively scheduled in a fine-grained manner
 A single thread dominantly involves computation with little communication
Background task Non-background task
Background task Non-background task
17/20
Evaluation
• Media player
• VLC media player
• 1920x800 HD video with 23.976 frames per second (FPS)
• Mult: multimedia workload filtering
8-vCPU VM 8-vCPU VM
freqminefreqmine
Media
player
8-pCPU
18/20
0
5
10
15
20
25
30
Averageframespersecond(FPS)
Baseline
vAMP(L) w/o Mult
vAMP(L)
vAMP(M)
vAMP(H)
vAMP(L) w/ Ext
vAMP(M) w/ Ext
vAMP(H) w/ Ext
Without multimedia workload filtering,
VLC is misidentified as a background task
vAMP improves playback quality by up to 22.3 FPS,
but high weight ratio still degrades the quality
Guest OS extension achieves 23.8 FPS
Conclusion
• vAMP
• Dynamically varying vCPU performance based on
their hosting workloads
• A feasible method of improving interactive performance
• Assisted by a simple guest OS extension
• Isolation of different types of workloads enhances the
effectiveness of vAMP
• Future work
• Collaboration of VMM and OSes for vAMP
• Standard & well-defined API
19/20
Thank You!
• Questions and comments
• Source code
• https://github.com/VirtualAMP
20/20

Weitere ähnliche Inhalte

Was ist angesagt?

Survey on virtual machine placement techniques in cloud computing environment
Survey on virtual machine placement techniques in cloud computing environmentSurvey on virtual machine placement techniques in cloud computing environment
Survey on virtual machine placement techniques in cloud computing environment
ijccsa
 
Black-box and Gray-box Strategies for Virtual Machine Migration
Black-box and Gray-box Strategies for Virtual Machine MigrationBlack-box and Gray-box Strategies for Virtual Machine Migration
Black-box and Gray-box Strategies for Virtual Machine Migration
elliando dias
 
vSphere APIs for performance monitoring
vSphere APIs for performance monitoringvSphere APIs for performance monitoring
vSphere APIs for performance monitoring
Alan Renouf
 

Was ist angesagt? (20)

Live VM Migration
Live VM MigrationLive VM Migration
Live VM Migration
 
Openstack vm live migration
Openstack vm live migrationOpenstack vm live migration
Openstack vm live migration
 
3. CPU virtualization and scheduling
3. CPU virtualization and scheduling3. CPU virtualization and scheduling
3. CPU virtualization and scheduling
 
Virtual Machine Migration Techniques in Cloud Environment: A Survey
Virtual Machine Migration Techniques in Cloud Environment: A SurveyVirtual Machine Migration Techniques in Cloud Environment: A Survey
Virtual Machine Migration Techniques in Cloud Environment: A Survey
 
Scheduler Support for Video-oriented Multimedia on Client-side Virtualization
Scheduler Support for Video-oriented Multimedia on Client-side VirtualizationScheduler Support for Video-oriented Multimedia on Client-side Virtualization
Scheduler Support for Video-oriented Multimedia on Client-side Virtualization
 
Survey on virtual machine placement techniques in cloud computing environment
Survey on virtual machine placement techniques in cloud computing environmentSurvey on virtual machine placement techniques in cloud computing environment
Survey on virtual machine placement techniques in cloud computing environment
 
Vm migration techniques
Vm migration techniquesVm migration techniques
Vm migration techniques
 
Challenges in Cloud Computing – VM Migration
Challenges in Cloud Computing – VM MigrationChallenges in Cloud Computing – VM Migration
Challenges in Cloud Computing – VM Migration
 
cloud computing: Vm migration
cloud computing: Vm migrationcloud computing: Vm migration
cloud computing: Vm migration
 
Live virtual machine migration based on future prediction of resource require...
Live virtual machine migration based on future prediction of resource require...Live virtual machine migration based on future prediction of resource require...
Live virtual machine migration based on future prediction of resource require...
 
Memory Virtualization
Memory VirtualizationMemory Virtualization
Memory Virtualization
 
Black-box and Gray-box Strategies for Virtual Machine Migration
Black-box and Gray-box Strategies for Virtual Machine MigrationBlack-box and Gray-box Strategies for Virtual Machine Migration
Black-box and Gray-box Strategies for Virtual Machine Migration
 
Presentation v mware performance overview
Presentation   v mware performance overviewPresentation   v mware performance overview
Presentation v mware performance overview
 
vSphere APIs for performance monitoring
vSphere APIs for performance monitoringvSphere APIs for performance monitoring
vSphere APIs for performance monitoring
 
Virtual Machine Migration & Hypervisors
Virtual Machine Migration & HypervisorsVirtual Machine Migration & Hypervisors
Virtual Machine Migration & Hypervisors
 
Advanced performance troubleshooting using esxtop
Advanced performance troubleshooting using esxtopAdvanced performance troubleshooting using esxtop
Advanced performance troubleshooting using esxtop
 
Nimbus project
Nimbus projectNimbus project
Nimbus project
 
Building a KVM-based Hypervisor for a Heterogeneous System Architecture Compl...
Building a KVM-based Hypervisor for a Heterogeneous System Architecture Compl...Building a KVM-based Hypervisor for a Heterogeneous System Architecture Compl...
Building a KVM-based Hypervisor for a Heterogeneous System Architecture Compl...
 
Windows Server 2012 Virtualization: Notes from the Field
Windows Server 2012 Virtualization: Notes from the FieldWindows Server 2012 Virtualization: Notes from the Field
Windows Server 2012 Virtualization: Notes from the Field
 
Lec 9-os-review
Lec 9-os-reviewLec 9-os-review
Lec 9-os-review
 

Andere mochten auch

Andere mochten auch (20)

Request-Oriented Durable Write Caching for Application Performance (USENIX AT...
Request-Oriented Durable Write Caching for Application Performance (USENIX AT...Request-Oriented Durable Write Caching for Application Performance (USENIX AT...
Request-Oriented Durable Write Caching for Application Performance (USENIX AT...
 
Enlightening the I/O Path: A Holistic Approach for Application Performance (U...
Enlightening the I/O Path: A Holistic Approach for Application Performance (U...Enlightening the I/O Path: A Holistic Approach for Application Performance (U...
Enlightening the I/O Path: A Holistic Approach for Application Performance (U...
 
Be Always Beta
Be Always BetaBe Always Beta
Be Always Beta
 
Cultura 6 mariam
Cultura  6 mariamCultura  6 mariam
Cultura 6 mariam
 
Arte del renacimiento
Arte del renacimientoArte del renacimiento
Arte del renacimiento
 
Repertorios cognoscitivos de atencion, percepcion y memoria
Repertorios cognoscitivos de atencion, percepcion y memoriaRepertorios cognoscitivos de atencion, percepcion y memoria
Repertorios cognoscitivos de atencion, percepcion y memoria
 
SocialSciencePres
SocialSciencePresSocialSciencePres
SocialSciencePres
 
Barra de menús
Barra de menúsBarra de menús
Barra de menús
 
Final
FinalFinal
Final
 
Hey bread 사업계획서
Hey bread 사업계획서Hey bread 사업계획서
Hey bread 사업계획서
 
Html
HtmlHtml
Html
 
What you wanted to know about MySQL, but could not find using inernal instrum...
What you wanted to know about MySQL, but could not find using inernal instrum...What you wanted to know about MySQL, but could not find using inernal instrum...
What you wanted to know about MySQL, but could not find using inernal instrum...
 
MySQL Group Replication
MySQL Group ReplicationMySQL Group Replication
MySQL Group Replication
 
How Booking.com avoids and deals with replication lag
How Booking.com avoids and deals with replication lagHow Booking.com avoids and deals with replication lag
How Booking.com avoids and deals with replication lag
 
Driving Connectivity in the Scottish Islands: Droneways and Airmasts
Driving Connectivity in the Scottish Islands: Droneways and AirmastsDriving Connectivity in the Scottish Islands: Droneways and Airmasts
Driving Connectivity in the Scottish Islands: Droneways and Airmasts
 
An Introduction to IoT: Connectivity & Case Studies
An Introduction to IoT: Connectivity & Case StudiesAn Introduction to IoT: Connectivity & Case Studies
An Introduction to IoT: Connectivity & Case Studies
 
5G Network Architecture and Design
5G Network Architecture and Design5G Network Architecture and Design
5G Network Architecture and Design
 
3GPP Standards for the Internet-of-Things
3GPP Standards for the Internet-of-Things3GPP Standards for the Internet-of-Things
3GPP Standards for the Internet-of-Things
 
Creating HTML Pages
Creating HTML PagesCreating HTML Pages
Creating HTML Pages
 
Top Insights from SaaStr by Leading Enterprise Software Experts
Top Insights from SaaStr by Leading Enterprise Software ExpertsTop Insights from SaaStr by Leading Enterprise Software Experts
Top Insights from SaaStr by Leading Enterprise Software Experts
 

Ähnlich wie Virtual Asymmetric Multiprocessor for Interactive Performance of Consolidated Desktops (ACM VEE 2014)

ClickOS_EE80777777777777777777777777777.pptx
ClickOS_EE80777777777777777777777777777.pptxClickOS_EE80777777777777777777777777777.pptx
ClickOS_EE80777777777777777777777777777.pptx
BiHongPhc
 
Virtual Machine Performance
Virtual Machine PerformanceVirtual Machine Performance
Virtual Machine Performance
Qian Lin
 
Desktop to Cloud Transformation Planning
Desktop to Cloud Transformation PlanningDesktop to Cloud Transformation Planning
Desktop to Cloud Transformation Planning
Phearin Sok
 
AIST Super Green Cloud: lessons learned from the operation and the performanc...
AIST Super Green Cloud: lessons learned from the operation and the performanc...AIST Super Green Cloud: lessons learned from the operation and the performanc...
AIST Super Green Cloud: lessons learned from the operation and the performanc...
Ryousei Takano
 
Know More About Rational Performance - Snehamoy K
Know More About Rational Performance - Snehamoy KKnow More About Rational Performance - Snehamoy K
Know More About Rational Performance - Snehamoy K
Roopa Nadkarni
 
3 know more_about_rational_performance_tester_8-1-snehamoy_k
3 know more_about_rational_performance_tester_8-1-snehamoy_k3 know more_about_rational_performance_tester_8-1-snehamoy_k
3 know more_about_rational_performance_tester_8-1-snehamoy_k
IBM
 

Ähnlich wie Virtual Asymmetric Multiprocessor for Interactive Performance of Consolidated Desktops (ACM VEE 2014) (20)

ClickOS_EE80777777777777777777777777777.pptx
ClickOS_EE80777777777777777777777777777.pptxClickOS_EE80777777777777777777777777777.pptx
ClickOS_EE80777777777777777777777777777.pptx
 
Virtual Machine Performance
Virtual Machine PerformanceVirtual Machine Performance
Virtual Machine Performance
 
Boyan Krosnov - Building a software-defined cloud - our experience
Boyan Krosnov - Building a software-defined cloud - our experienceBoyan Krosnov - Building a software-defined cloud - our experience
Boyan Krosnov - Building a software-defined cloud - our experience
 
Desktop to Cloud Transformation Planning
Desktop to Cloud Transformation PlanningDesktop to Cloud Transformation Planning
Desktop to Cloud Transformation Planning
 
AIST Super Green Cloud: lessons learned from the operation and the performanc...
AIST Super Green Cloud: lessons learned from the operation and the performanc...AIST Super Green Cloud: lessons learned from the operation and the performanc...
AIST Super Green Cloud: lessons learned from the operation and the performanc...
 
Designing Scalable Applications
Designing Scalable ApplicationsDesigning Scalable Applications
Designing Scalable Applications
 
Performance Tuning Oracle Weblogic Server 12c
Performance Tuning Oracle Weblogic Server 12cPerformance Tuning Oracle Weblogic Server 12c
Performance Tuning Oracle Weblogic Server 12c
 
VMworld 2013: How SRP Delivers More Than Power to Their Customers
VMworld 2013: How SRP Delivers More Than Power to Their Customers VMworld 2013: How SRP Delivers More Than Power to Their Customers
VMworld 2013: How SRP Delivers More Than Power to Their Customers
 
Performance comparison between Linux Containers and Virtual Machines
Performance comparison between Linux Containers and Virtual MachinesPerformance comparison between Linux Containers and Virtual Machines
Performance comparison between Linux Containers and Virtual Machines
 
Cloudsim & Green Cloud
Cloudsim & Green CloudCloudsim & Green Cloud
Cloudsim & Green Cloud
 
Know More About Rational Performance - Snehamoy K
Know More About Rational Performance - Snehamoy KKnow More About Rational Performance - Snehamoy K
Know More About Rational Performance - Snehamoy K
 
3 know more_about_rational_performance_tester_8-1-snehamoy_k
3 know more_about_rational_performance_tester_8-1-snehamoy_k3 know more_about_rational_performance_tester_8-1-snehamoy_k
3 know more_about_rational_performance_tester_8-1-snehamoy_k
 
Tuning VIM performance for unikernels
Tuning VIM performance for unikernelsTuning VIM performance for unikernels
Tuning VIM performance for unikernels
 
Cloudsim & greencloud
Cloudsim & greencloud Cloudsim & greencloud
Cloudsim & greencloud
 
Cloud-computing.ppt
Cloud-computing.pptCloud-computing.ppt
Cloud-computing.ppt
 
JITServerTalk JCON World 2023.pdf
JITServerTalk JCON World 2023.pdfJITServerTalk JCON World 2023.pdf
JITServerTalk JCON World 2023.pdf
 
IBM Notes in the Cloud
IBM Notes in the CloudIBM Notes in the Cloud
IBM Notes in the Cloud
 
VMworld 2013: A Technical Deep Dive on VMware Horizon View 5.2 Performance an...
VMworld 2013: A Technical Deep Dive on VMware Horizon View 5.2 Performance an...VMworld 2013: A Technical Deep Dive on VMware Horizon View 5.2 Performance an...
VMworld 2013: A Technical Deep Dive on VMware Horizon View 5.2 Performance an...
 
Evolution of unix environments and the road to faster deployments
Evolution of unix environments and the road to faster deploymentsEvolution of unix environments and the road to faster deployments
Evolution of unix environments and the road to faster deployments
 
VMworld 2013: Silent Killer: How Latency Destroys Performance...And What to D...
VMworld 2013: Silent Killer: How Latency Destroys Performance...And What to D...VMworld 2013: Silent Killer: How Latency Destroys Performance...And What to D...
VMworld 2013: Silent Killer: How Latency Destroys Performance...And What to D...
 

Kürzlich hochgeladen

CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
anilsa9823
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 

Kürzlich hochgeladen (20)

CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 

Virtual Asymmetric Multiprocessor for Interactive Performance of Consolidated Desktops (ACM VEE 2014)

  • 1. Hwanju Kim12, Sangwook Kim1, Jinkyu Jeong1, and Joonwon Lee1 Sungkyunkwan University1 University of Cambridge2 The 10th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments (VEE) Salt Lake City, Utah, March 1-2 2014 Virtual Asymmetric Multiprocessor for Interactive Performance of Consolidated Desktops
  • 2. Virtual Desktop Infrastructure (VDI) • Desktop provisioning Dedicated workstations VM VM VM VM VM - Resource underutilization - High management cost - High maintenance cost - Energy wastage by idle desktops - Low level of security + High resource utilization + Low management cost (flexible HW/SW provisioning) + Low maintenance cost (dynamic HW/SW upgrade) + Energy savings by consolidation + High level of security (centralized data containment) VM-based shared environments 2/20
  • 3. Hardware Virtual Machine Monitor (VMM) Desktop Consolidation • Distinctive workload characteristics • High consolidation ratio • 4:1~15:1 [VMware VDI], 6~8 per core [Botelho’08] • Ever-increasing h/w parallelism (multi-core) • Multi-layer mixed workloads • Diverse user-dependent workloads • Multi-tasking (interactive+background) in a consolidated VM VM VM VM VM VM VM VM VM VM Mixed Interactive CPU-intensive Parallel 3/20 [VMware VDI] Enabling your end-to end virtualization solution. (http://www.vmware.com/solutions/partners/alliances/hp-vmware-customers.html) [Botelho’08] Virtual machines per server, a viable metric for hardware selection? (http://itknowledgeexchange.techtarget.com/server-farm/virtual- machines-per-server-a-viable-metric-for-hardware-selection/) 8 threads (Core i7) 16 threads (Nehalem EX)
  • 4. Motivation • Limited support for interactive performance • Existing VMM schedulers give an illusion of symmetric multiprocessor (SMP) to each VM • Proportional share-based scheduler used for commodity VMM (e.g., Xen, KVM, VMware) pCPU pCPU pCPU pCPU vCPU vCPU vCPU vCPU vCPU vCPU vCPU vCPU vCPU vCPU VM Interactive Background Time shared Virtual SMP (vSMP) pCPU pCPU pCPU pCPU vCPU vCPU vCPU vCPU vCPU vCPU vCPU VMInteractive Background Virtual AMP (vAMP) vCPU Equally contended regardless of user interactions Proposal The size of vCPU = The amount of CPU shares Fast vCPUs Slow vCPUs 4/20
  • 5. Goal • Issue • Accurately identifying a set of interactive vCPUs • Design goals • VMM-level approach • Identifying interactive vCPUs unobtrusively using simple VMM extension • No share exchange • Distributing CPU shares asymmetrically to sibling vCPUs within per- VM share budget for performance isolation • Optional guest OS extension • Optionally installing lightweight guest OS extension for further improvement of interactive performance 5/20
  • 6. Workload Classification • Previous methods • Time-quanta based classification [Kim et al., VEE’09] • “Interactive workloads typically show short time quantum” 6/20 + Clear classification between I/O-bound and CPU-bound tasks - Modern interactive workloads show mixed behaviors - Multithreaded CPU-bound job shows short time quanta due to inter-thread communication [Kim et al., VEE’09] Task-aware virtual machine scheduling for I/O performance
  • 7. Workload Classification • Previous methods • OS technique • User I/O-driven IPC tracking [Zheng et al., SIGMETRICS’10] + Identifying a set of tasks involved in a user interaction (I/O) - Relying on various OS-level IPC structures  E.g., socket, pipe, signal 7/20 X server Terminal Firefox IPC IPC User I/O An interactive task group [Zheng et al., SIGMETRICS’10] RSIO: automatic user interaction detection and scheduling
  • 8. Workload Classification • Challenges • Time-quanta based scheme cannot accurately classify modern desktop workloads • VMM cannot access OS-internal IPC structure • Key idea • Tracking background tasks • Identifying “background CPU load” before “user I/O” • Interactive CPU load is typically initiated by user I/O • VMM can unobtrusively monitor user I/O & per-task CPU load 8/20
  • 9. • Proposed scheme Workload Classification 9/20 VM InteractiveBackground QEMU/ SPICE vCPU1 vCPU2 vCPU3 vCPU4 KVM Hypervisor vAMP Scheduler Task Load Monitor Background task information Time Interactive phase User input T1 T2 T1 T2 CPUCPUCPUCPU Background Background Task Load Monitor • User I/O monitoring => I/O virtualization • Per-task CPU load monitoring => task tracking technique [Jones et al., USENIX’06] [Jones et al., USENIX’06] Antfarm: Tracking processes in a virtual machine environment
  • 10. Virtual Asymmetric Multiprocessor • vAMP • Dynamically adjusting CPU shares of a vCPU according to its currently hosting task 1. Maintaining per-task CPU load during pre-I/O period  Pre-I/O period is set to shorter than general user think time (1 second by default) 2. Tagging tasks that have generated nontrivial CPU loads as background tasks  Threshold can be set to filter daemon tasks that possibly serve interactive workloads 3. Dynamically adjusting vCPU’s shares based on weight ratio (e.g., background : non-background = 1:5) 4. Providing vAMP during an interactive episode  An interactive episode is restarted when another user I/O occurs or is finished if maximum time is elapsed without user I/O 10/20
  • 11. Multimedia Workload Filtering • Exceptional case • Multimedia workloads (e.g., video playback) • Can be misidentified as background workloads since it continuously generate CPU load without user input • Key observation • Multimedia workloads generally accompany audio output [Zheng et al., SIGMETRICS’10, Kim et al., MMSys’12] • Solution • Tracking tasks that access a virtual audio device • Excluding audio access in an interrupt context • Checking audio Interrupt Service Register (ISR) 11/20[Zheng et al., SIGMETRICS’10] RSIO: automatic user interaction detection and scheduling [Kim et al., MMSys’12] Scheduler support for video-oriented multimedia on client-side virtualization
  • 12. Limitation • An intrinsic limitation of VMM-only approach • A vAMP-oblivious OS scheduler • Agnostic about underlying vAMP (i.e., all vCPUs are identical) • Possibly multiplexing interactive and background tasks on the same vCPU • A slow vCPU has higher scheduling latency • “Frequent multiplexing” might offset the benefit of vAMP Example: A scheduling trace during Google Chrome launch “vAMP might less effective if multiplexing frequently happens”  Guest OS can be enlightened to mitigate the adverse effect of multiplexing Background task Non-background task 12/20
  • 13. Guest OS Extension • Guest OS extension for vAMP • OS enlightenment about vAMP • To avoid ineffective multiplexing of interactive and background tasks on the same vCPU  Isolation • Design principles • Keeping VMM OS-independent • Optional extension for further enhancement of interactive performance • Keeping extension OS-independent • No reliance on specific OS functionality • Isolating tasks on separate CPUs is a general interface of commodity OSes (e.g., modifying CPU affinity) • Small kernel changes for low maintenance cost 13/20
  • 14. Guest OS Extension • Linux extension for vAMP • User-level vAMP-daemon • Isolating background tasks exposed by VMM from non- background tasks • Small kernel changes that expose background tasks to user VM vAMP scheduler VMM vCPU vCPU Task load monitor Background tasks T1, T2 vAMP-daemon Kernel User Input interface Cpuset interface T1 T2 T3 T4 Procfs interface 1. Event- driven 2. Read 3. Isolate Isolation procedure: 1. Initially dedicating nr_fast_vcpus to interactive tasks (i.e., non-background tasks) 2. Periodically increasing nr_fast_vcpus when fast vCPUs become fully utilized (also periodically checking the end of an interactive episode  stop isolation) Default nr_fast_vcpus = 1 due to the low thread-level parallelism of interactive workloads [Blake et al., ISCA’10] 14/20 [Blake et al., ISCA’10] Evolution of thread-level parallelism in desktop applications
  • 15. Experimental Setup • S/W • Linux KVM 3.0.0 • QEMU 1.0: handles I/O requests from guest OS • H/W • Intel Xeon X5550 2.67Ghz quad-core processor • 8 pCPUs are available w/ hyperthreading enabled • 8GB of DDR3 DRAM • Measurement methodology • Spiceplay: measures client-side performance • Snapshot-based record/replay • Robust replay for varying loads • Similar to VNCPlay [Zeldovich et al., USENIX’05] and Deskbench [Rhee et al., IM’09] • Extension on the SPICE remote desktop client 15/20[Zeldovich et al., USENIX’05] Interactive performance measurement with VNCplay [Rhee et al., IM’09] DeskBench: Flexible virtual desktop benchmarking toolkit
  • 16. Evaluation • Application launch • Background workload • Data mining application (freqmine) with 8 threads • Weight ratio (background : non-background) • vAMP(L)=1:3, vAMP(M)=1:9, vAMP(H)=1:18 8-vCPU VM 8-vCPU VM freqminefreqmine App launch Remote desktop client 0.00 0.20 0.40 0.60 0.80 1.00 1.20 Impress Firefox Chrome Gimp Normalizedaveragelaunchtime Interactive applications Baseline vAMP(L) vAMP(M) vAMP(H) vAMP(L) w/ Ext vAMP(M) w/ Ext vAMP(H) w/ Ext vAMP improves launch performance by 7~40% High weight ratio is ineffective because of negative effect of multiplexing Guest OS extension achieves further improvement of interactive performance by up to 70% Why did Gimp show significant improvement even without the guest OS extension? 8-pCPU 16/20
  • 17. Evaluation • Application launch • Chrome vs. Gimp (without guest OS extension) Chrome (Web browser) Gimp (Image editing program)  Many threads are cooperatively scheduled in a fine-grained manner  A single thread dominantly involves computation with little communication Background task Non-background task Background task Non-background task 17/20
  • 18. Evaluation • Media player • VLC media player • 1920x800 HD video with 23.976 frames per second (FPS) • Mult: multimedia workload filtering 8-vCPU VM 8-vCPU VM freqminefreqmine Media player 8-pCPU 18/20 0 5 10 15 20 25 30 Averageframespersecond(FPS) Baseline vAMP(L) w/o Mult vAMP(L) vAMP(M) vAMP(H) vAMP(L) w/ Ext vAMP(M) w/ Ext vAMP(H) w/ Ext Without multimedia workload filtering, VLC is misidentified as a background task vAMP improves playback quality by up to 22.3 FPS, but high weight ratio still degrades the quality Guest OS extension achieves 23.8 FPS
  • 19. Conclusion • vAMP • Dynamically varying vCPU performance based on their hosting workloads • A feasible method of improving interactive performance • Assisted by a simple guest OS extension • Isolation of different types of workloads enhances the effectiveness of vAMP • Future work • Collaboration of VMM and OSes for vAMP • Standard & well-defined API 19/20
  • 20. Thank You! • Questions and comments • Source code • https://github.com/VirtualAMP 20/20