Upload
tcucinotta
View
457
Download
1
Tags:
Embed Size (px)
DESCRIPTION
In this paper we tackle the problem of providing Quality of Serviceguarantees to virtualized applications, focusing on computing and networkingguarantees. We propose a mechanism for providing temporal isolation based ona CPU real time scheduling strategy. This allows not only to have control overthe individual virtual machine throughput, but also on the activation latency andresponse-time by which virtualized software components react to external events.We show experimental results gathered on a real system validating the approach.
Citation preview
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 ?