providing performance guarantees to virtual machines using real-time scheduling
Post on 23-Jun-2015
457 Views
Preview:
DESCRIPTION
TRANSCRIPT
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 1/24
VHPC 2010VHPC 2010August 31August 31stst, Ischia, Italy, Ischia, Italy
Providing Performance Guarantees to Providing Performance Guarantees to Virtual Machines Virtual Machines using Real-Time using Real-Time
SchedulingScheduling
Tommaso CucinottaTommaso Cucinotta, Dhaval Giani,, Dhaval Giani,Dario Faggioli, Fabio ChecconiDario Faggioli, Fabio Checconi
Real-Time Systems LaboratoryReal-Time Systems LaboratoryScuola Superiore Sant'AnnaScuola Superiore Sant'Anna
Pisa, ItalyPisa, Italy
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 2/24
Introduction and MotivationsIntroduction and Motivations
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 3/24
IntroductionIntroduction
““Traditional” worlds of computingTraditional” worlds of computing General-Purpose Computing (GPC) and servers
Low-cost, low parallelism degree equipment Focused on mixing batch and interactive workloads
High-Performance Computing (HPC) High-cost, massively parallel and vector-based equipment Focused on batch computing, tightly coupled parallel tasks,
scientific applications
New trendsNew trends Affordable many-core systems also for GPC Cloud-Computing: world-level scalability and replicability
Use of high-performance hardware in CC applications Interest in mixing interactive/real-time and HPC workloads
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 4/24
IntroductionIntroduction
Virtualization is a key technologyVirtualization is a key technology For IaaS providers (Cloud Computing) For server consolidation
Physical HostPhysical Host
OSOS
. . .
Physical HostPhysical Host
OSOS
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 5/24
IntroductionIntroduction
Virtualization is a key technologyVirtualization is a key technology For IaaS providers (Cloud Computing) For server consolidation
Physical HostPhysical Host
OSOS
. . .
Physical HostPhysical Host
OSOS
Physical HostPhysical Host
VM/OSVM/OS
VM/OSVM/OS
. . .
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 6/24
Need for Performance IsolationNeed for Performance Isolation
Resource sharingResource sharing→ Temporal interference
Physical HostPhysical Host
VMVM
VMVM
VMVM
VMVM
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 7/24
Need for Performance IsolationNeed for Performance Isolation
Resource sharingResource sharing→ Temporal interference
Physical HostPhysical Host
VMVM
VMVM
VMVM
VMVM
VM Alone
~30ms
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 8/24
Need for Performance IsolationNeed for Performance Isolation
Resource sharingResource sharing→ Temporal interference
Physical HostPhysical Host
VMVM
VMVM
VMVM
VMVM
VM Alone
2 VMs
~30ms
~120ms
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 9/24
Possible SolutionPossible Solution
Hardware replication andHardware replication andstatic partitioningstatic partitioning Computing
Multi-core (1 core per VM) Networking
Multiple network adapters(1 network adapter per VM)
Multi-queue adapters
DrawbacksDrawbacks Limitation of flexibility Under-utilization of resources
e.g., with real-time/interactive workloads(cloud computing)
Physical HostPhysical Host
VMVM
VMVM
VMVM
VMVM
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 10/24
Possible SolutionPossible Solution
Another approachAnother approach Let multiple VMs use the same resources Use proper resource scheduling strategies
For exampleFor example Computing
Xen credit-based and SEDF schedulers Networking
QoS-aware protocols (IntServ, MPLS)
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 11/24
What is still missing ?What is still missing ?
Most approachesMost approaches Investigate on high-level load balancing techniques
Without the necessary care for fine-grain resource scheduling Focus on fairness among multiple VMs
Only a few worksOnly a few works Focus on providing precise QoS guarantees to VMs For example
Gupta et al., “[...] Performance Isolation […] in Xen” Cherkasova et al., “Comparison of the 3 CPU Schedulers in Xen”
Our focusOur focus Network performance isolation among concurrent VMs Virtualization with a host OS
Specifically, on Linux as host OS with KVM
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 12/24
Proposed ApproachProposed Approach
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 13/24
Proposed ApproachProposed Approach
Use of real-time CPU schedulingUse of real-time CPU scheduling As basic mechanism for isolating VMs concurrently
running on the same CPU and core
IRMOS Real-Time SchedulerIRMOS Real-Time Scheduler For the Linux kernel Provides hierarchical EDF/FP scheduling
EDF-based resource reservations– (Q, P): a budget Q is granted every period P– Both a guarantee and a limitation
FP scheduling within each EDF reservation Provides temporal isolation
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 14/24
What can we achieve ?What can we achieve ?(by CPU real-time scheduling)(by CPU real-time scheduling)
CPU real-time scheduling achievesCPU real-time scheduling achieves Performance isolation of
compute-intensive VMs Shown in other papers
What about network-intensive VMs ?
ProblemsProblems On the host OS (Linux)
network-intensive VMs impose a big interrupt workload– difficult to quantify and keep under control– steals CPU from reservations of other VMs
How can we fix this ?
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 15/24
Preliminary SolutionPreliminary Solution
Preliminary solution (subject of this paper)Preliminary solution (subject of this paper) Temporal isolation of VMs by real-time scheduling
Scheduling parameters tuned according to benchmarked figures– Reservation period set according to responsiveness requirements– Budget needed for computations, plus– Budget needed for sustaining network traffic
Budget over-provisioning According to the foreseen interference due to
network-intensive VMs
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 16/24
Experimental ResultsExperimental Results
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 17/24
Experimental ResultsExperimental Results(Q6600 @ 2.4 GHz, 1-Gbit Card)(Q6600 @ 2.4 GHz, 1-Gbit Card)
Achievable network throughput as a function of Achievable network throughput as a function of the CPU share reserved to the VMthe CPU share reserved to the VM Measured via iperf: almost linear, as expected
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 18/24
Experimental ResultsExperimental Results(2 VMs on the same core)(2 VMs on the same core)
Throughput as a function of its own budgetThroughput as a function of its own budget 13% drop when
own reservation is 35% (from ~300 Mbps to ~260 Mbps) and reservation of other VM increased from 10% to 40%
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 19/24
Experimental ResultsExperimental Results(2 VMs on the same core)(2 VMs on the same core)
Throughput as a function of its own budgetThroughput as a function of its own budget ~14% budget over-provisioning needed
for sustaining a ~300 Mbps throughput when reservation of other VM increased from 10% to 40%
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 20/24
Experimental ResultsExperimental Results(2 VMs on the same core)(2 VMs on the same core)
Throughput as a function of the budget reserved Throughput as a function of the budget reserved to the other interfering VMto the other interfering VM Drop due to compute-intensive interfering VM lower than
the one due to network-intensive interfering VM
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 21/24
Experimental ResultsExperimental Results(application-level benchmark)(application-level benchmark)
Download time for a 100 KB file from ApacheDownload time for a 100 KB file from Apache Periodic download requests every 20ms Response-times may be kept much more stable
by real-time scheduling
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 22/24
Conclusions and Future WorkConclusions and Future Work
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 23/24
Conclusions and Future WorkConclusions and Future Work
ConclusionsConclusions We showed how to achieve network
performance isolation by CPUreal-time scheduling
Technique to be used jointly withtraffic-shaping techniques
Planned Future WorkPlanned Future Work Experiment with PREEMPT_RT
IRQs handled in kernel threads Investigate on task-level isolation of network traffic of
different VMs (via real-time scheduling) Make KVM a QoS-aware hypervisor Investigate on the use of Adaptive Reservations
Tommaso Cucinotta – ReTiS Lab – Scuola Superiore Sant'Anna – Pisa – Italy 24/24
Thanks for your attention!Thanks for your attention!
Questions ?Questions ?
top related