Kevin Ross, UCSC, September 2005 1 Service Network Engineering Resource Allocation and Optimization Kevin Ross Information Systems & Technology Management.

Slides:



Advertisements
Similar presentations
CPU Scheduling.
Advertisements

© 2004, D. J. Foreman 1 Scheduling & Dispatching.
Scheduling Criteria CPU utilization – keep the CPU as busy as possible (from 0% to 100%) Throughput – # of processes that complete their execution per.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Chapter 5: CPU Scheduling.
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 19 Scheduling IV.
Operating Systems Chapter 6
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.
Power Cost Reduction in Distributed Data Centers Yuan Yao University of Southern California 1 Joint work: Longbo Huang, Abhishek Sharma, LeanaGolubchik.
CS 311 – Lecture 23 Outline Kernel – Process subsystem Process scheduling Scheduling algorithms User mode and kernel mode Lecture 231CS Operating.
Scheduling in Batch Systems
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.
Chapter 5-CPU Scheduling
5: CPU-Scheduling1 Jerry Breecher OPERATING SYSTEMS SCHEDULING.
02/11/2004CSCI 315 Operating Systems Design1 CPU Scheduling Algorithms Notice: The slides for this lecture have been largely based on those accompanying.
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.
Chapter 6: CPU Scheduling
Computer Architecture and Operating Systems CS 3230: Operating System Section Lecture OS-3 CPU Scheduling Department of Computer Science and Software Engineering.
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Lecture 5 Operating Systems.
CS212: OPERATING SYSTEM Lecture 3: Process Scheduling 1.
OPERATING SYSTEMS CPU SCHEDULING.  Introduction to CPU scheduling Introduction to CPU scheduling  Dispatcher Dispatcher  Terms used in CPU scheduling.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
Scheduling. Alternating Sequence of CPU And I/O Bursts.
Silberschatz and Galvin  Operating System Concepts Module 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor.
CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Thread Scheduling Multiple-Processor Scheduling Operating Systems Examples Algorithm.
Incentive-Oriented Downlink Scheduling for Wireless Networks with Real-Time and Non-Real-Time Flows I-Hong Hou, Jing Zhu, and Rath Vannithamby.
Competitive Queue Policies for Differentiated Services Seminar in Packet Networks1 Competitive Queue Policies for Differentiated Services William.
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 Chapter 5: CPU Scheduling Basic Concepts Scheduling Criteria.
Chapter 5: Process Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Basic Concepts Maximum CPU utilization can be obtained.
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.
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.
OPERATING SYSTEMS CS 3530 Summer 2014 Systems and Models Chapter 03.
Silberschatz and Galvin  Operating System Concepts Module 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor.
1 CS.217 Operating System By Ajarn..Sutapart Sappajak,METC,MSIT Chapter 5 CPU Scheduling Slide 1 Chapter 5 CPU Scheduling.
6.1 CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation.
Lecture Topics: 11/15 CPU scheduling: –Scheduling goals and algorithms.
Energy Optimal Control for Time Varying Wireless Networks Michael J. Neely University of Southern California
1 CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling.
Chapter 4 CPU Scheduling. 2 Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation.
Lecture 4 CPU scheduling. Basic Concepts Single Process  one process at a time Maximum CPU utilization obtained with multiprogramming CPU idle :waiting.
CPU Scheduling G.Anuradha Reference : Galvin. CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time.
CPU scheduling.  Single Process  one process at a time  Maximum CPU utilization obtained with multiprogramming  CPU idle :waiting time is wasted 2.
1 Module 5: Scheduling CPU Scheduling Scheduling Algorithms Reading: Chapter
Basic Concepts Maximum CPU utilization obtained with multiprogramming
1 Lecture 5: CPU Scheduling Operating System Fall 2006.
Chapter 5: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 5: CPU Scheduling Basic Concepts Scheduling Criteria.
1 Chapter 5: CPU Scheduling. 2 Basic Concepts Scheduling Criteria Scheduling Algorithms.
Chapter 6: CPU Scheduling (Cont’d)
Dan C. Marinescu Office: HEC 439 B. Office hours: M, Wd 3 – 4:30 PM.
Load Balancing and It’s Related Works in Cloud Computing
Operating Systems Processes Scheduling.
Chapter 6: CPU Scheduling
Chapter 6: CPU Scheduling
CPU Scheduling G.Anuradha
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
3: CPU Scheduling Basic Concepts Scheduling Criteria
Chapter5: CPU Scheduling
Chapter 6: CPU Scheduling
CPU SCHEDULING.
Chapter 6: CPU Scheduling
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
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Presentation transcript:

Kevin Ross, UCSC, September Service Network Engineering Resource Allocation and Optimization Kevin Ross Information Systems & Technology Management University of California, Santa Cruz September 2005

Kevin Ross, UCSC, September Service Networks X1X1 X2X2 XqXq XQXQ … …

Kevin Ross, UCSC, September Service Networks Source: pics/news/data.jpg Autonomous Computing (Utility Computing / Data Center Management /Grid Commputing) Call Center Management Utility Providers

Kevin Ross, UCSC, September Example: Human Resource Optimization Queues correspond to various jobs/requests A large pool of people with –Varying skill levels (speed of service) –Different costs (distance from job, rate of pay) Each configuration of people corresponds to a unique service mode We consider selecting the service mode, given –Constraints on resources –Current backlog of tasks to complete

Kevin Ross, UCSC, September Typical Scenarios … thousands of jobs / employees … interacting service requirements … deadlines … different costs for service … jobs of different priorities … we could hire more support … all the numbers are uncertain Service Network Engineering

Kevin Ross, UCSC, September Summary of Research Issues Allocating resources when there are –Large number of job types (classes) –Large number of service configurations –Dynamic demand levels –Interactive service constraints –Priority jobs –Variable costs

Kevin Ross, UCSC, September Key Findings Proved –a large class of scheduling algorithms are throughput-maximizing for service networks under very general conditions –we can optimize for quality of service performance –these algorithms scale well –we can implement the control in a distributed way Work in progress –Tradeoff analysis: quality of service / load balancing / costs / throughput –Pricing schemes and value of resources

Kevin Ross, UCSC, September Base Case: Parallel Queue networks X = workload vector S = service rate vector S S = set of all possible service mode vectors Dynamically select service mode S from S - based on workload X X1X1 X2X2 XqXq XQXQ … … SqSq S2S2 S1S1 SQSQ … … ……

Kevin Ross, UCSC, September Service Networks X1X1 X2X2 XqXq XQXQ … …

Kevin Ross, UCSC, September Service Networks X1X1 X2X2 XqXq XQXQ … …

Kevin Ross, UCSC, September Service Networks X1X1 X2X2 XqXq XQXQ … …

Kevin Ross, UCSC, September Service Networks X1X1 X2X2 XqXq XQXQ … …

Kevin Ross, UCSC, September Service Networks X1X1 X2X2 XqXq XQXQ … …

Kevin Ross, UCSC, September What about networks? Serving one queue creates work in another Known as feedback and forwarding

Kevin Ross, UCSC, September Network of Queues Feedback and forwarding can be modeled with a similar framework

Kevin Ross, UCSC, September Network of Queues Transfer matrix T

Kevin Ross, UCSC, September Network of Queues Arrivals = Departures

Kevin Ross, UCSC, September Network of Queues Service = Departures - Arrivals = -

Kevin Ross, UCSC, September Core Model: Example X = backlog vector S = service rate vector X1X1 X2X2 X3X3 X5X5 X4X S Q=5 (# queues)

Kevin Ross, UCSC, September Core Model: Example X = backlog vector S = service rate vector X1X1 X2X2 X3X3 X5X5 X4X S Q=5 (# queues)

Kevin Ross, UCSC, September Analytical and Practical Issues Performance –Throughput –Quality of service –Load balancing –Cost minimization Robustness –Assumptions required –Unreliable information –Adaptive to variation –Switching times Complexity –Huge number of configurations

Kevin Ross, UCSC, September System Dynamics AIM: Rate Stability: Notation: Q-vectors X1X1 X2X2 X(t-1) A(t) - S(t) X(t)

Kevin Ross, UCSC, September R What arrival rates can we consider? 11 22 S1S1 Stability Region R :  vectors which could be served S2S2 S3S3 S4S4 R = {  :  0 with   m = 1 } S6S6 S5S5

Kevin Ross, UCSC, September Some Types of Algorithms Offline Know the arrival rates in advance Randomized / Round Robin Online Arrival rate is not known Adapt to Arrivals and Buffer backlog Two main classes: –Batch Schedules –Projective Cone Schedules

Kevin Ross, UCSC, September Projective Cone Scheduling (PCS) Algorithms PCS: When the workload vector is X, choose the service configuration S that maximizes S max over S in S For a fixed matrix B that is positive diagonal

Kevin Ross, UCSC, September PCS Algorithm: Example X1X1 X2X2 X3X3 X5X5 X4X S1S1 S2S2 S3S3 S4S X = = BX B = max

Kevin Ross, UCSC, September When X is in cone C, choose S = S(C) corresponding to that cone The set of workload vectors X for which S* maximizes is a convex cone X1X1 X2X2 S4S4 S3S3 S2S2 S1S1 X PCS as a Cone Algorithm

Kevin Ross, UCSC, September Workload Drift in Cones Workload drifts between cones over time X1X1 X2X2 S4S4 S3S3 S2S2 S1S1

Kevin Ross, UCSC, September What are the Cones? S1S1 S2S2 S1S1 S2S2 S3S3

Kevin Ross, UCSC, September Cone Boundaries: Varying B S1S1 S2S2 S3S3

Kevin Ross, UCSC, September In Higher Dimensions S3S3 S2S2 S1S1 S4S4

Kevin Ross, UCSC, September Performance Comparison on Simple Network

Kevin Ross, UCSC, September Performance: Varying Parameters in B

Kevin Ross, UCSC, September Key Observation: Neighborhood Structure If arrivals are bounded, workload can only jump to “neighboring cones” X1X1 X1X1 S4S4 S3S3 S2S2 S1S1 X(t)

Kevin Ross, UCSC, September Local PCS: When the workload vector is X and previous service was S -, choose the service configuration S that maximizes max over S in N(S - ) X1X1 X1X1 S4S4 S3S3 S2S2 S1S1 Local PCS X

Kevin Ross, UCSC, September S6S6 S2S2 S3S3 S4S4 S5S5 S7S7 S1S1 S8S8 S6S6 S5S5 S4S4 S3S3 S8S8 S2S2 S7S7 S1S1 Local PCS: Graph Representation

Kevin Ross, UCSC, September Local PCS S = Permutation Vectors For crossbar switch

Kevin Ross, UCSC, September Pricing and Resource Valuation Pricing scenarios: 1.We could add a new mode to the set of modes for a price 2.Each service mode has a different price associated with it 3.It costs to shift modes When should we pay and how much?

Kevin Ross, UCSC, September Sketch: Adding new modes A new mode creates a new stability region R 11 S1S1 S2S2 S3S3 S4S4 S6S6 S5S5 S new

Kevin Ross, UCSC, September Sketch: Differential pricing We have price-based stability frontiers R 11 S1S1 S2S2 S3S3 S4S4 S6S6 S5S5 R2R2

Kevin Ross, UCSC, September Sketch: shifting costs Boundaries of Cones become flexible X1X1 X2X2 S4S4 S3S3 S2S2 S1S1 X

Kevin Ross, UCSC, September Summary: Service Network Engineering Resource Management in –Dynamically changing complex networks –Call centers, Utility Computing, Networks, Workforce, etc. Challenges –Analytical Concepts of throughput, QoS, scalability, distributed control –Resource Valuation and Pricing