180 likes | 303 Views
Quantifying the Benefits of Resource Multiplexing in On-Demand Data Centers. Pawan Goyal IBM Almaden, San Jose. Abhishek Chandra Prashant Shenoy UMASS Amherst. Motivation. On-demand Data Centers Server farms Rent computing and storage resources to applications
E N D
Quantifying the Benefits of Resource Multiplexing in On-Demand Data Centers Pawan Goyal IBM Almaden, San Jose Abhishek Chandra Prashant Shenoy UMASS Amherst
Motivation • On-demand Data Centers • Server farms • Rent computing and storage resources to applications • Revenue for meeting application workload levels • Goals: • Satisfy dynamically changing application requirements • Maximize resource utilization of the platform • Robustness against “Slashdot” effects
Dynamic Resource Allocation • Existing techniques: • Oceano [Appleby01], HP Utility Data Center [Rolia00], MUSE [Chase01], COD [Doyle02], SHARC [Uragaon02] • Differ in allocation policies and mechanisms • Common features: • Periodically re-allocate resources among applications • Estimate workloads for near future • Statistical multiplexing of resources • Question: Which techniques work best and when?
On-demand Allocation: Practical Issues • How often and how fine should the re-allocation be done? • How well can the application requirements be estimated? • How much “head room” should be allowed to absorb transient loads? • Do large number of customers lead to better statistical multiplexing?
Talk Outline • Motivation • System Model and Metrics • Performance Study • Conclusions and Future Work
System Model • Cluster of servers • Homogeneous pool of resources • No constraints on application placement • Time granularity (Δt): Period of re-allocation • E.g.: re-allocate once every minute, hour, day • Space granularity (Δs): Resource allocation unit • E.g: re-allocate partial/whole server, server group
Optimal Resource Allocation • Infinitesimally small allocation granularity • Allocates precise amount of resource • No resource wastage Ropt Resource Allocation Time
Δt Δs Practical Resource Allocation • Allocation done periodically and in fixed quanta • Fixed resource allocation for next period • Clairvoyant scheme: Predict peak application requirements for the next allocation period Resource Allocation Time
Capacity Overhead Rpract ρ Ropt Resource Allocation Time
Performance Study • Workload: • 3 e-commerce traces • 24-hour long
Effect of Allocation Granularity Space granularity Time granularity • Fine time scale with reasonably fine resource unit desirable
Effect of Prediction Inaccuracy • Fine allocation is better even with inaccurate prediction
Effect of Overprovisioning • Finer allocation achieves same “head room” with less overhead
Effect of Number of Customers • Large number of customers provide more opportunity for statistical multiplexing
Data Center Architectures • Dedicated • Allocation of whole servers • Typical reallocation in order of 30 minutes • Shared • Fractional server resources • Reallocation in seconds or minutes • Fast Reallocation • Reserved server pools, remote booting • Reallocation in a few minutes
Implications and Opportunities • Cost of re-allocation • Partial server: ~1 syscall/min • Full server: Rebooting, disk scrubbing, etc. • Virtual machines: Low cost of reallocation with encapsulation • Prediction: • Work-conserving scheduler at fine time-scales • Accurate prediction possible at minutes, hours
Conclusions and Future Work • Dynamic Resource Allocation for data centers • Fine allocation granularity desirable • Even with inaccurate prediction • To achieve more “head room” • Large number of customers lead to higher multiplexing benefits • Future Work: • Effect of affinity, placement constraints • Re-allocation overhead • Stability of resource allocation