450 likes | 522 Views
CPE 619 Mean-Value Analysis. Aleksandar Milenković The LaCASA Laboratory Electrical and Computer Engineering Department The University of Alabama in Huntsville http://www.ece.uah.edu/~milenka http://www.ece.uah.edu/~lacasa. Overview. Analysis of Open Queueing Networks Mean-Value Analysis
E N D
CPE 619Mean-Value Analysis Aleksandar Milenković The LaCASA Laboratory Electrical and Computer Engineering Department The University of Alabama in Huntsville http://www.ece.uah.edu/~milenka http://www.ece.uah.edu/~lacasa
Overview • Analysis of Open Queueing Networks • Mean-Value Analysis • Approximate MVA • Balanced Job Bounds
Analysis of Open Queueing Networks • Used to represent transaction processing systems, such as airline reservation systems, or banking systems • Transaction arrival rate is not dependent on the load on the computer system • Arrivals are modeled as a Poisson process with a mean arrival rate l • Exact analysis of such systems • Assumption: All devices in the system can be modeled as either fixed-capacity service centers(single server with exponentially distributed service time) or delay centers (infinite servers with exponentially distributed service time)
Analysis of Open Queueing Networks • For all fixed capacity service centers in an open queueing network, the response time is:Ri = Si (1+Qi) • On arrival at the ith device, the job sees Qi jobs ahead (including the one in service) and expects to wait Qi Si seconds. Including the service to itself, the job should expect a total response time of Si(1+Qi) • Assumption: Service is memory-less (not operationally testable) Not an operational law • Without the memory-less assumption, we would also need to know the time that the job currently in service has already consumed
Mean Performance • Assuming job flow balance, the throughput of the system is equal to the arrival rate:X = l • The throughput of ith device, using the forced flow law is: Xi = X Vi • The utilization of the ith device, using the utilization law is: Ui = Xi Si = X Vi Si = l Di • The queue length of ith device, using Little's law is: Qi = Xi Ri = Xi Si(1+Qi) =Ui(1+Qi) or Qi = Ui / (1-Ui) • Notice that the above equation for Qi is identical to the equation for M/M/1 queues
Mean Performance • The device response times are: • In delay centers, there are infinite servers and, therefore: • Notice that the utilization of the delay center represents the mean number of jobs receiving service and does not need to be less than one
Example 34.1 • File server consisting of a CPU and two disks, A and B • With 6 clients systems:
Example 34.1 (cont’d) • Device utilizations using the utilization law are:
Example 34.1 (cont’d) • The device response times using Equation 34.2 are: • Server response time:
Example 34.1 (cont’d) • We can quantify the impact of the following changes • Q: What if we increase the number of clients to 8? Request arrival rate will go up by a factor of 8/6 • Conclusion: Server response time will degrade by a factor of 6.76/1.406=4.8
Example 34.1 (cont’d) • Q: What if we use a cache for disk B with a hit rate of 50%, although it increases the CPU overhead by 30% and the disk B service time (per I/O) by 10% • A:
Example 34.1 (cont’d) • The analysis of the changed systems is as follows: • Thus, if we use a cache for Disk B, the server response time will improve by (1.406-1.013)/1.406 = 28%
Example 34.1 (cont’d) • Q: What if we have a lower cost server with only one disk (disk A) and direct all I/O requests to it? • A: the server response time will degrade by a factor of 3.31/1.406 = 2.35
Mean-Value Analysis (MVA) • Mean-value analysis (MVA) allows solving closed queueing networks in a manner similar to that used for open queueing networks • It gives the mean performance. The variance computation is not possible using this technique • Initially limit to fixed-capacity service centers. Delay centers are considered later. Load-dependent service centers are also considered later. • Given a closed queueing network with N jobs:Ri(N) = Si (1+Qi(N-1)) • Here, Qi(N-1) is the mean queue length at ith device with N-1 jobs in the network. • It assumes that the service is memoryless
Mean-Value Analysis (MVA) • Since the performance with no users ( N=0 ) can be easily computed, performance for any number of users can be computed iteratively. • Given the response times at individual devices, the system response time using the general response time law is: • The system throughput using the interactive response time law is:
Mean-Value Analysis (MVA) • The device throughputs measured in terms of jobs per second are:Xi(N)= X(N) Vi • The device queue lengths with N jobs in the network using Little's law are:Qi(N)= Xi(N) Ri(N)= X(N) Vi Ri(N) • Response time equation for delay centers is simply: Ri(N) = Si • Earlier equations for device throughputs and queue lengths apply to delay centers as well. Qi(0)=0
Example 34.2 • Consider a timesharing system • Each user request makes ten I/O requests to disk A, and five I/O requests to disk B • The service times per visit to disk A and disk B are 300 and 200 milliseconds, respectively • Each request takes two seconds of CPU time and the user think time is four seconds
Example 34.2 (cont’d) • Initialization: • Number of users: N=0 • Device queue lengths: QCPU=0 , QA=0 , QB = 0
Example 34.2 (cont’d) • Iteration 1: • Number of users: N=1 • Device response times: • System Response time: • System Throughput: X=N/(R+Z)=1/(6+4)=0.1 • Device queue lengths:
Example 34.2 (cont’d) • Iteration 2: • Number of users: N=2 • Device response times: • System Response time: • System Throughput: X=N/(R+Z)=2/(7.4+4)=0.175 • Device queue lengths:
MVA Results for Example 34.2 • MVA is applicable only if the network is a product form network • This means that the network should satisfy the conditions of job flow balance, one step behavior, and device homogeneity • Also assumes that all service centers are either fixed-capacity service centers or delay centers • In both cases, we assumed exponentially distributed service times
Approximate MVA • Useful for large values of N • Schweitzer's approximation: • Estimate the queue lengths with N jobs and computing the response times and throughputs. The values so computed can be used to re-compute the queue lengths • Assumes that as the number of jobs in a network increases, the queue length at each device increases proportionately • Analytically:
Approximate MVA (cont’d) • In particular, this implies: or • MVA equations can, therefore, be written as follows: • If the new values of Qi are not close to the old values continue iterating • If they are sufficiently close, we stop
Example 34.3 • Consider again the timesharing system of Example 34.1. Let us analyze this model using Schweitzer's approximation when there are 20 users on the system. The stopping criterion is to stop when the maximum absolute change in every queue length is less than 0.01. • The system parameters are: • Z=4 , and N=20
Example 34.3 (cont’d) • To initialize the queue lengths, we assume that the 20 jobs are equally distributed among the three queues of CPU, disk A, and disk B • Iteration 1: • Device response times: • System Response time:
Example 34.3 (cont’d) • System throughput: X=N/(R+Z)=20/(44+4)=0.42 • Device queue lengths: • Maximum absolute change in device queue lengths:
Example 34.3 (cont’d) • Common mistake: a small error in throughput does not imply that the approximation is satisfactory. The same applies to device utilizations, and the system response time • In spite of a small error in any of these, the error in the device queue lengths may be quite large
Example 34.3 (cont’d) • Note that the throughput reaches close to its final value within five iterations, while the response time reaches close to its final value within six iterations • Queue lengths take the longest to stabilize • Notice, that for all values of N, the error in throughput is small; the error in response time is slightly larger; and error in queue lengths is the largest
Balanced Job Bounds • A system without a bottleneck device is called a balanced system • Balanced system has a better performance than a similar unbalanced system Allows getting two sided bounds on performance • An unbalanced system's performance can always be improved by replacing the bottleneck device with a faster device • Balanced System: Total service time demands on all devices are equal
Balanced Job Bounds (cont’d) • Thus, the response time and throughput of a time-sharing system can be bounded as follows: • Here, Davg=D/M is the average service demand per device • These equations are known as balanced job bounds • These bounds are very tight in that the upper and lower bound are very close to each other and to the actual performance • For batch systems, the bounds can be obtained by substituting Z=0
Balanced Job Bounds (cont’d) • Assumption: All service centers except terminals are fixed-capacity service centers • Terminals are represented by delay centers. No other delay centers are allowed because the presence of delay centers invalidates several arguments related to Dmax and Davg
Derivation of Balanced Job Bounds Steps: 1. Derive an expression for the throughput and response time of a balanced system 2. Given an unbalanced system, construct a corresponding “best case” balanced system such that the number of devices is the same and the sum of demands is identical in the balanced and unbalanced systems. This produces the upper bounds on the performance 3. Construct a corresponding “worst case” balanced system such that each device has a demand equal to the bottleneck and the number of devices is adjusted to make the sum of demands identical in the balanced and unbalanced systems. This produces the lower bounds on performance
Derivation (cont’d) • Any timesharing system can be divided into two subsystems: the terminal subsystem consisting of terminals only, and the central subsystem consisting of the remaining devices. • Consider a system whose central subsystem is balanced in the sense that all M devices have the same total service demand: • Here, D is the sum of total service demands on the M devices • Device response times using the mean-value analysis:
Derivation (cont’d) • Since, the system is balanced, all Qi 's are equal, and we have: • Here, Q(j) (without any subscript) denotes the total number of jobs in the central subsystem when there are j jobs in the system • The number of jobs in the terminal subsystem is j-Q(j) • The system response time is given by: • or
Derivation (cont’d) • A non-iterative procedure to bound Q(N)is based on the following arguments • If we replace the system with N workstations so that each user has his own workstation and the workstations are identical to the original system, then the new environment would have a better response time and better throughput • The new environment consists of N single user systems and is, therefore, easy to model. Each user spends its time in cycles consisting of Z units of time thinking and D units of time computing. Each job has a probability D/(D+Z) of being in the central subsystem (not at the terminal)
Derivation (cont’d) • Now consider another environment like the previous one except that each user is given a workstation that is N times slower than the system being modeled. This new environment has a total computing power equivalent to the original system, but there is no sharing • The users would be spending more time in the central subsystem. That is:
Derivation (cont’d) • The two equations above combined together result in the following bounds on the number of jobs at the devices • In terms of response time, this results in the following bounds: • This completes the first step of the derivation
Derivation (cont’d) • Step 2 :Suppose we have an unbalanced system such that the service demands on ith device is Di • Bound on the performance of the unbalanced system: • and • The expressions on the right-hand side are for the balanced system. This completes the second step of the derivation
Derivation (cont’d) • Step 3: Consider a balanced system in which M'=D/Dmax devices have nonzero demands, each equal to Dmax; the remaining devices have zero demands and can, therefore, be deleted from the system • The expressions on the left-hand side are for the balanced system • Combining equations with asymptotic bounds we get the balanced job bounds
Example 34.4 • For the timesharing system of Example 34.1 • DCPU = 2 , DA = 3 , DB = 1 , Z = 4 • D = DCPU + DA + DB = 2+3+1 = 6 • Davg = D/3 = 2 • Dmax = DA = 3 • The balanced job bounds are:
Summary • Open queueing networks of M/M/1 or M/M/ can be analyzed exactly • MVA allows exact analysis of closed queueing networks. Given performance of N-1 users, get performance for N users • Approximate MVA is used when there is a large number of users. Assume queue lengths for a system with N users and compute, response time, throughput, and queue lengths • Balanced Job bounds: A balanced system with Di = Davg will have better performance and an unbalanced system with some devices at Dmax and others at 0 will have worse performance