190 likes | 347 Views
Quantifying and Improving I/O Predictability in Virtualized Systems. Cheng Li, Inigo Goiri , Abhishek Bhattacharjee , Ricardo Bianchini, Thu D. Nguyen. Problem. IaaS cloud providers (e.g., Amazon EC2) Virtualization to consolidate virtual machines Performance may vary with consolidation
E N D
Quantifying and Improving I/O Predictability in Virtualized Systems Cheng Li, InigoGoiri, AbhishekBhattacharjee, Ricardo Bianchini, Thu D. Nguyen
Problem • IaaS cloud providers (e.g., Amazon EC2) • Virtualization to consolidate virtual machines • Performance may vary with consolidation • Interference and variable resource allocation • Inconsistent and unpredictable performance VM VM VM VM VM VM Physical Machine Physical Machine Physical Machine
Our solution • Virtualized systems with predictable performance • Consolidation should not affect throughput, response time • Predictability is different than isolation • Assignment of resources to VMs must be fixed at all times • New class of predictable-performance service • This paper: storage I/O predictability in VirtualFence
Why? • Many users desire predictable performance • Streaming and gaming apps • Performance tuning, debugging, diagnosis • Proper app design (e.g., workflows, pipelines) • Predictability benefits providers • Can charge for exactly the resources used • Direct relationship between resources and performance • Predictability benefits users • Can implement apps that need predictability • Predictable cloud costs
Outline • Motivation • Quantifying unpredictability • VirtualFence • Evaluation • Conclusions
How to measure unpredictability? • Performance deviation • Relative change in performance • Stand-alone (PI) vs. co-located (PD) • Average throughput or average response time
Quantifying performance deviation • Studied deviation across VMMs, storage devices, etc • I/O performance deviation is endemic • Some main sources of deviation: • Resource allocation policy (e.g., work-conserving) • Device-specific characteristics (e.g., SSD erasure) • More findings in Rutgers DCS-TR-697
Outline • Motivation • Quantifying unpredictability • VirtualFence • Evaluation • Conclusions
VirtualFence • Predictable-performance storage system for Xen Dom0 VirtualFence VM Disk Scheduler Virtual Device Driver Kernel SSD cache VMM
VirtualFence techniques • Non-work-conserving time partitioning • Each VM is assigned a fixed amount of I/O time • Avoids interleaving requests from multiple VMs Stand-alone scenario Co-located scenario … VM1 ` ` ` VM1 ` ` ` T1 T2 T3 T4 T5 T6 T7 T8 … VM1 VM2 VM3 VM4 VM1 VM2 VM3 VM4 T1 T2 T3 T4 T5 T6 T7 T8
VirtualFence techniques • Small SSD cache in front of the HDD • Targets the HDD seek at the beginning of each time slot • Non-work-conserving space partitioning • Fixed size SSD cache per VM • Guarantees each VM’s cache space share Users can purchase multiple time and space slots! VM 1 VM 2 VM 3 VM 4 SSD cache co-located: SSD cache stand-alone: VM 1
Outline • Motivation • Quantifying unpredictability • VirtualFence • Evaluation • Conclusions
Experimental environment • Aggressive consolidation (80%utilization) • Filebench workloads • Webserver: read-only • Mailserver: mixed reads/sync writes • Physical machine: 4-core Xeon, 1 SSD, 1 HDD (22ms) VM3 (24%) VM1( 8%) VM2 (24%) VM4 (24%)
VirtualFence evaluation • VirtualFence benefits • Contribution of each technique • Impact of the workload • Absolute performance and VirtualFence overheads • Performance vs. deviation tradeoff
VirtualFence results • VirtualFence combines all three techniques • Approaches the deviation of SSD+TP at lower cost VirtualFence SSD+TP
Impact of number of time slots • More slots decrease deviation, degrade performance • Ideal: fewest slots that allow enough consolidation
Impact of time slot length • Longer slots decrease deviation, degrade performance • Ideal: shortest slot that produces enough predictability
Conclusions • Consolidation leads to unpredictability • VirtualFence • Software/hardware solution • Improves I/O predictability significantly • Provider selects best predictability vs. performance tradeoff • User rents as many slots as needed for good performance
Q&A Quantifying and Improving I/O Predictability in Virtualized Systems Cheng Li, InigoGoiri, AbhishekBhattacharjee, Ricardo Bianchini, Thu D. Nguyen