Recursive dimensionality reduction

Slides:



Advertisements
Similar presentations
To Queue or Not to Queue? Physical queues can be really stressful and exhausting…
Advertisements

1 A class of Generalized Stochastic Petri Nets for the performance Evaluation of Mulitprocessor Systems By M. Almone, G. Conte Presented by Yinglei Song.
#11 QUEUEING THEORY Systems Fall 2000 Instructor: Peter M. Hahn
A gentle introduction to fluid and diffusion limits for queues Presented by: Varun Gupta April 12, 2006.
Mean Delay in M/G/1 Queues with Head-of-Line Priority Service and Embedded Markov Chains Wade Trappe.
Single queue modeling. Basic definitions for performance predictions The performance of a system that gives services could be seen from two different.
1 Alan Scheller-Wolf Joint with: Mor Harchol-Balter, Taka Osogami, Adam Wierman, and Li Zhang. Dimensionality Reduction for the analysis of Cycle Stealing,
Algorithmic Problems in Algebraic Structures Undecidability Paul Bell Supervisor: Dr. Igor Potapov Department of Computer Science
Queuing Networks: Burke’s Theorem, Kleinrock’s Approximation, and Jackson’s Theorem Wade Trappe.
Effect of higher moments of job size distribution on the performance of an M/G/k system VARUN GUPTA Joint work with: Mor Harchol-Balter Carnegie Mellon.
Effect of higher moments of job size distribution on the performance of an M/G/k system VARUN GUPTA Joint work with: Mor Harchol-Balter Carnegie Mellon.
Lecture 14 – Queuing Systems
Lecture II-2: Probability Review
Chapter 7 Two-Dimensional Formulation
Asaf Cohen (joint work with Rami Atar) Department of Mathematics University of Michigan Financial Mathematics Seminar University of Michigan March 11,
Ch 8.1 Numerical Methods: The Euler or Tangent Line Method
Sequences Informally, a sequence is a set of elements written in a row. – This concept is represented in CS using one- dimensional arrays The goal of mathematics.
Probability Review Thinh Nguyen. Probability Theory Review Sample space Bayes’ Rule Independence Expectation Distributions.
NETE4631:Capacity Planning (2)- Lecture 10 Suronapee Phoomvuthisarn, Ph.D. /
ECE 8443 – Pattern Recognition ECE 8423 – Adaptive Signal Processing Objectives: Deterministic vs. Random Maximum A Posteriori Maximum Likelihood Minimum.
1 Lesson 8: Basic Monte Carlo integration We begin the 2 nd phase of our course: Study of general mathematics of MC We begin the 2 nd phase of our course:
Queuing Theory Basic properties, Markovian models, Networks of queues, General service time distributions, Finite source models, Multiserver queues Chapter.
1 Systems Analysis Methods Dr. Jerrell T. Stracener, SAE Fellow SMU EMIS 5300/7300 NTU SY-521-N NTU SY-521-N SMU EMIS 5300/7300 Queuing Modeling and Analysis.
PHARMACOECONOMIC EVALUATIONS & METHODS MARKOV MODELING IN DECISION ANALYSIS FROM THE PHARMACOECONOMICS ON THE INTERNET ®SERIES ©Paul C Langley 2004 Maimon.
Numerical Methods.
State N 2.6 The M/M/1/N Queueing System: The Finite Buffer Case.
Chapter 01 Probability and Stochastic Processes References: Wolff, Stochastic Modeling and the Theory of Queues, Chapter 1 Altiok, Performance Analysis.
Chapter 01 Probability and Stochastic Processes References: Wolff, Stochastic Modeling and the Theory of Queues, Chapter 1 Altiok, Performance Analysis.
This is an example of an infinite series. 1 1 Start with a square one unit by one unit: This series converges (approaches a limiting value.) Many series.
Boyce/DiPrima 9 th ed, Ch 11.3: Non- Homogeneous Boundary Value Problems Elementary Differential Equations and Boundary Value Problems, 9 th edition, by.
© 2015 McGraw-Hill Education. All rights reserved. Chapter 17 Queueing Theory.
Advanced Algorithms Analysis and Design By Dr. Nazir Ahmad Zafar Dr Nazir A. Zafar Advanced Algorithms Analysis and Design.
Lesson 8: Basic Monte Carlo integration
Discrete-time Markov chain (DTMC) State space distribution
Theory of Capital Markets
Load Balancing and Data centers
Department of Industrial Engineering
Al-Imam Mohammad Ibn Saud University
CTMCs & N/M/* Queues.
Queuing Theory Queuing Theory.
Queuing Theory Non-Markov Systems
THE METHOD OF LINES ANALYSIS OF ASYMMETRIC OPTICAL WAVEGUIDES Ary Syahriar.
Remember that our objective is for some density f(y|) for observations where y and  are vectors of data and parameters,  being sampled from a prior.
Class Notes 18: Numerical Methods (1/2)
ECE 358 Examples #1 Xuemin (Sherman) Shen Office: EIT 4155
CPU Scheduling G.Anuradha
Chapter 5: CPU Scheduling
Hidden Markov Models Part 2: Algorithms
Solution of Equations by Iteration
Handling Routing Transport Haifa JFK TLV BGN To: Yishay From: Vered
Process Scheduling B.Ramamurthy 12/5/2018.
Lecture 4: Algorithmic Methods for G/M/1 and M/G/1 type models
Lecture 2 Part 3 CPU Scheduling
September 1, 2010 Dr. Itamar Arel College of Engineering
Process Scheduling B.Ramamurthy 4/11/2019.
Process Scheduling B.Ramamurthy 4/7/2019.
Charles University Charles University STAKAN III
Queuing Networks Mean Value Analysis
Uniprocessor scheduling
8. One Function of Two Random Variables
Basic circuit analysis and design
CS 416 Artificial Intelligence
Lecturer Dr. Veronika Alhanaqtah
Stochastic Processes A stochastic process is a model that evolves in time or space subject to probabilistic laws. The simplest example is the one-dimensional.
8. One Function of Two Random Variables
Erlang, Hyper-exponential, and Coxian distributions
CS723 - Probability and Stochastic Processes
Generating Random Variates
CISE-301: Numerical Methods Topic 1: Introduction to Numerical Methods and Taylor Series Lectures 1-4: KFUPM CISE301_Topic1.
Presentation transcript:

Recursive dimensionality reduction for the analysis of multiserver scheduling policies Taka Osogami Joint with: Hi, I am Taka, and this is a joint work with Mor Harchol-Balter, Adam Wierman, Alan Scheller-Wolf from Tepper school. I am going to present a new technique that allows us to analyze the performance of various multiserver scheduling policies. Mor Harchol-Balter (CMU, CS) Adam Wierman (CMU, CS) Alan Scheller-Wolf (CMU, Tepper School)

multiserver scheduling problems Here are some examples of what we mean by multiserver systems. In the first example, we have a stream of job arrivals from outside, and we need to dispatch these jobs to one of the servers as soon as they arrive at the dispatcher. A possible scheduling policy is to send short jobs to one server and send long jobs to the other server, so that short jobs do not have to wait behind long jobs. In the second example, we have a central queue. The jobs arriving from outside once wait in the central queue. When a server becomes available, it grabs a job from the central queue. A possible scheduling policy is a two-class priority scheduling, where low priority jobs receive service only when a server has no high priority jobs that it can work on. In the last example, we have two types of jobs arriving from outside. Different types of jobs may have different affinities with different servers. For example, jobs in the first queue may be processed more efficiently on server 1 than on server 2. A possible scheduling policy is a threshold-based policy, where each server usually works on its own queue, but when the number of jobs in queue 1 exceeds a threshold value, both servers work on jobs in queue 1. Our goal is to analyze the mean response time under various scheduling policies for various multiserver architectures. Here the response time of a job is defined to be the time between its arrival and its completion. We assume that the arrival process is a certain stochastic process and job size has a certain probability distribution. So, our goal is to get an analytical expression for the mean response time for each scheduling policy as a function of arrival process and job size distributions. This is a difficult problem, but we are going to provide a partial solution to this problem. To understand the difficulty of the problem and how our solution works, we are going to first step back and see how we can analyze the performance under single server systems. Goal: Mean response time = f(scheduling policy, arrival processes, job size distributions)

Analysis of single-server FCFS Poisson arrival & exponential job size (M/M/1) m 1 2 l Phase-type job size (M/PH/1) 1 2 l m1 m2 m3 MAP/PH/1 1 2 Markovian arrival process (MAP/M/1) 1 2 m l1 l2 l3 l4 In this slide, we are going to look at how we can analyze the performance of first come first serve scheduling policy in singe server systems. We are going to start with the simplest case of Poisson arrivals and exponential job size distributions. This is a Markovian system. During delta interval, we have an arrival with probability lambda times delta, and we have a job completion with probability mu times delta. This is a simple birth and death process, and pi i, which is the probability that there are i jobs in system, has a nice geometric form of pi 0 times rho to the i, where rho is some constant. When the job size distribution is not an exponential distribution, we can model the job size distribution by a phase type distribution. In fact, any job size distribution can be approximated arbitrarily closely by a phase type distribution. Technically, the phase type distribution is dense in the class of all the nonnegative probability distributions. That is for any given nonnegative distribution, there is a sequence of phase type distributions that converges to the given distribution. In this example, job size consists of two phases. In the first phase, the job is completed with rate mu1 but with rate mu2 it just moves to the second phase. In the second phase, the job is completed with rate mu3. In a general phase type distribution, we can have an arbitrary number of phases and arbitrary transitions among the phases. This time, pi i is a vector of probabilities that there are i jobs in system, but it has a nice matrix geometric form like this, where R is some matrix. When the arrival process is not Poisson, we can model the arrival process by a Markovian arrival process. Again, any stationary arrival process can be approximated arbitrarily closely by a Makovian arrival process, since the Markovian arrival process is dense in the class of all the stationary point processes. In this example, the arrival process has two phases. In the first phase, a job arrives with rate lambda 1, and in the second phase, a job arrives with rate lambda 2. The phase is changed with rate lambda 3 and lambda 4. In a general Markovian arrival process, we can have an arbitrary number of phases and arbitrary transitions among phases. Again, probability vector, pi, has a nice matrix geometric form. When the arrival process is a Markovian arrival process and the job size has a phase type distribution, we can take the superposition of these two Markov chain, which looks like this. So, we can analyze its performance very easily. There is one point that you should remember from this slide. One of the reasons that we can analyze these Markov chains efficiently is that all the Markov chains are infinite only in one dimension. We may have multiple phases, but they are finite.

Common Problem: 2D-infinite Markov chain (or nD-infinite) Goal: Mean response time = f(scheduling policy, MAP arrival processes, PH job size distributions) H L Now let’s go back to our problem of multiserver systems. Our goal is to obtain the mean response time for each scheduling policy as a function of Markovian arrival process and phase type job size distributions. There is a common problem that comes up in the analysis of many scheduling policies in many multiserver architectures. The problem is that the Markov chain grows infinitely in 2 dimensions or even higher dimensions. In this talk, I am going to illustrate this common problem and our solution through the analysis of just one example of multiserver scheduling policy. We are going to consider a priority scheduling, where high priority jobs have preemptive priority over low priority jobs. That is, if a high priority job arrive in system where all the servers are busy and some low priority jobs are getting service, a low priority job is preempted and the high priority job can receive service immediately. H has preemptive priority over L Common Problem: 2D-infinite Markov chain (or nD-infinite)

M/M/2 with 2 priority classes 2mL 0,0 1,0 2,0 0,1 1,1 2,1 0,2 1,2 2,2 lL lH mH 2mH mL #L #H 3,0 3,1 3,2 H L We are going to consider the simplest case of Poisson arrivals and exponential job sizes. We can draw a Markov chain but it is infinite in 2 dimensions. Here, we keep track of the number of low priority jobs and the number of high priority jobs. There are transitions due to low priority jobs arrival and completion, and they are shown in blue. There are also transitions due to high priority jobs arrival and completion, and they are shown in red. In fact, high priority jobs can be analyzed independently of low priority jobs, since the behavior of high priority jobs does not depend on low priority jobs. However, the behavior of low priority jobs does depend on the behavior of high priority jobs, so we need to analyze them at the same time. In particular, the completion rate of low priority jobs depends on the number of high priority jobs.

Prior work: 2D infinite Markov chain transform methods (’80s-’90s) Boundary value problems (’70s-’00s) matrix analytic methods (’80s-’00s) Gail Hunter Taylor Mitrani King Kao Wilson : Cohen Boxma King Mitrani Fayolle Iasnogorodski Borst Jelenkovic Uitert Nain : truncation (1D) no truncation Rao Posner Kao Narayanan Leemans Miller Ngo Lee : 2D 2D→1D nD→1D A few approaches have been proposed to deal with 2D infinite state space. Transform methods and reduction to boundary value problems lead to mathematically elegant expressions, but we often experience numerical instability in evaluating these expressions. Matrix analytic method is an algorithmic approach for solving a broad class of Markov chain with certain structures. However, because matrix analytic method is most efficient when it is applied to a 1D infinite Markov chain, most approaches that use matrix analytic methods first truncate the state space so that the state space becomes only one-dimensionally infinite. In our model, this corresponds to placing an upper bound on the number of high priority jobs or the number of low priority jobs. Although theory exists as to how matrix analytic method can be directly applied to 2D infinite Markov chain, it is much less efficient for 2D infinite Markov chains. Our approach reduces a n-dimensionally infinite state space to a 1D infinite state space without truncation and solve the resulting 1D infinite Markov chain via the matrix analytic method efficiently. Latouche Ramaswami Bright Taylor Sleptchenko Squilante : Our approach

2D infinite Markov chain #L L #H lL lL lL 0,0 0,1 0,2 L mL 2mL 2mL mH lH mH lH mH lH H lL lL lL 1,0 1,1 1,2 L L mL mL mL 2mH lH 2mH lH 2mH lH H 2,0 lL 2,1 lL 2,2 lL L L This is the 2D infinite Markov chain that we want to solve. The Markov chain can be divided into 3 regions, depending on the number of high priority jobs. To know the behavior of low priority jobs, we just need to know which of the three regions we are in. A problem is the third region which is infinite in two dimensions. The point is that we don’t care about the exact number of high priority jobs in the third region. All we want is the distribution of the sojourn time in the third region. So, we are going to replace this region by something that is infinite only in one dimension. That is, we first analyze the distribution of the sojourn time in this region, we then approximate the sojourn time distribution by a phase type distribution, and we put the phase type distribution in this region. H 2mH lH 2mH lH 2mH lH H L 3,0 lL 3,1 lL 3,2 lL

2D 1D #L L #H lL lL lL 0,0 0,1 0,2 L L mL 2mL 2mL mH lH mH lH mH lH H lL lL lL 1,0 1,1 1,2 L L L mL mL mL b3 lH b3 lH b3 lH 2+,0 lL 2+,1 lL 2+,2 lL H L So, the resulting Markov chain looks like this. Now, in the third region, we don’t know the exact number of high priority jobs All we know is that the number is at least two. However, the distribution of time that we are in the third region is the same as, or similar to, the distribution of time in the third region of the 2D infinite Markov chain. As you can see, our approach does not involve truncation, but our Markov chain is infinite only in one dimension, which we can analyze very efficiently. b2 b1 b2 b1 b2 b1 2+,0 lL 2+,1 lL 2+,2 lL

M/M/2 with 3 priority classes We can extend our analysis to more than two priority classes. Now we are going to consider the case of three priority classes, high, medium and low. As you can imagine now the Markov chain grows infinitely in three dimensions, but we can reduce its dimension recursively until we get 1D infinite Markov chain. In this dimension, we track the number of high priority jobs. We can make this dimension finite, in exactly the same way as we did in the two-class case. Then, we get a Markov chain that is infinite only in two dimensions. In one dimension we track the number of low priority jobs, and in the other dimension we track the number of medium priority jobs. We can then make the medium jobs dimension finite. The resulting 1D infinite Markov chain looks like this. Now chain grows infinitely in 3 dimensions!

lL Transitions within a level: #L = 2 M lH mH lM mM Transitions within a level: #L = 3 lL Transitions within a level: #L = 2 This picture shows the transition diagram within a single level, where the number of low priority jobs is three. In this region, we have no high and medium priority jobs. In this region, we have one high priority job or we have one medium priority job. In these three regions, we have at least two high or medium priority jobs. These three regions are differentiated only by how you enter these regions. If you get a high priority job arrival when you have on high priority jobs in system, you come to this region. If you get a medium priority job arrival, you come to this region. We need to differentiate these regions, because the distributions of the sojourn time are different in these two cases. These transitions from the bottom regions to the middle regions need to be replaced by phase type distributions. This is the transition within a level, where there are three low priority jobs. If a low priority job is completed, we are going to transition to a level next to it. Here, we have two low priority jobs, and the transition within this level is exactly the same as the transitions when we have three low priority jobs. We get a low priority job arrival with rate lambda L, and we transition back to this level.

Accuracy of recursive DR Mean delay Relative error (%) r Our analysis involves approximation of sojourn time distributions by phase type distributions, but this approximation can be made as accurate as desired. In our work, we match the first three moments of the distribution, that is we match mean, variance, and one higher moment, and this gives a pretty good accuracy in our models. This plot shows the mean delay calculated by our analysis and by simulation in the case of four priority classes with Poisson arrivals and exponential job size distributions. Simulation values are shown in x’s. It looks like our analysis perfectly matches simulation. By taking a closer look, our analysis is within a few percent of what simulation predicts. r Simulation Class 1 Class 2 Class 3 Class 4 Analysis via RDR Low prio High prio

Impact of our new analysis Evaluation of existing approximation New approximation Design heuristics for multiserver priority systems n slow servers sometimes better than 1 fast servers variability of H jobs – big impact on L jobs relative priority among higher priority jobs – little impact on L jobs What can we do with our analysis? RDR provides the first near exact analysis of more than two priority classes, or nonexponential job sizes with two priority classes, in multiserver systems. Only coarse approximations had existed. We have evaluated the existing approximations extensively, and characterized exactly when these approximations works or does not. The study of these existing approximations led us to propose a new approximation, which has better accuracy than existing approximations, and which is simper and more efficient than our analysis via RDR. We have also used our analysis to provide design heuristics that can be used to design multiserver systems with priority. For example, there are some situations where n slow servers perform better than one server that is n times faster. Since n slow servers are cheaper than 1 fast server, this is a good news. We also observed that the variability of high priority jobs can have significant impact on the performance of low priority jobs. So, if we could, we should design high priority jobs so that its service time has less variability. Finally, we observed that relative priority among high priority jobs are usually not very important. So, when you determine the priority among high priority jobs, we do not need to care about the performance of lower priority jobs, since it does not affect their performance so much.

nD infinite Markov chain Summary H L Multiserver scheduling Common problem nD infinite Markov chain In summary, we are interested in analyzing the performance of various scheduling policies in various multiserver architectures. However, there is a common problem that comes up in the analysis of multiserver scheduling policies. We proposed a partial solution that works for many of these problems. Our solution reduces an n dimensionally infinite Markov chain into a 1 dimensionally infinite Markov chain, which we can analyze efficiently. Recursive dimensionality reduction nD 1D

Recursive dimensionality reduction Thank you! Recursive dimensionality reduction for the analysis of multiserver scheduling policies Taka Osogami