1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Tài liệu Hiệu suất của hệ thống thông tin máy tính P8 ppt

27 309 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề The M/M/1 Queue
Tác giả Boudewijn R. Haverkort
Thể loại Chapter
Năm xuất bản 1998
Định dạng
Số trang 27
Dung lượng 1,64 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

8.1 The MIMI1 queue Consider an MIMI 1 queueing model with arrival rate X and service rate p.. The diagonal blocks describe transitions internal to a level causing arrivals nor departur

Trang 1

Chapter 8

I N this chapter we address the class of PHlPH 11 queues These queues can be seen

as special cases of GIGI 1 queues; however, due to the specific distributions involved, efficient numerical algorithms known as matrix-geometric methods can be applied for their solution

The aim of this chapter is not to present all the known material on PHiPHIl queues and their matrix-geometric solution Instead, our aim is to show the usefulness of matrix- geometric methods, to provide insight into their operation, and to show that PHIPHIl models, together with their efficient solution techniques, are a good alternative to GIG/l queueing models

This chapter is further organised as follows In Section 8.1 we readdress the analysis

of the MIMI 1 queue in a “matrix-geometric way” This is used as an introduction to the matrix-geometric analysis of the PH IPH/ 1 q ueue in Section 8.2 Numerical algorithms that play an important role in the matrix-geometric technique are discussed in Section 8.3 We then discuss a few special cases in Section 8.4 In Section 8.5 we discuss the caudal curve which plays an interesting role when studying the “tail behaviour” of queues We finally comment on additional queueing models that still allow for a matrix-geometric solution in Section 8.6

8.1 The MIMI1 queue

Consider an MIMI 1 queueing model with arrival rate X and service rate p The Markov chain underlying this queueing model is a simple birth-death process where the state vari- able denotes the total number of packets in the queueing station Since the state variable

is a scalar, such a process is sometimes called a scaZar state process The generator matrix

Performance of Computer Communication Systems: A Model-Based Approach.

Boudewijn R Haverkort Copyright © 1998 John Wiley & Sons Ltd ISBNs: 0-471-97228-2 (Hardback); 0-470-84192-3 (Electronic)

Trang 2

Figure 8.1: The state-transition diagram for the MIMI1 queue

Q of the CTMC undc 3’

Q=

lying -A I-L

Observe that, apart from the first column, all the columns are basically the same, except

that “they are shifted down one row” We call the first column a boundary column and

the other ones repeating columns Notice that the repeating structure can also be observed

nicely in the state-transition diagram of the CTMC underlying the MIMI1 queue, as given

in Figure 8.1 The balance equations for states i = 1,2, , have the following form:

Now, let us assume that the steady-state probability for state i only depends on the prob-

ability pi-l and the rates between states i and i - 1 As those rates are constants, we

guess that there is a constant p, of yet unknown value, which defines that pi = ppi-1, for

i = 1,2, a, or equivalently, pi = pipe, for i = 1,2, Substituting this in the global

balance equation for the repeating portion of the CTMC (i = 1,2, s s):

p&x + /J) = pl$flx + PoPitlk (8.3)

Since all steady-state probabilities depend via the multiplicative factor p on po, we have

to assume that p > 0, otherwise all pi would be equal to 0 In doing so, we may divide the

above equation by pi-‘, so that we obtain

pop@ + p) = pox + PoP2P * Po(PP2 - (A + cL)P + 4 = 0 (8.4)

The latter is true when either po = 0 which does not make sense because in that case

all the pi = 0, or when the quadratic equation in p evaluates to 0 This is true for two

Trang 3

8.1 The MIMI1 queue 147

values of p: p = X/p or p = 1 The latter solution cannot be accepted due to the fact that

a proper normalisation of all the probabilities requires p < 1, otherwise xi pi # 1 We thus conclude that p = X/p Using this result, we can solve the “boundary” of the global balance equations as follows We have

POX = PllJ * pox = pppo = pox (8.5)

This equality is always true and does not yield us the value of po We therefore use the normalisation equation:

fJPi=l*p~~/+=&=I,

provided that p < 1 We therefore conclude that po = 1 - p, and, consequently, pi = (1 - p)pi, i E N This result is of course well-known; however, the method by which we derived it here differs from the methods we used earlier

We need the fact that p < 1 in order for the geometric sum to be finite The requirement

p < 1 also exactly expresses a stability requirement for the queue: on average, the rate of incoming jobs must be smaller than the rate at which jobs can be served In the state- transition diagram, this property can be interpreted as follows: the rate to the next higher state must be smaller than the rate to the next lower state

Once the steady-state probabilities pi (i = 0, 1, .) are known, we can derive various performance metrics, such as:

l the average number of jobs in the queue: E[N] = CEO ipi = 6;

l the average response time (via Little’s law): E[R] = y = $, with the average service time E[S] = l/p;

l the probability of at least Ic jobs in the queue: B(k) = Cz”=, pi = pk

In summary, to evaluate the MIMI 1 queue, we have gone through 4 steps:

1 Guessing a solution based on the repetitive CTMC structure;

2 Substituting this solution in the repeating part of the global balance equations to derive the multiplicative constant p;

3 Computing the solution of the “boundary probabilities” by solving the corresponding part of the global balance equations, thereby using the normalisation equation and the result from Step 2;

Trang 4

4 Computing performance measures of interest

In the next section we will use this 4-step approach to evaluate more complex queueing systems

In Section 8.2.1 we present a structured description of the CTMC underlying a PHIPHIl queue In Section 8.2.2 we then proceed with the matrix-geometric solution Stability issues are discussed in Section 8.2.3 and explicit expressions for performance measures of interest are discussed in Section 8.2.4

Now, consider the PHIPHIl queue, the generalisation of the MIMI1 queue in which both the service and the interarrival times have a phase-type distribution (see also Chapter 3 and Appendix A) In this case, the state of the underlying CTMC is not totally described

by the number of jobs in the queueing system Part of the state description now is the phase of the arrival process, and the phase of the job in service, if any Consequently, the state is a vector of three elements The underlying Markov chain is therefore referred to

as a vector state process

Suppose that the representation of the arrival process is given by (a, T), where T is

an m, x m, matrix, and that the representation of the service process is given by (p, S), where S is an m, x m, matrix Ordered lexicographically, the states of the Markov chain underlying this PHIPHIl queueing system are of the form (n, a, s) where n is the number of jobs in the queue, a E { 1, , m,} is the phase of the arrival process, and s E { 1, , m,}

is the phase of the service process:

Z= {(O,lJ), (OJ, l>,-, (0-b 1>,(LL1),-~, (1,1,ms),(1,2,1), ,(1,2,ms),

- - -, (1, m,, I), f - - , (l,m,, m,), * - * , (2, mu, w), - * - , (~,md%))

All the states that have the same number of jobs in the queue are said

level For example, level i, i = 1,2, ., corresponds to the set of states

to belong to one

Level 0 consists of the states ((0, 1, l), (0,2, l), , (0, m,, 1)) Apart from some irregu- larities at the boundary, the matrix Q shows great similarity with the generator matrices

Trang 5

8.2 The PHIPHIl queue 149

we have seen for birth-death queueing models In particular, we observe that Q is block- tridiagonal The upper-diagonal blocks describe the transitions from a certain level to the next higher level: they correspond to arrivals The lower-diagonal blocks describe the tran- sitions from a certain level to the next lower level: they correspond to service completions The diagonal blocks describe transitions internal to a level causing arrivals nor departures, that is, they correspond to phase changes in the arrival or service process Viewing the levels as “super states” the matrix Q in fact describes a birth-death process on them For this reason vector state processes are most often called quasi-birth-death models (QBDs) Returning to the specific case at hand, the generator matrix Q of the underlying Markov chain has the following structure:

/ Boo Bol 0 0 - -a Blo Al A0 0 -

of the next service epoch The matrix Al describes changes in arrival or service process phase within a single level The matrices Bij are all differently dimensioned and have the following form:

Boo = T (size m, x m,), Bol = Toa @I p (size m, x mams), -

Matrix Boo describes state changes internal to level 0; because there-is no job in the queue

at level 0, only changes in the arrival process need to be kept track of, which explains its

Trang 6

equality to T Matrix B o1 has a similar structure to A 0; however, as it represents the arrival of the first job after the system has been empty for some time, it needs an extra factor taking into account the phase at which the next service is started, which explains the factor ,0 Similarly, B 1o much resembles A,; however, as this matrix represents transitions -

to the empty system, no new service epochs can start, so that a factor ,0 is missing - Example 8.1 The EzlH211 queue (I)

Consider a queueing model with a single server and with Erlang-2 interarrival times and hyper-exponentially distributed service times Notice that this model is a special case of the GIG11 q ueue, which we cannot solve We use the following PH-type representation of

a 2-stage Erlang distribution:

that is, we have two exponential phases which are visited one after another If both phases have been passed, an arrival takes place and the next interarrival period begins (a renewal process) We take the following representation of a 2-stage hyper-exponential service time distribution:

a level; the completion of the second phase in the arrival process leads to a next higher level Notice that only at the arrival of the first customer (transition from level 0 to level 1) the service time distribution is chosen (with probability ,& take rate pi) For arrivals at

a non-empty queue the choice of the service time distribution is postponed until the next customer has completed its service

Trang 7

8.2 The PHIPHIl queue 151

Figure 8.2: State transition diagram for the QBD underlying the E21Hzll queue From Figure 8.2 the generator matrix for this queueing system can readily be obtained Instead, one could also apply the definitions of the block matrices to arrive at:

Trang 8

The arguments that led to the simple geometric form for the steady-state probabilities

in an MIM 11 queue apply again here; however, we now have to take levels of states as neighbours between which probability flows That is, the probability of residence in level

i (z;) depends only on the probability of residence in level i - 1 (Zi-i)r for those levels i

which are already in the repeating portion of the CTMC, i.e., for i = 2,3, - - - Since the rates between neighbouring levels of states are constants, we hope that the relation we are aiming at can be expressed as a multiplicative constant between gi and zi-1 Note, however, that since we are dealing with vectors now, this constant needs to be a square matrix R of size mams x mams If we assume that

it follows that the steady-state probability vectors Xi must have the form

(8.15) Notice that we “go back in the recursion” to level 1 here, and not to level 0 as in the MIMI1 case This difference is due to the fact that in the M 1 M) 1 case we had only one boundary level, whereas we have two here The length of the vectors z;, i = 1,2, + + , is m,m, As in the MIMI 1 case for p, the square matrix R of size mams x mams follows from a quadratic equation obtained by substituting the assumed geometric form in the repeating portion of the global balance equation:

which, after rewriting the vectors pi in terms of z1 yields

This equation can only be true when either z i = 0, or when the quadratic equation within parentheses equals 0 For the same reasons as mentioned when discussing the MI MI 1

Trang 9

8.2 The PHIPHIl queue 153

queue, the latter must be the case, and the matrix R thus follows from the following matrix quadratic equation:

We discuss the actual computation of R from this quadratic equation in Section 8.3; for the time being we assume that we can do so

To start the recursive relation (8.15) the following boundary equations must be solved

to obtain go and z,:

= 0, and (z~,z~,z~)~ (8.19)

By the fact that z2A2 = (z,R)A 2 we can rewrite the right-hand equation as

so that we obtain the following boundary equations:

Trang 10

A similar reasoning can be followed when we deal with QBDs Let us denote A = A0 + Al + A,; this matrix can be interpreted as a Markov generator matrix which describes the transition behaviour within a level Transitions between levels, normally described by matrices A0 and Aa, are simply “looped back” to their originating level Now, define the vector sir to be the steady-state probability vector belonging to the CTMC with generator matrix A E follows from EA = 0 under the normalising condition xi ri = 1 Thus, given presence in some repeating level j, the probability of being in the i-th state of that level, i.e., in state (j, i), equals xi Given this probability, the total “drift” to a next higher level can be expressed as xi ni x1 Al:,), , where A:$, is the (i, I)-th element of matrix A,-,

Similarly, the drift to the next lower level can be expressed as Ci ni CI A& Notice that

in both these expressions, the rates to the next higher (lower) level are weighted by their relative occurrence Now, as long as the drift to next higher levels, i.e., xi ri XI A::,{,, is smaller than the drift to a next lower level, i.e., Ci ri Cl A[$,, we have a stable system In matrix notation, the required inequality for stability then becomes:

~JA~L < EAJ (8.23) Once the matrices Ai have been derived, this inequality can easily be verified

8.2.4 Performance measures

Once the matrix R and the boundary vectors z and zl have been obtained, various interesting performance metrics can be derived:

l Arrival and service process characteristics:

- the average interarrival time E[A] = aT-‘L; we define X = l/E[A];

- the average service time E[S] = -/$3-‘1; we define p = l/E[S]

l Average performance measures:

- the utilisation E[N,] = p = X/F;

- the average number of jobs in the queue and server:

E[N] = C igil= 21 ( x iRip ) 1

\i=l

= zl-& ((I - R)-1 - I) 1= &I - R)-2& (8.24)

Trang 11

8.3 Numerical asPects 155

- the average number of jobs in the queue E[N,] = E[N] - p;

- the average response time E[R] = E[N]/X;

- the average waiting time E[W] = E[N,]/X

l Detailed performance measures:

- the probability zi of having i jobs in the queue: xi = z;l;

- the probability Bk of having at least k jobs in the queue, which for k > 1 can

In order to really compute steady-state probabilities we have to solve for the matrix R

as well as for the (normalised) boundary equations We discuss the numerical solution

of the boundary equations in Section 8.3.1 Only in special cases can R be computed explicitly (see Section 8.4) Normally, R is computed iteratively We present a simple and straightforward substitution algorithm in Section 8.3.2, after which we present the recently developed logarithmic reduction algorithm in Section 8.3.3

8.3.1 Solving the boundary equations

The calculation of the boundary probability vectors from the (normalised) system of linear equations can be done using the standard techniques for solving linear systems of equations,

as will be described in Chapter 15 As the number of boundary equations is normally not too large, direct approaches such as Gaussian elimination are in general well-suited Notice that we need to compute R before we can solve the linear system-of boundary equations (8.21)

Trang 12

8.3.2 A successive substitution algorithm

From the quadratic matrix equation

to the queue) we see that rows containing just O’s in A0 will yield similar zero-rows in

R Further iteration steps do not change this situation for the matrix R Therefore, the matrix R will often have many rows completely zero This fact can be exploited in the multiplications by simply skipping rows which contain only zero entries

For each iteration step, 3 matrix-multiplications have to be made If R is of size

N x N, then we require 0(3N3) operations per iteration step The number of iteration steps heavily depends on the utilisation of the queue under study

Example 8.2 The E21H211 queue (II)

Consider again the E21H211 q ueue in which we assume the following numerical values:

X = 8, ~1 = 20 and ,92 = 10 Due to this choice, p = 0.7 The matrix R is calculated with the above simple algorithm, with precision 10m8 in 72 steps and equals:

R= 0.0000 0.0000 0.0000 0.0000 ’

0.0415 0.7879 0.0521 0.6247 First notice that the matrix R has two non-zero rows; these correspond to those situations

in which arrivals can take place (at each level) There are 4 states per level, but in only two

Trang 13

Table 8.1: Analysis results for the E2 IH211 queue

of them can arrivals take place, namely in those states where the Erlang-2 arrival process

is in its second phase

To compute the boundary probabilities, we have to solve (8.21) under the normalising condition (8.22) We find go = (0.1089,0.1911) f rom which we quickly verify that p =

1 - z,l = 0.70

In Table 8.1 we show some more analysis results We vary X from 1 through 11 Note the increase in the average queue length with increasing utilisation We tabulated the required number of steps in the successive substitution procedure to compute R (column SS) Note that when p increases the iterative solution of R slows down tremendously; since

we stopped the iterative procedure after 100 steps, the last three rows do not represent

We finally note that a number of more efficient methods (based on successive substi- tutions) have been developed than the one presented here These methods rely on the computation of the intermediate matrices G and U, which will be introduced and related

to R in the next section However, since these algorithms are also outperformed by the recently developed logarithmic reduction algorithm, we do not discuss them any further here; for further details, refer to [172, 1881

Ngày đăng: 24/12/2013, 15:15

w