01/22/09ICDCS20061 Load Unbalancing to Improve Performance under Autocorrelated Traffic Ningfang Mi College of William and Mary Joint work with Qi Zhang.

Slides:



Advertisements
Similar presentations
CPU Scheduling.
Advertisements

Scheduling Introduction to Scheduling
Scheduling Criteria CPU utilization – keep the CPU as busy as possible (from 0% to 100%) Throughput – # of processes that complete their execution per.
1 Size-Based Scheduling Policies with Inaccurate Scheduling Information Dong Lu *, Huanyuan Sheng +, Peter A. Dinda * * Prescience Lab, Dept. of Computer.
Load Balancing of Elastic Traffic in Heterogeneous Wireless Networks Abdulfetah Khalid, Samuli Aalto and Pasi Lassila
Chap 5 Process Scheduling. Basic Concepts Maximum CPU utilization obtained with multiprogramming CPU–I/O Burst Cycle – Process execution consists of a.
Chapter 5 CPU Scheduling. CPU Scheduling Topics: Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling.
Operating Systems CPU Scheduling. Agenda for Today What is Scheduler and its types Short-term scheduler Dispatcher Reasons for invoking scheduler Optimization.
1 Giuliano Casale, Eddy Z. Zhang, Evgenia Smirni {casale, eddy, Speaker: Giuliano Casale Numerical Methods for Structured Markov Chains,
Chapter 6: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 Chapter 6: CPU Scheduling Basic.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
U NIVERSITY OF M ASSACHUSETTS, A MHERST – Department of Computer Science Dynamic Resource Allocation for Shared Data Centers Using Online Measurements.
1 Introduction to Load Balancing: l Definition of Distributed systems. Collection of independent loosely coupled computing resources. l Load Balancing.
1 KPC-Toolbox Demonstration Eddy Zheng Zhang, Giuliano Casale, Evgenia Smirni Computer Science Department College of William & Mary.
5: CPU-Scheduling1 Jerry Breecher OPERATING SYSTEMS SCHEDULING.
Web Server Load Balancing/Scheduling Asima Silva Tim Sutherland.
Efficient Scheduling of Heterogeneous Continuous Queries Mohamed A. Sharaf Panos K. Chrysanthis Alexandros Labrinidis Kirk Pruhs Advanced Data Management.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
Chapter 5: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 Basic Concepts Maximum CPU utilization.
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Lecture 5 Operating Systems.
OPERATING SYSTEMS CPU SCHEDULING.  Introduction to CPU scheduling Introduction to CPU scheduling  Dispatcher Dispatcher  Terms used in CPU scheduling.
OPTIMAL SERVER PROVISIONING AND FREQUENCY ADJUSTMENT IN SERVER CLUSTERS Presented by: Xinying Zheng 09/13/ XINYING ZHENG, YU CAI MICHIGAN TECHNOLOGICAL.
ICS Principles of Operating Systems Lecture 5 - CPU Scheduling Prof. Nalini Venkatasubramanian
Silberschatz and Galvin  Operating System Concepts Module 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Lecture 7: CPU Scheduling Chapter 5.
1 11/29/2015 Chapter 6: CPU Scheduling l Basic Concepts l Scheduling Criteria l Scheduling Algorithms l Multiple-Processor Scheduling l Real-Time Scheduling.
© 2006 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice Injecting Realistic Burstiness to.
Chapter 5: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 Chapter 5: CPU Scheduling Basic.
1 CS.217 Operating System By Ajarn..Sutapart Sappajak,METC,MSIT Chapter 5 CPU Scheduling Slide 1 Chapter 5 CPU Scheduling.
NETWORK LOAD BALANCING (NLB) Microsoft Windows Server 2003 By Mohammad Alsawwaf ITEC452 Supervised By: Dr. Lee RADFORD UNIVERSITY.
Scheduling MPI Workflow Applications on Computing Grids Juemin Zhang, Waleed Meleis, and David Kaeli Electrical and Computer Engineering Department, Northeastern.
Lecture 4 CPU scheduling. Basic Concepts Single Process  one process at a time Maximum CPU utilization obtained with multiprogramming CPU idle :waiting.
CPU scheduling.  Single Process  one process at a time  Maximum CPU utilization obtained with multiprogramming  CPU idle :waiting time is wasted 2.
Basic Concepts Maximum CPU utilization obtained with multiprogramming
1 Lecture 5: CPU Scheduling Operating System Fall 2006.
CPU Scheduling Algorithms CSSE 332 Operating Systems Rose-Hulman Institute of Technology.
1 Chapter 5: CPU Scheduling. 2 Basic Concepts Scheduling Criteria Scheduling Algorithms.
Dynamic Resource Allocation for Shared Data Centers Using Online Measurements By- Abhishek Chandra, Weibo Gong and Prashant Shenoy.
Web Server Load Balancing/Scheduling
Dan C. Marinescu Office: HEC 439 B. Office hours: M, Wd 3 – 4:30 PM.
Web Server Load Balancing/Scheduling
Introduction to Load Balancing:
Chapter 5a: CPU Scheduling
Load Balancing and Data centers
Serve Assignment Policies
Regulating Data Flow in J2EE Application Server
Load Weighting and Priority
Lecture 24: Process Scheduling Examples and for Real-time Systems
Chapter 5: CPU Scheduling
Chapter 6: CPU Scheduling
Lecture 23: Process Scheduling for Interactive Systems
Chapter 5: CPU Scheduling
CS 143A - Principles of Operating Systems
CPU Scheduling G.Anuradha
Module 5: CPU Scheduling
3: CPU Scheduling Basic Concepts Scheduling Criteria
Chapter5: CPU Scheduling
Chapter 5: CPU Scheduling
Chapter 6: CPU Scheduling
CPU SCHEDULING.
Process Scheduling Decide which process should run and for how long
Chapter 5: CPU Scheduling
Lecture 2 Part 3 CPU Scheduling
Operating System , Fall 2000 EA101 W 9:00-10:00 F 9:00-11:00
Size-Based Scheduling Policies with Inaccurate Scheduling Information
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Presentation transcript:

01/22/09ICDCS20061 Load Unbalancing to Improve Performance under Autocorrelated Traffic Ningfang Mi College of William and Mary Joint work with Qi Zhang College of William and Mary Alma Riska Seagate Research Evgenia Smirni College of William and Mary

01/22/09ICDCS20062 Outline Motivation Motivation Our solution Our solution Conclusion and future work Conclusion and future work

01/22/09ICDCS20063 Clustered Servers Front-end Dispatcher Back-end Nodes Load Balancing Heavy tailed service time Round Robin (RR)‏ Round Robin (RR)‏ Random Random Join Shortest Queue (JSQ)‏ Join Shortest Queue (JSQ)‏ Join Shortest Weighted Queue (JSWQ)‏ Join Shortest Weighted Queue (JSWQ)‏ AdaptLoad AdaptLoad Autocorrelated Interarrival time Performance ?

01/22/09ICDCS20064 Why Considering Dependence? BAD performance effect BAD performance effect Higher ACF, higher dependence, worse performance Higher ACF, higher dependence

01/22/09ICDCS20065 Effect of ACF on Load Balancing Size-based Policies do NOT win! WHY?

01/22/09ICDCS20066 Possible Reason... What is ACF in Each Node? Load plus ACF. Load+ACF

01/22/09ICDCS20067 Outline Motivation Motivation Our solution Our solution Conclusion and future work Conclusion and future work

01/22/09ICDCS20068 Solution EqAL (Equally distribute work guided by Autocorrelation and Load)‏ EqAL (Equally distribute work guided by Autocorrelation and Load)‏ Balancing load Balancing load AdaptLoad AdaptLoad Balancing ACF Balancing ACF Move jobs from strongly correlated node to weakly correlated node Move jobs from strongly correlated node to weakly correlated node

01/22/09ICDCS20069 Review: AdaptLoad Each node only serves request with size falling in certain range Each node only serves request with size falling in certain range [s 0  0, s 1 ), [s 1, s 2 ), … [s N-1, s N  ∞)‏ [s 0  0, s 1 ), [s 1, s 2 ), … [s N-1, s N  ∞)‏ Self-adjust the size ranges by predicting the incoming workload based on the histogram of previous requests Self-adjust the size ranges by predicting the incoming workload based on the histogram of previous requests

01/22/09ICDCS Review: AdaptLoad Step 1: Build histogram on-line e.g., request sizes in sequential: …

01/22/09ICDCS Review: AdaptLoad Step 1: Build histogram on-line e.g., request sizes in sequential: …

01/22/09ICDCS Review: AdaptLoad Step 1: Build histogram on-line Step 2: At the end of monitoring window, find the boundaries to partition the total work (area) equally Server 1 Server 2 Server 3 Server 4 s0 s1 s2s3 s4

01/22/09ICDCS S_EQAL Server i increase p i of its work Corrective factor p i : ∑ p i = 0 negative (reducing work) vs. positive (increasing work)‏ p 1 =-R (pre-determined corrective constant)‏ p i using semi-geometric method to decide Server 1 Server 2 Server 3 Server 4 Server 1 Server 2 Server 3 Server 4

01/22/09ICDCS Performance of S_EQAL Service time: WorldCup 1998 Trace Service time: WorldCup 1998 Trace Inter-arrival time: MMPP(2)‏ Inter-arrival time: MMPP(2)‏ Same statistics moments as WorldCup Same statistics moments as WorldCup With short range dependence (SRD)‏ With short range dependence (SRD)‏ 4 servers in the cluster 4 servers in the cluster Average utilization per server: 62% Average utilization per server: 62%

01/22/09ICDCS Average Slowdown by R Best Slowdown

01/22/09ICDCS Average Response Time by R Best Response Time How to get optimal R ?

01/22/09ICDCS Dynamic Policy: D_EQAL Self adjust R Self adjust R R R is initialized as 0 RAdj Adjust R for a small value Adj at the end of each monitoring window The adjustment should improve both slowdown and response time If not, wrong direction p i Recalculate p i Set size boundaries

01/22/09ICDCS Performance of D_EQAL

01/22/09ICDCS Effectiveness of D_EQAL

01/22/09ICDCS Outline Motivation Motivation Our solution Our solution Conclusion and future work Conclusion and future work

01/22/09ICDCS Conclusion and Future Work Load balancing policy should also consider dependence structure in traffic. Load balancing policy should also consider dependence structure in traffic. D_EQAL balances the load and correlation D_EQAL balances the load and correlation Self-adaptive Self-adaptive effective effective Future work Future work More adaptive -- detect the change of dependence structure More adaptive -- detect the change of dependence structure Multiple classes - consider different priority Multiple classes - consider different priority

01/22/09ICDCS Thank you ! Questions?

01/22/09ICDCS Why Considering Dependence? BAD performance effect BAD performance effect Metric: Autocorrelation function (ACF) Metric: Autocorrelation function (ACF) Inter-arrival time of the i th request: X i Inter-arrival time of the i th request: X i The correlation between inter-arrival times with lag k The correlation between inter-arrival times with lag k x0x0 x1x1 x2x2 x3x3 x4x4 x5x5 x6x6 x7x7 x8x8 lag(1)‏ lag(2)‏ Higher ACF, higher dependence, worse performance

01/22/09ICDCS Examples of ACF

01/22/09ICDCS Effect of ACF on a Single Server

01/22/09ICDCS Load Balancing Policies None priori knowledge None priori knowledge Round Robin (RR)‏ Round Robin (RR)‏ Random Random Size-based Size-based Join Shortest Queue (JSQ)‏ Join Shortest Queue (JSQ)‏ Join Shortest Weighted Queue (JSWQ)‏ Join Shortest Weighted Queue (JSWQ)‏ AdaptLoad AdaptLoad … Proved optimal performance Proved optimal performance

01/22/09ICDCS Inside Each Server

01/22/09ICDCS Inside Each Server Too Bias How to get optimal R ?