Modeling Parallel and Distributed Systems with Finite Workloads

Size: px
Start display at page:

Download "Modeling Parallel and Distributed Systems with Finite Workloads"

Transcription

1 Modeling Parallel and Distributed Systems with Finite Workloads Ahmed M. Mohamed, Lester Lipsky and Reda Ammar {ahmed, lester, Dept. of Computer Science and Engineering University of Connecticut, Storrs, CT 6269, USA Tel: , Fax: ABSTRACT In studying or designing parallel and distributed systems one should have available a robust analytical model that includes the major parameters that determines the system performance. Jackson networks have been very successful in modeling parallel and distributed systems. However, the ability of Jackson networks to predict performance with system changes remains an open question, since they do not apply to systems where there are population size constraints. Also, the product-form solution of Jackson networks assumes steady state and exponential service centers or certain specialized queueing disciplines. In this paper, we present a transient model for Jackson networks that is applicable to any population size and any finite workload (no new arrivals). Using several Erlangian and Hyperexponential distributions we show to what extent the exponential distribution can be used to approximate other distributions and transient systems with finite workloads. When the number of tasks to be executed is large enough, the model approaches the product-form solution (steady state solution). We also, study the case where the nonexponential servers have queueing (Jackson networks can t be applied). Finally, we show how to use the model to analyze the performance of parallel and distributed systems. Key Words: Analytical Modeling, Performance Prediction, Queueing Models, Jackson Networks and Transient Analysis.. INTRODUCTION It is often assumed that tasks in parallel systems are independent and run independently using separate hardware (e.g. Fork/Join type applications). In this case the problem is reduced to an order statistics problem [5,2,2,22,23]. However, in many applications tasks must interact through shared resources (e.g. shared data, communication channels). Hence, order statistics analysis is not adequate and one must apply more general models. We used the product-form solution for Jackson networks in [4,5] to model clusters of workstations. This model is satisfactory if the steady state region is much larger than the transient and draining regions (i.e. if the number of tasks is much greater than the number of workstations) and the exponential distribution is accepted as an approximation to the application service time. However, if this is not the case, the transient model should be employed.

2 It has been shown by Leland et al [] that the distribution of the CPU times at BELLCORE are power tail (PT). Also, Corrvella [6], Lipsky [2], Hatem [9] and others, found that file sizes stored on disks and even page sizes are PT. If these observations are correct, then performance modeling based on exponential distribution is not adequate. In a previous work, we developed a transient model for Jackson networks using exponential distribution as the applications service distribution [6]. In this paper we introduce a transient model to study the transient behavior of Jackson networks for other distributions (e.g., Erlangian and Hyperexponential). The model is applicable to any population size. When the number of tasks to be executed is large enough, the model approaches the product-form solution (steady state solution). We study two cases, first when the nonexponential servers have no queueing (dedicated servers, like local CPU s and disks) then when they have queueing (shared servers like shared disks and the communication network). We also show how to use the model to analyze the performance of parallel and distributed systems. The model, we present includes the major performance parameters that affect the performance of parallel and distributed systems. More parameters always can be added to the basic model (e.g., scheduling overhead, multitasking,.) if needed. In our analysis, we use the linear algebraic queueing theory (LAQT) approach. All the necessary background needed can be found in Chapter 6 of [3]. The rest of the paper is organized as follows: In Section 2, we give a brief background on Jackson networks. A brief theoretical background on LAQT is presented in Section 3. In Section 4, we introduce our transient model. In Section 5, we show how to use the model to analyze the performance of different configurations of parallel and distributed systems. In Section 6, we show some of our results. 2. BACKGROUND Since the early 97s, networks of queues have been studied and applied to numerous areas in computer modeling with a high degree of success. General exponential queueing network models were first solved by Jackson [] and by Gordon et al [8] who showed that certain classes of steady state queueing networks with any number of service centers could be solved using a product-form (PF) solution. A substantial contribution was made by Buzen [3,4] who showed that the ominous-looking formulas were computationally manageable. Basket et al [8] summarized under what generalizations the PF solution could be used (e.g., processor sharing, multiple classes, etc). Thereafter, the performance analysis of queueing networks began to be considered as a research field of its own. We used the product form solution of Jackson networks to analyze the performance of clusters of workstations [4]. This model is designed to include the major architecture parameters that affect the performance of clusters of workstations. The model then was used to develop an efficient data allocation algorithms [5]. Then we [6] developed a transient

3 model for Jackson networks and showed to what extent the steady state model can be used. However, there is a computational problem in attempting to use this model for large systems. An approximation to the transient model using the steady state solution was presented to overcome such problems when dealing with large systems [7]. 3. THEORETICAL BACKGROUND In the following section, we introduce some definitions that are important for our analysis. A complete description can be found in [3]. 3. Definitions - Matrices used if only one task in the system S is a system consisting of a set of service centers. The service rate of each server is exponential. Ξ is the set of all internal states of S. p is the entrance row vector where p i is the probability that upon entering S, a task goes to server i. q is exit column vector where q i is the probability of leaving the system when service completed at server i. M is the completion rate matrix whose diagonal elements are the completion rates of the individual servers. P is the transition matrix where P ij is the probability that a task goes from server i to server j when service is completed at i. B is the service rate matrix, B = M (I P). τ is a column vector where τ i is the mean time until a task leaves S, given that it started at server i. V is the service time matrix where V ij is the mean time a task spends at j from the time it first visits i until it leaves the system. V = B - ε is a column vector all of whose components are ones. - Matrices used if K > tasks in the system Ξ k is the set of all internal states of S when there are k active tasks there. There are D(k) such states. M k is the completion rate matrix where [M k ] ii the service rate of leaving state i. The rest of the elements are zeros. P k is the transition matrix where [P k ] ij i,j Ξ k, is the probability that the system goes from state i to state j when service is completed while the system in state i. Q k is the exit matrix where [Q k ] ij is the probability of a task leaving S when the system was in state i Ξ k, leaves the system in state j Ξ k-.

4 R k entrance matrix where [R k ] ij is the probability that a customer upon entering S finding it in state i Ξ k- goes to server that puts the system in state j Ξ k. τ k is a column vector of dimension D(k) where [τ k ] i is the mean time until a customer leaves S, given that the system started in state i Ξ k. 3.2 Matrix Representation of Distribution Functions Every distribution function can be approximated closely as needed by some m-dimensional vector-matrix pair < p, B > in the following way. The PDF is given by F(t) =: Pr(X t) = p exp (-t B) ε Where p ε =. The matrix function exp(-t B) is defined by its Taylor expansion. Any m x m matrix X when multiplied from the left by a row m-vector and from the right by an m-column vector, yields a scalar. Since this function appears often in LAQT, it s been defined in Chapter 3 of [3], Ψ[X] := p X ε So, F(t) is a scalar function of t. It follows that the pdf is given by, b(t) = df ( t) = p exp (-t B) B ε = Ψ[ exp (-t B) B] dt and the reliability function is given by R(t) := Pr(X > t) = F(t)= p exp(-tb)ε =Ψ[exp (-t B)] It can also be shown that, E(T n ) = n! Ψ[V n ] For more detailed description please see [3]. 4. THE TRANSIENT MODEL Suppose we have a computer system made up of K workstations and we wish to compute a job made of N tasks where N > K. The first K tasks are assigned to the system and the rest are queued up waiting for service. Once a task finishes it is immediately replaced by another task from the execution queue. Assume that the system initially opens up and K tasks flow in. The first task enters and puts the system in state p Ξ.The second task enters and takes the system from that state to state pr 2 Ξ 2 and so on. The state of the system after the K th task enters is: p K = pr 2 R 3 R K

5 It can be shown that the time until the first task finishes and leaves the system is [9], τ K = M K - ε K + P K τ K τ K = (I K P K ) - M - K ε K = V K ε K The mean time until someone leaves is equal to the sum of two terms; the time until a change in the system status happens, [/[M K ] ii = (M - K ε K ) i ], and if the event is not a departure the system goes to another state, [P K ], and leaves from there. The mean time is given by, t K = p K V K ε K = Ψ[ V K ] How long does it take for the next task to finish?. There are two possibilities, either N = K (number of tasks is equal to the number of workstations) or N > K. 4. Case. (N = K) The case when N < K is ignored here because if N < K we run the application in a smaller size cluster where N = K. First, we define the matrix Y k where [Y k ] ij is the probability that the S will be in state j Ξ k- immediately after a departure, given that the system was in state i Ξ k and no other customers have entered. Y k can be obtained from the following argument. When an event occurs in S, either someone leaves, [Q k ], or the internal state of the system changes, [P k ], and eventually somebody leaves, [Y k ]. Y k = Q k + P k Y k Y k =(I k P k ) - Q k = (I k P k ) - M k - M k Q k =V k M k Q k k K We then consider how long it takes for the second task to finish after the first one left. p k Y k (V k- ε k- ) = p k Y k (τ k- ) Where, [p k ] i is the probability that the system was in state i when the epoch (epoch is the time between two successive departure) began. This means, after the first task leaves, the system is in state p k Y k with k, tasks. The second task takes (τ k- ) to leave next. The time between the second and third departure is, p k Y k Y k- (V k-2 ε k-2 ) = p k Y k Y k- (τ k-2 ) and so on. In general the mean time to finish executing all of the N tasks is given by, E(T) = p K [τ K + Y K τ K Y K Y K- Y τ ]

6 4.2 Case 2. (N > K) The first K tasks are assigned to the system and the rest are queued up waiting for service. When a task, out of the first K tasks, leaves the system, another one immediately takes its place, putting the system in state Y K R K = V K M K Q K R K The mean time until the second task finishes is given by, p K Y K R K (V K ε K ) = p K Y K R K (τ K ) Now, another tasks enters the system, putting the system in state, Y K R K Y K R K = (V K M K Q K R K ) 2 The mean time until the third task finishes is given by, p K (Y K R K ) 2 (V K ε K ) = p K (Y K R K ) 2 (τ K ) Eventually we will reach case one again, where there will be only K tasks remaining but with here with initial state p K (Y K R K ) N-K. In general, the mean time to finish executing all the N tasks is, N K i= E(T) = p K [ (YK R K ) i ] (τ K ) + p K (Y K R K ) N-K Y K [τ K + Y K τ K- + Y K Y K- τ K Y K Y K- Y τ ] Each term of the above equation helps describe the transient behavior. When i is small, the term (Y K R K ) i gives different values for different values of i which gives different departure times for different epochs. Once i becomes large the term becomes constant which gives, the steady state solution for Jackson networks. Once the number of tasks remaining becomes less than the number of processors, we have different values of k (k < K) for different system sizes, which leads to the other transient region (draining region). 5. MODELING PARALLEL AND DISTRIBUTED SYSTEMS In studying or designing parallel and distributed systems [,2,7] one should have available a robust analytical model that includes the major parameters that determine the system performance. The success of a performance model is dependent on how accurately the model matches the system and more importantly what insights does it provide for performance analysis. The major parameters we are modeling include communication contention, geometry configurations, time needed to access different resources and data distribution. Such a model is useful to get a basic understanding of how the system performs. More details can always be added to the basic model like scheduler overheads, multitasking and task dependencies.

7 5. Application Model The target parallel application can be considered to be a set of independent, identically distributed (iid) tasks, where each task is made up of a sequence of requests for CPU, local data and remote data. The tasks are queued up (if N > K), and the first K tasks are assigned to the system. When a task is finished, it is immediately replaced by another task in the queue. The set of active tasks can communicate with each other by exchanging data from each other's disks. But we assume that tasks take the most recent updated data. The tasks run in parallel, but they must queue for service when they wish to access the same device. Each task consists of a finite number of instructions, either I/O instructions or CPU instructions. Therefore, the execution of the task consists of phases of computation, then I/O then computation, etc, until finished. We assume that during an I/O phase the task cannot start a new computational phase (no CPU-I/O overlap). Assume that T is the random variable that represents the running time of a task if it is alone in the system. Then, the mean execution time E(T) for a task can be divided into three components: T, T 2 and T 3, E(T ) is the expected time needed to execute non-i/o instructions locally (local CPU time). E(T 2 ) is the expected time needed to execute I/O instructions locally (local disk time) E(T 3 ) is the expected time needed to execute I/O instructions (remote disk time) As in [4,5], we use the following parameters to represent the above components. X = E(T ) + E(T 2 ), C * X = E(T ), ( C) * X = E(T 2 ), Y = E(T 3 ). C is the fraction of local time that the task spends at the local CPU. So based on the above parameters we can write T as: E(T) = C * X + ( C ) * X + Y. The performance model uses these parameters to calculate the effect of contention on the system performance. 5.2 System Model It is assumed that the computer system consists of a network of workstations under the control of a single scheduling mechanism [2,7]. The communication time is modeled according to a probability distribution. Two different architectures are considered: - Centralized Data Storage. In this model there is a central storage and all of the workstations will contact this central storage when they request global data. 2- Distributed Data Storage. Here, the required global data is distributed among all of the workstations.

8 5.3 Task Activity As shown in Figure each task spends some time in its local CPU doing computation then with probability p it goes to its local disk for I/O. Tasks may need to access a remote disk(s) through a communication channel with probability p 2. After finishing its remote work the task returns to its local workstation. The task will finish its execution and leave the system with probability q. Thus, the number of computational cycles is geometrically distributed with mean of (/q) cycles. The remote server could be one workstation (central system) or multiple workstations (distributed system). p 2 q p CPU Disk Comm. R. Server Figure. 5.4 Modeling a Central Cluster The central cluster consists of K workstations. One of the K workstations is the central server. A workstation can be modeled as one server or more based on the assumptions made. Here, we assume that each workstation consists of two servers (CPU and a disk). The K workstations are connected by a shared communication channel (one server). Therefore the number of servers needed to model a cluster of K workstations is 2*K +. Each workstation is assigned one task. The Kronecker-product formulation of the system would require the following number of states, D(K) = (2*K + ) K Since we assumed that the tasks are iid, we can use the reduced product. In the reduced product space we only care about the number of customers at each node. If we have M servers and N customers, the number of states will be [3], D RP ( M ) = M + M N In our case if we have K workstations, then we have 2*K + servers and at most K active customers. The number of states is,

9 D RP k ) 2 * K + = k k (, k K This amounts to a reduction of dimensions by a factor of almost K!. We still need to reduce the number of states. Since the tasks never compete for CPU s or local I/O, an equivalent model to the above description is shown in Figure 2. CPU D CPU 2 D 2 Comm R. Disk CPU k D K Figure. 2 We can consider the first server in the cluster a load dependent server representing all CPUs. Then another load dependent server can represent all of the local disks. Finally two load independent servers represent the communication channel and the central disk. Therefore, the number of servers is four, which reduces the state space to (M = 4, N = K), D RP ( k ) = K + K 3 Assume we are modeling a central cluster with five nodes with exponential service times. The following are the basic matrices (when only one task is running in the cluster). p = [,,, ], as we assume that a task starts its execution from the CPU. q = [q,,, ], as we assume that a task always leaves from the CPU. CPU Disk Comm. R.Disk p ( q) p 2( P = q ), M µ cpu = µ d µ com µ rd where, p + p 2 =

10 pv = [t cpu /q, t d * p (-q)/q,t com *p 2 (-q)/q, t rd *p 2 (-q)/q] where, t cpu = /µ cpu, t d = /µ d, t com = /µ com, t rd = /µ rd pv is the time components vector that represents the total time spent by a task in each stage of the system (for the case k = ). For example the task will spend (t cpu /q) units of time in its CPU. The M matrix is known from the architecture of the cluster but the reformation of the P matrix to the parameters given in the application model described earlier is still to be specified. The application model specifies the total time spent by a task in the cluster (with no contention) as [CX, (- C)X, BY, Y]. By using these time components we can obtain the parameters in the P matrix as follows, q = t cpu / CX p = q * ( C) X / t d * ( q) p 2 = q * Y / t rd * ( q) We should mention that M and P depend on the parameters of the architecture and the application being studied. What we have shown so far is just an example based on our assumptions to show how to set up the transient model. If we wish to use a non-exponential distribution as the service distribution for the CPU, we only need to change the formation of our matrices as shown in the next subsections Erlangian Distributions The Erlangian-m distribution describes the time it takes for a task to be served by m identical exponential servers in series. Therefore, the Erlangian- is the exponential distribution and its pdf is f(t) = µ exp(-µ t) where µ is the service rate, t cpui = /µ cpui If we wish to use the Erlangian-2 instead of the exponential distribution, then our basic matrices will be: p = [,,,, ], q = [, q,,, ] CPU CPU2 Disk Comm R.disk µ cpu p( q) p2( q) P=, M = µ cpu 2 µ D µ com µ RD The value of t cpu is still the same as before and t cpu, t cpu2 are t cpu = t cpu2 = t cpu / 2

11 If we wish to use Erlangian-m, we just replace the CPU server by m identical servers and follow the same procedure we used for Erlangian-2. We can apply the same approach for the local disk, remote disk or communication channel Hyperexponential Distributions The other class is the family of Hyperexponential distributions whose pdf is of the form, F_H m (t) :=p µ exp(-µ t) + p 2 µ 2 exp(-µ 2 t) +.+ p m µ m exp(-µ m t) = m i= pi[ µ i exp( µ it)] where, p i and µ i are real and p +.p m =. Considering the previous example but with the Hyperexponential-2 (H 2 ) as the service distribution of the CPU. The basic matrices will be: p = [p H2, -p H2,,, ], q = [q, q,,, ] CPU CPU2 Disk Comm R.disk p( q) p( q) p2( q) p2( q) P= H2 H2, M p p H2 -p -p H2 µ cpu = µ cpu 2 µ D µ com µ RD We need to calculate three parameters µ, µ 2 and p H2. Once E(T H2 ) = t cpu and the variance (σ 2 ) are chosen, one more parameter is still needed. One possibility is to fix the third parameter based on the physical system (i.e. specific value for p H2 ) or use the third moment. Another possibility is to fit the value of the pdf at. That is, f H2 () = p H2 µ + ( - p H2 ) µ 2 If we wish to use H m, we just replace the CPU server by m servers and follow the same procedure we used for H 2. We still have to show how to construct the other matrices that are to be used to represent a cluster of K workstations (P k, M k, Q k, R k ). Ξ k := { i = (α, α 2, α 3, α k ) α j k, and αj = k } K j= k K Ξ k is the set of all internal states of the system when there are k active customers there. Each m-tuple represents a state where α j is the number of tasks at server j. [M k ] ii = α µ + α 2 µ 2 + α 3 µ 3 + α k µ k = αjµ j K j=

12 [P k ] ii :=, unless [(i) (j)] has exactly two nonzero elements, one with the value and the other is. This means that only one task can move at a time. Let α a be the number of customers in the server where the task left and α b is the number of customers in the server where the task went. Then, [P k ] ij = [P] ab ii k a a [M ] α µ [R k ] ij =, unless [(j) (i)] has exactly one nonzero element and that element would have the value. Let a be the component that is not zero. [R k ] ij = p a [Q k ] ij =, unless [(i) (j)] has exactly one nonzero element and that element would have the value. Let a be the component that is not zero. [Q k ] ij = ii k a a a M q ] [ α µ 5.5 Modeling a Distributed Storage Cluster The main difference between central and distributed storage systems is that the shared data is distributed among a set of workstations instead of one central storage. So, we have to represent each disk as a separate server. We still use one load dependent server to represent all CPUs. To model a distributed cluster of K workstations, we need at least K + 2 servers (one for CPUs, one for the communication channel and K for the disks). The state space is given by, + + = k k K k D RP ) (, k K Assume we are modeling a distributed cluster with five nodes. The following are the basic matrices. p = [,,,,,, ], q = [q,,,,,, ] CPU D D2 D3 D4 D5 Comm. P= ) ( ) ( ) ( ) ( ) ( q p q p q p q p q p, M = com d d d d d cpu µ µ µ µ µ µ µ

13 K where, pi = i= V = (I P) - M - pv=[t cpu /q,t d *p (-q)/q,t d *p 2 (-q)/q,t d *p 3 (-q)/q,t d *p 4 (-q)/q, t d *p 5 (-q)/q, t com *(-q)/q] As before, pv is the vector that represents the total time spent by a task in each stage of the system. Again, the M matrix is known from the architecture of the cluster but the P matrix is constructed by using the application model. Since the shared data is distributed according to a specific data allocation algorithm, the time component spent in each node would be known (Y i is the time spent remotely on node i). If it is not known, we can assume that the shared data has been distributed uniformly. As in the central case, we use these values to construct the P matrix. q = t cpu / CX p = q * Y / t d * ( q), p 2 = q * Y / t d2 * ( q), p 3 = q * Y / t d3 * ( q) p 4 = q * Y / t d4 * ( q), p 5 = q * Y / t d5 * ( q) If we wish to use a non-exponential distribution, we just follow the same procedure as before. The other matrices, (P k, M k, Q k, R k ), are constructed exactly the same way as described in section RESULTS In this section, we show some of the results that can be obtained from the model. First, we show the different performance regions (transient, steady state and draining). Then, we demonstrate the effect of the distribution on the steady state value of the system. Finally, we study the effect of the service distribution and the performance region on some of the performance metrics (speedup and execution time prediction). We assume a parallel application consisting of 3 tasks (N = 3). We chose N = 3 to be able to see the transient and draining regions clearly. Once the steady state is reached, adding more tasks will only increase the steady state region. The average execution time per task is 2 units of time (E(T) = 2). The application is running on a 5-workstation and an 8-workstation clusters. To show the effect of the performance region on the accuracy of performance measures, we increase the number of tasks to and compare with the case of 3. The results we show are for central cluster. 6. Shared Servers with Non-Exponential Service Times We assume that the shared server (remote disk) is the non-exponential server while the dedicated servers are exponential servers. In this case Jackson networks models can not be applied but our model can be applied.

14 t t 6.. Performance Behavior In Figures 3,4, we show how the performance behavior of an application changes if we assume different service distributions. As mentioned earlier, there are three different regions in the performance characteristic of any system, the transient region, the steady state region and the draining region starts. Inter-departure Time, K = 5 2 Exp H2, C2 = H2, C2 = Task Order Figure 3. 3-task application running on a 5-workstations central cluster. In Figures 3 and 4, we compare exponential (C 2 = ), with Hyperexponential-2 with (C 2 = ) and (C 2 = 5). C 2 is the coefficient of variation. In all the cases we show, the time axis (the interdeparture time) is in log scale. 2 Inter-departure Time, K = 8 Exp H2, C2 = H2, C2 = Task Order Figure4. 3-task application running on an 8-workstation central cluster.

15 6..2 Steady State The steady state value of the system depends on the system size and the service distribution. In pervious work, we showed that to reach steady state, the number of tasks to be executed must be much greater than the number of nodes in the system. In Figure 5, we show how the steady state of the system changes with changing the distribution. The steady state interdeparture time can be calculated by: t SS = p SS V K ε K where p SS can be obtained from: p SS V K R K = p SS and p SS ε K = No Contention Contention Steady State Interdeparture Time, K = t C2 Figure 5. Steady state interdeparture time for a cluster of 8 workstations. Two cases are considered when the shared server under a heavy load and light load. It is interesting to know that the steady state value of the system is not always increasing with increasing C 2 but it reaches a minimum value then it increases again. The minimum value of the steady state depends on the system and application configurations. In case of no-contention, the service distribution does not have any effect on the steady state of the system. The reason is that there is no queueing in this case Performance Prediction One of the main objectives of having a performance model is to be able to predict the running time of the target application. In most of the cases, the exponential distribution is assumed. As we mentioned earlier, it has been shown

16 that the exponential assumption is not recommended for accurate estimations. Since, parallel applications tend to have wide range of execution times (large C 2 ). In this section, we give some examples to show the effect of using the exponential distribution to approximate the application behavior when the actual behavior is best described by a nonexponential distribution N = 3 N = Prediction Error, K = E% C2 Figure 6. Prediction error if the exponential distribution is used to approximate an application running on a 5-workstation distributed cluster when it is best described by the Hyperexponential distribution. 6 N = 3 N = Prediction Error, K = E% C2 Figure 7. Prediction error if the exponential distribution is used to approximate an application running on an 8- workstation central cluster when it is best described by the Hyperexponential distribution.

17 In Figure 6 and 7, we calculate the percentage error of the application, if the exponential distribution is assumed. The percentage error is calculated as : E = E ( Tact) app E( T exp E( Tact) app ) app *, where, E(T act ) app is the total execution time of the parallel application with the correct distribution. E(T exp ) app is the total execution time of the parallel application if the exponential distribution is assumed. Our results indicate that the exponential distribution fails to approximate distributions with large C 2. In Figures 6 and 7, we see that the error exceeds 2 % if C 2 =. The percentage error always increases with increasing C Speedup One of the reasons we use parallel systems is to speed up the computation. It is always important to know the value of the speedup that your computing resources can provide. We found that one of the common problems is that the actual speedup is less than the expected speedup from the available resources. Our results show that there are three reasons. Obviously the first reason is contention. The second reason is the operating region (i.e., steady state or transient) System Speedup, K = 5 N = 3 N = SP C2 Figure 8. The effect of service distribution on the system speedup. In Figures 8 and 9, we use the same application but with different number of tasks (3, ) and calculate the speedup for different C 2. In the case of 2 tasks, the transient region dominates. Then we increased the number of tasks to in order for the steady state region to dominate. It is clear that, if the system is working in the transient region, the speedup

18 is much less than if the system is working in the steady state region. This behavior can be explained if we return to Figures 3 and 4 and notice the effect of the transient and draining regions explained earlier. The third reason for not getting the expected speed up is using the incorrect service distribution. The exponential distribution overestimates the speedup if the actual behavior is best described by the Hyperexponential distribution. This helps explain why we do not get the expected speedup from the system. We believe that both system operating region and the service distribution are equally important in the behavior of parallel and distributed systems System Speedup, K = 8 N = 3 N = SP C2 Fig. 9. The effect of service distribution on the system speedup. 6.2 Dedicated Servers with Non-Exponential Service Times Here we assume that the dedicated servers (e.g. CPU) are the non-exponential server while the shared servers are exponential servers. In this case Jackson network models can be applied and our model is considered as an extension for Jackson networks Performance Behavior In Figure, we compare exponential, Erlangian-2 (C 2 =.5) and Hyperexponential-2 with (C 2 = 2). The application tends to behave the same for exponential and E2 with slight change in the transient region. However, there is a significant change in the transient and draining regions if the service time distribution is Hyperexponential.

19 t t System Interdeparture Time, K = 5 2 EXP E3 H Task Order Fig.. 2-task application running on a 5-workstation distributed cluster. System Interdeparture Time, K = 8 2 EXP E3 H Task Order Fig.. 3-task application running on an 8-workstation central cluster. In all of the above cases, all of the three distributions approach the same steady state value. The steady state value is the same as the value from the product form solution Performance Prediction In Figures 2 and 3, we calculate the percentage error of the application if the exponential distribution is used to approximate an application that is not exponential. Our results indicate that the exponential distribution can be considered as a good approximation if the application C 2 <. While it fails to approximate applications with large C 2. In Figure 2, we see that the error becomes 2 % if C 2 =2. For the case of C 2 =, the error becomes 46 %.

20 E% K = C 2 Figure 2. Prediction Error E% K = C 2 Figure 3. Prediction Error Speedup In Figure 4, we used the same application but with different number of tasks and calculated the speedup for different system sizes. In case of 2 tasks, the transient region is dominating. Then we increased the number of tasks to and 2 in order for the steady state region to dominate. It is clear that, if the system is working in the transient region, the speedup is much less than if the system is working in the steady state region. In Figure 5, we calculate the speedup for the same application in Figure 4 but with tasks. We use the exponential, Erlangian and Hyperexponential distributions. As we noticed earlier, the exponential distribution is still a good approximation for Erlangian distribution. On the other hand, applications with behavior similar to the Hyperexponential distribution will have a different speedup. We conclude that, the exponential distribution overestimates the speedup that we get if the application is best described by the Hyperexponential distribution.

21 9 8 N = 2 N = N = 2 System Speedup (Exponential) 7 6 SP K Figure 4. The effect of transient regions on the system speedup. 8 7 Exp E2 H2 System Speedup (N = ) 6 5 SP K Fig. 5. The effect of service distribution on the system speedup. 7. CONCLUSION In this paper, we presented an analytical performance model that can be used as a transient model for Jackson networks. Also, it can be used in cases where Jackson networks can t be applied. The model can use any service distribution and is not limited to exponential distribution. We also used the model to analyze the performance of parallel and distributed systems. Our results indicate that contention, system operating region (steady state or transient) and the

22 type of service distribution can have a significant impact on the performance behavior of parallel and distributed systems. We showed how performance metrics like speedup and execution time prediction significantly depend on contention, system operating region and service distribution. We then showed to what extent the exponential distribution can be used to approximate other service distributions. The model can be used in so many areas like dynamic scheduling, fault tolerance, resource management, etc. REFERENCES [] C. Anglano, Predicting Parallel Applications Performance on Non-dedicated Cluster Platforms 2 th ACM International Conference on Supercomputing, Melbourne, Australia, Jul 998. [2] R. Buya, High Performance Cluster Computing: Architecture and Systems, Prentice Hall PTR, NJ, 999. [3] J. P. Buzen, Queueing Network Models of Multiprogramming, Ph.D. Thesis, Harvard University, 97. [4] J. Buzen, Computational Algorithms for Closed Queueing Networks, ACM Journal on Communication, Vol. 6, No. 9, Sep 973. [5] R. Chen, A Hybrid Solution of Fork/Join Synchronization in Parallel Queues, IEEE Transactions on Parallel and Distributed Systems, Vol. 2, No. 8, pp , Aug. 2. [6] M Corrvella, L. Lipsky Long-Lasting Transient Conditions in Simulations with Heavy Tailed Workload," Proceeding of the 997 Winter Simulation Conference, Dec [7] I. Foster and Kesselman, The Grid: Blueprint for a New Computing Infrastructure, Morgan-Kaufmann, 998 [8] W. Gordon, G. Newell, Closed Queueing Systems, JORSA, Vol. 5, pp , 967. [9] J. Hatem, L. Lipsky, Buffer Problems on Telecommunications Networks, 5 th International Conference on Telecommunication Systems, Nashville, TN, 997. [] J. Jackson, Jopshop-Like Queueing Systems, J. TIMS, Vol., pp. 3-42, 963. [] Leland, T. Ott, Analysis of CPU times on 6 VAX /78 at BELLCORE, Proceeding of the International Conference on Measurements and Modeling of Computer Systems, April 986. [2] Lester Lipsky, The Importance of Power-Tail Distributions for Modeling Queueing Systems,, Operations Research, Vol. 47, No. 2, (March-April 999). [3] Lester Lipsky, "QUEUEING THEORY: A Linear Algebraic Approach", McMillan, New York, 992. [4] A. Mohamed, L. Lipsky, R. Ammar, Performance Model for a Cluster of Workstations. The 4 th International Conference on Communications in Computing, Las Vegas, NV, Jun. 23. [5] A. Mohamed, L. Lipsky, R. Ammar, Efficient Data Allocation for a Cluster of Workstations. ISCA 6 th International Conference on Parallel and Distributed Computing Systems, Reno, NV, Aug 3. [6] A. Mohamed, L. Lipsky, R. Ammar, Transient Model for Jackson Networks and its Application in Cluster Computing, Submitted to Journal of Cluster Computing, Oct. 23. [7] A. Mohamed, L. Lipsky, R. Ammar, Transient Model for Jackson Networks and its Approximation, 7 th International Conference on Principles of Distributed Systems, Dec. 23. [8] F. Basket, R. Muntz, K. Chandy, Open, closed and Mixed Networks of Queues with Different Classes of Customers, Journal of ACM, Vol. 22, pp , Apr 975. [9] A. Tehranipour, L. Lipsky, The Generalized M/G/C//N-Queue as a Model for Time-Sharing Systems, ACM-IEEE Joint Symposium on Applied Computing, Fayetteville, AR, Apr, 99. [2] K. S. Trividi, Probability & Statistics with Reliability, Queueing and Computer Science Applications, Prentice- Hall, New Jersey, 982. [2] B. Qin, H. Sholl, R. Ammar, Micro Time Cost Analysis of Parallel Computations, IEEE Transactions on Computers, Vol. 4, No. 5, pp , May 99. [22] Yan, Zhang, Song, An Effective and Practical Performance Prediction Model for Parallel Computing on Nondedicated Heterogeneous Networks of Workstations, Journal of Parallel and Distributed Computing, Vol.38, No., pp. 63-8, 996. [23] T. Zhang, Kang, L. Lipsky, On The Performance of Parallel Computers: Order Statistics and Amdahl s Law, International Journal Of Computers And Their Applications, Vol. 3, No. 2, Aug. 996.

Modeling and Performance Evaluation of Computer Systems Security Operation 1

Modeling and Performance Evaluation of Computer Systems Security Operation 1 Modeling and Performance Evaluation of Computer Systems Security Operation 1 D. Guster 2 St.Cloud State University 3 N.K. Krivulin 4 St.Petersburg State University 5 Abstract A model of computer system

More information

A novel load balancing algorithm for computational grid

A novel load balancing algorithm for computational grid International Journal of Computational Intelligence Techniques, ISSN: 0976 0466 & E-ISSN: 0976 0474 Volume 1, Issue 1, 2010, PP-20-26 A novel load balancing algorithm for computational grid Saravanakumar

More information

1 Sufficient statistics

1 Sufficient statistics 1 Sufficient statistics A statistic is a function T = rx 1, X 2,, X n of the random sample X 1, X 2,, X n. Examples are X n = 1 n s 2 = = X i, 1 n 1 the sample mean X i X n 2, the sample variance T 1 =

More information

Continued Fractions and the Euclidean Algorithm

Continued Fractions and the Euclidean Algorithm Continued Fractions and the Euclidean Algorithm Lecture notes prepared for MATH 326, Spring 997 Department of Mathematics and Statistics University at Albany William F Hammond Table of Contents Introduction

More information

Load Balancing on a Grid Using Data Characteristics

Load Balancing on a Grid Using Data Characteristics Load Balancing on a Grid Using Data Characteristics Jonathan White and Dale R. Thompson Computer Science and Computer Engineering Department University of Arkansas Fayetteville, AR 72701, USA {jlw09, drt}@uark.edu

More information

Second Order Linear Nonhomogeneous Differential Equations; Method of Undetermined Coefficients. y + p(t) y + q(t) y = g(t), g(t) 0.

Second Order Linear Nonhomogeneous Differential Equations; Method of Undetermined Coefficients. y + p(t) y + q(t) y = g(t), g(t) 0. Second Order Linear Nonhomogeneous Differential Equations; Method of Undetermined Coefficients We will now turn our attention to nonhomogeneous second order linear equations, equations with the standard

More information

A linear combination is a sum of scalars times quantities. Such expressions arise quite frequently and have the form

A linear combination is a sum of scalars times quantities. Such expressions arise quite frequently and have the form Section 1.3 Matrix Products A linear combination is a sum of scalars times quantities. Such expressions arise quite frequently and have the form (scalar #1)(quantity #1) + (scalar #2)(quantity #2) +...

More information

MATH10212 Linear Algebra. Systems of Linear Equations. Definition. An n-dimensional vector is a row or a column of n numbers (or letters): a 1.

MATH10212 Linear Algebra. Systems of Linear Equations. Definition. An n-dimensional vector is a row or a column of n numbers (or letters): a 1. MATH10212 Linear Algebra Textbook: D. Poole, Linear Algebra: A Modern Introduction. Thompson, 2006. ISBN 0-534-40596-7. Systems of Linear Equations Definition. An n-dimensional vector is a row or a column

More information

OPTIMIZED PERFORMANCE EVALUATIONS OF CLOUD COMPUTING SERVERS

OPTIMIZED PERFORMANCE EVALUATIONS OF CLOUD COMPUTING SERVERS OPTIMIZED PERFORMANCE EVALUATIONS OF CLOUD COMPUTING SERVERS K. Sarathkumar Computer Science Department, Saveetha School of Engineering Saveetha University, Chennai Abstract: The Cloud computing is one

More information

University of Lille I PC first year list of exercises n 7. Review

University of Lille I PC first year list of exercises n 7. Review University of Lille I PC first year list of exercises n 7 Review Exercise Solve the following systems in 4 different ways (by substitution, by the Gauss method, by inverting the matrix of coefficients

More information

Supplement to Call Centers with Delay Information: Models and Insights

Supplement to Call Centers with Delay Information: Models and Insights Supplement to Call Centers with Delay Information: Models and Insights Oualid Jouini 1 Zeynep Akşin 2 Yves Dallery 1 1 Laboratoire Genie Industriel, Ecole Centrale Paris, Grande Voie des Vignes, 92290

More information

MATRIX ALGEBRA AND SYSTEMS OF EQUATIONS. + + x 2. x n. a 11 a 12 a 1n b 1 a 21 a 22 a 2n b 2 a 31 a 32 a 3n b 3. a m1 a m2 a mn b m

MATRIX ALGEBRA AND SYSTEMS OF EQUATIONS. + + x 2. x n. a 11 a 12 a 1n b 1 a 21 a 22 a 2n b 2 a 31 a 32 a 3n b 3. a m1 a m2 a mn b m MATRIX ALGEBRA AND SYSTEMS OF EQUATIONS 1. SYSTEMS OF EQUATIONS AND MATRICES 1.1. Representation of a linear system. The general system of m equations in n unknowns can be written a 11 x 1 + a 12 x 2 +

More information

MATRIX ALGEBRA AND SYSTEMS OF EQUATIONS

MATRIX ALGEBRA AND SYSTEMS OF EQUATIONS MATRIX ALGEBRA AND SYSTEMS OF EQUATIONS Systems of Equations and Matrices Representation of a linear system The general system of m equations in n unknowns can be written a x + a 2 x 2 + + a n x n b a

More information

Lecture 3: Finding integer solutions to systems of linear equations

Lecture 3: Finding integer solutions to systems of linear equations Lecture 3: Finding integer solutions to systems of linear equations Algorithmic Number Theory (Fall 2014) Rutgers University Swastik Kopparty Scribe: Abhishek Bhrushundi 1 Overview The goal of this lecture

More information

QUEUING THEORY. 1. Introduction

QUEUING THEORY. 1. Introduction QUEUING THEORY RYAN BERRY Abstract. This paper defines the building blocks of and derives basic queuing systems. It begins with a review of some probability theory and then defines processes used to analyze

More information

Linear Algebra Notes

Linear Algebra Notes Linear Algebra Notes Chapter 19 KERNEL AND IMAGE OF A MATRIX Take an n m matrix a 11 a 12 a 1m a 21 a 22 a 2m a n1 a n2 a nm and think of it as a function A : R m R n The kernel of A is defined as Note

More information

CS556 Course Project Performance Analysis of M-NET using GSPN

CS556 Course Project Performance Analysis of M-NET using GSPN Performance Analysis of M-NET using GSPN CS6 Course Project Jinchun Xia Jul 9 CS6 Course Project Performance Analysis of M-NET using GSPN Jinchun Xia. Introduction Performance is a crucial factor in software

More information

Solution to Homework 2

Solution to Homework 2 Solution to Homework 2 Olena Bormashenko September 23, 2011 Section 1.4: 1(a)(b)(i)(k), 4, 5, 14; Section 1.5: 1(a)(b)(c)(d)(e)(n), 2(a)(c), 13, 16, 17, 18, 27 Section 1.4 1. Compute the following, if

More information

Resource Allocation Schemes for Gang Scheduling

Resource Allocation Schemes for Gang Scheduling Resource Allocation Schemes for Gang Scheduling B. B. Zhou School of Computing and Mathematics Deakin University Geelong, VIC 327, Australia D. Walsh R. P. Brent Department of Computer Science Australian

More information

by the matrix A results in a vector which is a reflection of the given

by the matrix A results in a vector which is a reflection of the given Eigenvalues & Eigenvectors Example Suppose Then So, geometrically, multiplying a vector in by the matrix A results in a vector which is a reflection of the given vector about the y-axis We observe that

More information

Solving Systems of Linear Equations

Solving Systems of Linear Equations LECTURE 5 Solving Systems of Linear Equations Recall that we introduced the notion of matrices as a way of standardizing the expression of systems of linear equations In today s lecture I shall show how

More information

Lecture L3 - Vectors, Matrices and Coordinate Transformations

Lecture L3 - Vectors, Matrices and Coordinate Transformations S. Widnall 16.07 Dynamics Fall 2009 Lecture notes based on J. Peraire Version 2.0 Lecture L3 - Vectors, Matrices and Coordinate Transformations By using vectors and defining appropriate operations between

More information

Row Echelon Form and Reduced Row Echelon Form

Row Echelon Form and Reduced Row Echelon Form These notes closely follow the presentation of the material given in David C Lay s textbook Linear Algebra and its Applications (3rd edition) These notes are intended primarily for in-class presentation

More information

Systems of Linear Equations

Systems of Linear Equations Systems of Linear Equations Beifang Chen Systems of linear equations Linear systems A linear equation in variables x, x,, x n is an equation of the form a x + a x + + a n x n = b, where a, a,, a n and

More information

Operation Count; Numerical Linear Algebra

Operation Count; Numerical Linear Algebra 10 Operation Count; Numerical Linear Algebra 10.1 Introduction Many computations are limited simply by the sheer number of required additions, multiplications, or function evaluations. If floating-point

More information

December 4, 2013 MATH 171 BASIC LINEAR ALGEBRA B. KITCHENS

December 4, 2013 MATH 171 BASIC LINEAR ALGEBRA B. KITCHENS December 4, 2013 MATH 171 BASIC LINEAR ALGEBRA B KITCHENS The equation 1 Lines in two-dimensional space (1) 2x y = 3 describes a line in two-dimensional space The coefficients of x and y in the equation

More information

Case Study I: A Database Service

Case Study I: A Database Service Case Study I: A Database Service Prof. Daniel A. Menascé Department of Computer Science George Mason University www.cs.gmu.edu/faculty/menasce.html 1 Copyright Notice Most of the figures in this set of

More information

Binomial lattice model for stock prices

Binomial lattice model for stock prices Copyright c 2007 by Karl Sigman Binomial lattice model for stock prices Here we model the price of a stock in discrete time by a Markov chain of the recursive form S n+ S n Y n+, n 0, where the {Y i }

More information

1 The Brownian bridge construction

1 The Brownian bridge construction The Brownian bridge construction The Brownian bridge construction is a way to build a Brownian motion path by successively adding finer scale detail. This construction leads to a relatively easy proof

More information

How To Compare Load Sharing And Job Scheduling In A Network Of Workstations

How To Compare Load Sharing And Job Scheduling In A Network Of Workstations A COMPARISON OF LOAD SHARING AND JOB SCHEDULING IN A NETWORK OF WORKSTATIONS HELEN D. KARATZA Department of Informatics Aristotle University of Thessaloniki 546 Thessaloniki, GREECE Email: [email protected]

More information

The Methodology of Application Development for Hybrid Architectures

The Methodology of Application Development for Hybrid Architectures Computer Technology and Application 4 (2013) 543-547 D DAVID PUBLISHING The Methodology of Application Development for Hybrid Architectures Vladimir Orekhov, Alexander Bogdanov and Vladimir Gaiduchok Department

More information

A STUDY OF TASK SCHEDULING IN MULTIPROCESSOR ENVIROMENT Ranjit Rajak 1, C.P.Katti 2, Nidhi Rajak 3

A STUDY OF TASK SCHEDULING IN MULTIPROCESSOR ENVIROMENT Ranjit Rajak 1, C.P.Katti 2, Nidhi Rajak 3 A STUDY OF TASK SCHEDULING IN MULTIPROCESSOR ENVIROMENT Ranjit Rajak 1, C.P.Katti, Nidhi Rajak 1 Department of Computer Science & Applications, Dr.H.S.Gour Central University, Sagar, India, [email protected]

More information

Process Scheduling. Process Scheduler. Chapter 7. Context Switch. Scheduler. Selection Strategies

Process Scheduling. Process Scheduler. Chapter 7. Context Switch. Scheduler. Selection Strategies Chapter 7 Process Scheduling Process Scheduler Why do we even need to a process scheduler? In simplest form, CPU must be shared by > OS > Application In reality, [multiprogramming] > OS : many separate

More information

Basic Queuing Relationships

Basic Queuing Relationships Queueing Theory Basic Queuing Relationships Resident items Waiting items Residence time Single server Utilisation System Utilisation Little s formulae are the most important equation in queuing theory

More information

THE NUMBER OF GRAPHS AND A RANDOM GRAPH WITH A GIVEN DEGREE SEQUENCE. Alexander Barvinok

THE NUMBER OF GRAPHS AND A RANDOM GRAPH WITH A GIVEN DEGREE SEQUENCE. Alexander Barvinok THE NUMBER OF GRAPHS AND A RANDOM GRAPH WITH A GIVEN DEGREE SEQUENCE Alexer Barvinok Papers are available at http://www.math.lsa.umich.edu/ barvinok/papers.html This is a joint work with J.A. Hartigan

More information

1 2 3 1 1 2 x = + x 2 + x 4 1 0 1

1 2 3 1 1 2 x = + x 2 + x 4 1 0 1 (d) If the vector b is the sum of the four columns of A, write down the complete solution to Ax = b. 1 2 3 1 1 2 x = + x 2 + x 4 1 0 0 1 0 1 2. (11 points) This problem finds the curve y = C + D 2 t which

More information

Exponential Approximation of Multi-Skill Call Centers Architecture

Exponential Approximation of Multi-Skill Call Centers Architecture Exponential Approximation of Multi-Skill Call Centers Architecture Ger Koole and Jérôme Talim Vrije Universiteit - Division of Mathematics and Computer Science De Boelelaan 1081 a - 1081 HV Amsterdam -

More information

SYSTEMS OF EQUATIONS AND MATRICES WITH THE TI-89. by Joseph Collison

SYSTEMS OF EQUATIONS AND MATRICES WITH THE TI-89. by Joseph Collison SYSTEMS OF EQUATIONS AND MATRICES WITH THE TI-89 by Joseph Collison Copyright 2000 by Joseph Collison All rights reserved Reproduction or translation of any part of this work beyond that permitted by Sections

More information

How To Balance In A Distributed System

How To Balance In A Distributed System 6 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 11, NO. 1, JANUARY 2000 How Useful Is Old Information? Michael Mitzenmacher AbstractÐWe consider the problem of load balancing in dynamic distributed

More information

Epipolar Geometry. Readings: See Sections 10.1 and 15.6 of Forsyth and Ponce. Right Image. Left Image. e(p ) Epipolar Lines. e(q ) q R.

Epipolar Geometry. Readings: See Sections 10.1 and 15.6 of Forsyth and Ponce. Right Image. Left Image. e(p ) Epipolar Lines. e(q ) q R. Epipolar Geometry We consider two perspective images of a scene as taken from a stereo pair of cameras (or equivalently, assume the scene is rigid and imaged with a single camera from two different locations).

More information

a 11 x 1 + a 12 x 2 + + a 1n x n = b 1 a 21 x 1 + a 22 x 2 + + a 2n x n = b 2.

a 11 x 1 + a 12 x 2 + + a 1n x n = b 1 a 21 x 1 + a 22 x 2 + + a 2n x n = b 2. Chapter 1 LINEAR EQUATIONS 1.1 Introduction to linear equations A linear equation in n unknowns x 1, x,, x n is an equation of the form a 1 x 1 + a x + + a n x n = b, where a 1, a,..., a n, b are given

More information

A Regime-Switching Model for Electricity Spot Prices. Gero Schindlmayr EnBW Trading GmbH [email protected]

A Regime-Switching Model for Electricity Spot Prices. Gero Schindlmayr EnBW Trading GmbH g.schindlmayr@enbw.com A Regime-Switching Model for Electricity Spot Prices Gero Schindlmayr EnBW Trading GmbH [email protected] May 31, 25 A Regime-Switching Model for Electricity Spot Prices Abstract Electricity markets

More information

A Robust Dynamic Load-balancing Scheme for Data Parallel Application on Message Passing Architecture

A Robust Dynamic Load-balancing Scheme for Data Parallel Application on Message Passing Architecture A Robust Dynamic Load-balancing Scheme for Data Parallel Application on Message Passing Architecture Yangsuk Kee Department of Computer Engineering Seoul National University Seoul, 151-742, Korea Soonhoi

More information

Logistic Regression. Jia Li. Department of Statistics The Pennsylvania State University. Logistic Regression

Logistic Regression. Jia Li. Department of Statistics The Pennsylvania State University. Logistic Regression Logistic Regression Department of Statistics The Pennsylvania State University Email: [email protected] Logistic Regression Preserve linear classification boundaries. By the Bayes rule: Ĝ(x) = arg max

More information

1 Review of Least Squares Solutions to Overdetermined Systems

1 Review of Least Squares Solutions to Overdetermined Systems cs4: introduction to numerical analysis /9/0 Lecture 7: Rectangular Systems and Numerical Integration Instructor: Professor Amos Ron Scribes: Mark Cowlishaw, Nathanael Fillmore Review of Least Squares

More information

Scheduling Algorithms in MapReduce Distributed Mind

Scheduling Algorithms in MapReduce Distributed Mind Scheduling Algorithms in MapReduce Distributed Mind Karthik Kotian, Jason A Smith, Ye Zhang Schedule Overview of topic (review) Hypothesis Research paper 1 Research paper 2 Research paper 3 Project software

More information

CHAPTER 3 CALL CENTER QUEUING MODEL WITH LOGNORMAL SERVICE TIME DISTRIBUTION

CHAPTER 3 CALL CENTER QUEUING MODEL WITH LOGNORMAL SERVICE TIME DISTRIBUTION 31 CHAPTER 3 CALL CENTER QUEUING MODEL WITH LOGNORMAL SERVICE TIME DISTRIBUTION 3.1 INTRODUCTION In this chapter, construction of queuing model with non-exponential service time distribution, performance

More information

Linear Programming for Optimization. Mark A. Schulze, Ph.D. Perceptive Scientific Instruments, Inc.

Linear Programming for Optimization. Mark A. Schulze, Ph.D. Perceptive Scientific Instruments, Inc. 1. Introduction Linear Programming for Optimization Mark A. Schulze, Ph.D. Perceptive Scientific Instruments, Inc. 1.1 Definition Linear programming is the name of a branch of applied mathematics that

More information

Analysis of a Production/Inventory System with Multiple Retailers

Analysis of a Production/Inventory System with Multiple Retailers Analysis of a Production/Inventory System with Multiple Retailers Ann M. Noblesse 1, Robert N. Boute 1,2, Marc R. Lambrecht 1, Benny Van Houdt 3 1 Research Center for Operations Management, University

More information

To give it a definition, an implicit function of x and y is simply any relationship that takes the form:

To give it a definition, an implicit function of x and y is simply any relationship that takes the form: 2 Implicit function theorems and applications 21 Implicit functions The implicit function theorem is one of the most useful single tools you ll meet this year After a while, it will be second nature to

More information

Keywords: Dynamic Load Balancing, Process Migration, Load Indices, Threshold Level, Response Time, Process Age.

Keywords: Dynamic Load Balancing, Process Migration, Load Indices, Threshold Level, Response Time, Process Age. Volume 3, Issue 10, October 2013 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Load Measurement

More information

Method for detecting software anomalies based on recurrence plot analysis

Method for detecting software anomalies based on recurrence plot analysis Journal of Theoretical and Applied Computer Science Vol. 6, No. 1, 2012, pp. 3-12 ISSN 2299-2634 http://www.jtacs.org Method for detecting software anomalies based on recurrence plot analysis Michał Mosdorf

More information

5.5. Solving linear systems by the elimination method

5.5. Solving linear systems by the elimination method 55 Solving linear systems by the elimination method Equivalent systems The major technique of solving systems of equations is changing the original problem into another one which is of an easier to solve

More information

Solutions to Math 51 First Exam January 29, 2015

Solutions to Math 51 First Exam January 29, 2015 Solutions to Math 5 First Exam January 29, 25. ( points) (a) Complete the following sentence: A set of vectors {v,..., v k } is defined to be linearly dependent if (2 points) there exist c,... c k R, not

More information

1.5 SOLUTION SETS OF LINEAR SYSTEMS

1.5 SOLUTION SETS OF LINEAR SYSTEMS 1-2 CHAPTER 1 Linear Equations in Linear Algebra 1.5 SOLUTION SETS OF LINEAR SYSTEMS Many of the concepts and computations in linear algebra involve sets of vectors which are visualized geometrically as

More information

Performance Analysis of a Telephone System with both Patient and Impatient Customers

Performance Analysis of a Telephone System with both Patient and Impatient Customers Performance Analysis of a Telephone System with both Patient and Impatient Customers Yiqiang Quennel Zhao Department of Mathematics and Statistics University of Winnipeg Winnipeg, Manitoba Canada R3B 2E9

More information

4 The M/M/1 queue. 4.1 Time-dependent behaviour

4 The M/M/1 queue. 4.1 Time-dependent behaviour 4 The M/M/1 queue In this chapter we will analyze the model with exponential interarrival times with mean 1/λ, exponential service times with mean 1/µ and a single server. Customers are served in order

More information

Principle of Data Reduction

Principle of Data Reduction Chapter 6 Principle of Data Reduction 6.1 Introduction An experimenter uses the information in a sample X 1,..., X n to make inferences about an unknown parameter θ. If the sample size n is large, then

More information

CITY UNIVERSITY LONDON. BEng Degree in Computer Systems Engineering Part II BSc Degree in Computer Systems Engineering Part III PART 2 EXAMINATION

CITY UNIVERSITY LONDON. BEng Degree in Computer Systems Engineering Part II BSc Degree in Computer Systems Engineering Part III PART 2 EXAMINATION No: CITY UNIVERSITY LONDON BEng Degree in Computer Systems Engineering Part II BSc Degree in Computer Systems Engineering Part III PART 2 EXAMINATION ENGINEERING MATHEMATICS 2 (resit) EX2005 Date: August

More information

α = u v. In other words, Orthogonal Projection

α = u v. In other words, Orthogonal Projection Orthogonal Projection Given any nonzero vector v, it is possible to decompose an arbitrary vector u into a component that points in the direction of v and one that points in a direction orthogonal to v

More information

Linear Programming. March 14, 2014

Linear Programming. March 14, 2014 Linear Programming March 1, 01 Parts of this introduction to linear programming were adapted from Chapter 9 of Introduction to Algorithms, Second Edition, by Cormen, Leiserson, Rivest and Stein [1]. 1

More information

SOLVING LINEAR SYSTEMS

SOLVING LINEAR SYSTEMS SOLVING LINEAR SYSTEMS Linear systems Ax = b occur widely in applied mathematics They occur as direct formulations of real world problems; but more often, they occur as a part of the numerical analysis

More information

1 Review of Newton Polynomials

1 Review of Newton Polynomials cs: introduction to numerical analysis 0/0/0 Lecture 8: Polynomial Interpolation: Using Newton Polynomials and Error Analysis Instructor: Professor Amos Ron Scribes: Giordano Fusco, Mark Cowlishaw, Nathanael

More information

MATH2210 Notebook 1 Fall Semester 2016/2017. 1 MATH2210 Notebook 1 3. 1.1 Solving Systems of Linear Equations... 3

MATH2210 Notebook 1 Fall Semester 2016/2017. 1 MATH2210 Notebook 1 3. 1.1 Solving Systems of Linear Equations... 3 MATH0 Notebook Fall Semester 06/07 prepared by Professor Jenny Baglivo c Copyright 009 07 by Jenny A. Baglivo. All Rights Reserved. Contents MATH0 Notebook 3. Solving Systems of Linear Equations........................

More information

MEASURING PERFORMANCE OF DYNAMIC LOAD BALANCING ALGORITHMS IN DISTRIBUTED COMPUTING APPLICATIONS

MEASURING PERFORMANCE OF DYNAMIC LOAD BALANCING ALGORITHMS IN DISTRIBUTED COMPUTING APPLICATIONS MEASURING PERFORMANCE OF DYNAMIC LOAD BALANCING ALGORITHMS IN DISTRIBUTED COMPUTING APPLICATIONS Priyesh Kanungo 1 Professor and Senior Systems Engineer (Computer Centre), School of Computer Science and

More information

Performance metrics for parallel systems

Performance metrics for parallel systems Performance metrics for parallel systems S.S. Kadam C-DAC, Pune [email protected] C-DAC/SECG/2006 1 Purpose To determine best parallel algorithm Evaluate hardware platforms Examine the benefits from parallelism

More information

Solving Systems of Linear Equations Using Matrices

Solving Systems of Linear Equations Using Matrices Solving Systems of Linear Equations Using Matrices What is a Matrix? A matrix is a compact grid or array of numbers. It can be created from a system of equations and used to solve the system of equations.

More information

Task Scheduling in Hadoop

Task Scheduling in Hadoop Task Scheduling in Hadoop Sagar Mamdapure Munira Ginwala Neha Papat SAE,Kondhwa SAE,Kondhwa SAE,Kondhwa Abstract Hadoop is widely used for storing large datasets and processing them efficiently under distributed

More information

1 Determinants and the Solvability of Linear Systems

1 Determinants and the Solvability of Linear Systems 1 Determinants and the Solvability of Linear Systems In the last section we learned how to use Gaussian elimination to solve linear systems of n equations in n unknowns The section completely side-stepped

More information

Mathematics Pre-Test Sample Questions A. { 11, 7} B. { 7,0,7} C. { 7, 7} D. { 11, 11}

Mathematics Pre-Test Sample Questions A. { 11, 7} B. { 7,0,7} C. { 7, 7} D. { 11, 11} Mathematics Pre-Test Sample Questions 1. Which of the following sets is closed under division? I. {½, 1,, 4} II. {-1, 1} III. {-1, 0, 1} A. I only B. II only C. III only D. I and II. Which of the following

More information

Load Balancing and Switch Scheduling

Load Balancing and Switch Scheduling EE384Y Project Final Report Load Balancing and Switch Scheduling Xiangheng Liu Department of Electrical Engineering Stanford University, Stanford CA 94305 Email: [email protected] Abstract Load

More information

15.062 Data Mining: Algorithms and Applications Matrix Math Review

15.062 Data Mining: Algorithms and Applications Matrix Math Review .6 Data Mining: Algorithms and Applications Matrix Math Review The purpose of this document is to give a brief review of selected linear algebra concepts that will be useful for the course and to develop

More information

1 Finite difference example: 1D implicit heat equation

1 Finite difference example: 1D implicit heat equation 1 Finite difference example: 1D implicit heat equation 1.1 Boundary conditions Neumann and Dirichlet We solve the transient heat equation ρc p t = ( k ) (1) on the domain L/2 x L/2 subject to the following

More information

Linear Maps. Isaiah Lankham, Bruno Nachtergaele, Anne Schilling (February 5, 2007)

Linear Maps. Isaiah Lankham, Bruno Nachtergaele, Anne Schilling (February 5, 2007) MAT067 University of California, Davis Winter 2007 Linear Maps Isaiah Lankham, Bruno Nachtergaele, Anne Schilling (February 5, 2007) As we have discussed in the lecture on What is Linear Algebra? one of

More information

Linear Equations ! 25 30 35$ & " 350 150% & " 11,750 12,750 13,750% MATHEMATICS LEARNING SERVICE Centre for Learning and Professional Development

Linear Equations ! 25 30 35$ &  350 150% &  11,750 12,750 13,750% MATHEMATICS LEARNING SERVICE Centre for Learning and Professional Development MathsTrack (NOTE Feb 2013: This is the old version of MathsTrack. New books will be created during 2013 and 2014) Topic 4 Module 9 Introduction Systems of to Matrices Linear Equations Income = Tickets!

More information

General Framework for an Iterative Solution of Ax b. Jacobi s Method

General Framework for an Iterative Solution of Ax b. Jacobi s Method 2.6 Iterative Solutions of Linear Systems 143 2.6 Iterative Solutions of Linear Systems Consistent linear systems in real life are solved in one of two ways: by direct calculation (using a matrix factorization,

More information

The Green Index: A Metric for Evaluating System-Wide Energy Efficiency in HPC Systems

The Green Index: A Metric for Evaluating System-Wide Energy Efficiency in HPC Systems 202 IEEE 202 26th IEEE International 26th International Parallel Parallel and Distributed and Distributed Processing Processing Symposium Symposium Workshops Workshops & PhD Forum The Green Index: A Metric

More information

9.2 Summation Notation

9.2 Summation Notation 9. Summation Notation 66 9. Summation Notation In the previous section, we introduced sequences and now we shall present notation and theorems concerning the sum of terms of a sequence. We begin with a

More information

7 Gaussian Elimination and LU Factorization

7 Gaussian Elimination and LU Factorization 7 Gaussian Elimination and LU Factorization In this final section on matrix factorization methods for solving Ax = b we want to take a closer look at Gaussian elimination (probably the best known method

More information

Stochastic Processes and Queueing Theory used in Cloud Computer Performance Simulations

Stochastic Processes and Queueing Theory used in Cloud Computer Performance Simulations 56 Stochastic Processes and Queueing Theory used in Cloud Computer Performance Simulations Stochastic Processes and Queueing Theory used in Cloud Computer Performance Simulations Florin-Cătălin ENACHE

More information

Similarity and Diagonalization. Similar Matrices

Similarity and Diagonalization. Similar Matrices MATH022 Linear Algebra Brief lecture notes 48 Similarity and Diagonalization Similar Matrices Let A and B be n n matrices. We say that A is similar to B if there is an invertible n n matrix P such that

More information

IEOR 6711: Stochastic Models, I Fall 2012, Professor Whitt, Final Exam SOLUTIONS

IEOR 6711: Stochastic Models, I Fall 2012, Professor Whitt, Final Exam SOLUTIONS IEOR 6711: Stochastic Models, I Fall 2012, Professor Whitt, Final Exam SOLUTIONS There are four questions, each with several parts. 1. Customers Coming to an Automatic Teller Machine (ATM) (30 points)

More information

The Matrix Elements of a 3 3 Orthogonal Matrix Revisited

The Matrix Elements of a 3 3 Orthogonal Matrix Revisited Physics 116A Winter 2011 The Matrix Elements of a 3 3 Orthogonal Matrix Revisited 1. Introduction In a class handout entitled, Three-Dimensional Proper and Improper Rotation Matrices, I provided a derivation

More information

Applying Active Queue Management to Link Layer Buffers for Real-time Traffic over Third Generation Wireless Networks

Applying Active Queue Management to Link Layer Buffers for Real-time Traffic over Third Generation Wireless Networks Applying Active Queue Management to Link Layer Buffers for Real-time Traffic over Third Generation Wireless Networks Jian Chen and Victor C.M. Leung Department of Electrical and Computer Engineering The

More information

On Correlating Performance Metrics

On Correlating Performance Metrics On Correlating Performance Metrics Yiping Ding and Chris Thornley BMC Software, Inc. Kenneth Newman BMC Software, Inc. University of Massachusetts, Boston Performance metrics and their measurements are

More information

Parallel Algorithm for Dense Matrix Multiplication

Parallel Algorithm for Dense Matrix Multiplication Parallel Algorithm for Dense Matrix Multiplication CSE633 Parallel Algorithms Fall 2012 Ortega, Patricia Outline Problem definition Assumptions Implementation Test Results Future work Conclusions Problem

More information

Proposed Pricing Model for Cloud Computing

Proposed Pricing Model for Cloud Computing Computer Science and Information Technology 2(4): 211-218, 2014 DOI: 10.13189/csit.2014.020405 http://www.hrpub.org Proposed Pricing Model for Cloud Computing Muhammad Adeel Javaid Member Vendor Advisory

More information

Characterizing Task Usage Shapes in Google s Compute Clusters

Characterizing Task Usage Shapes in Google s Compute Clusters Characterizing Task Usage Shapes in Google s Compute Clusters Qi Zhang 1, Joseph L. Hellerstein 2, Raouf Boutaba 1 1 University of Waterloo, 2 Google Inc. Introduction Cloud computing is becoming a key

More information

A Load Balancing Algorithm based on the Variation Trend of Entropy in Homogeneous Cluster

A Load Balancing Algorithm based on the Variation Trend of Entropy in Homogeneous Cluster , pp.11-20 http://dx.doi.org/10.14257/ ijgdc.2014.7.2.02 A Load Balancing Algorithm based on the Variation Trend of Entropy in Homogeneous Cluster Kehe Wu 1, Long Chen 2, Shichao Ye 2 and Yi Li 2 1 Beijing

More information

STUDY AND SIMULATION OF A DISTRIBUTED REAL-TIME FAULT-TOLERANCE WEB MONITORING SYSTEM

STUDY AND SIMULATION OF A DISTRIBUTED REAL-TIME FAULT-TOLERANCE WEB MONITORING SYSTEM STUDY AND SIMULATION OF A DISTRIBUTED REAL-TIME FAULT-TOLERANCE WEB MONITORING SYSTEM Albert M. K. Cheng, Shaohong Fang Department of Computer Science University of Houston Houston, TX, 77204, USA http://www.cs.uh.edu

More information

Load Balancing Algorithm Based on Services

Load Balancing Algorithm Based on Services Journal of Information & Computational Science 10:11 (2013) 3305 3312 July 20, 2013 Available at http://www.joics.com Load Balancing Algorithm Based on Services Yufang Zhang a, Qinlei Wei a,, Ying Zhao

More information

Performance Analysis of AQM Schemes in Wired and Wireless Networks based on TCP flow

Performance Analysis of AQM Schemes in Wired and Wireless Networks based on TCP flow International Journal of Soft Computing and Engineering (IJSCE) Performance Analysis of AQM Schemes in Wired and Wireless Networks based on TCP flow Abdullah Al Masud, Hossain Md. Shamim, Amina Akhter

More information

Linear Algebra Review. Vectors

Linear Algebra Review. Vectors Linear Algebra Review By Tim K. Marks UCSD Borrows heavily from: Jana Kosecka [email protected] http://cs.gmu.edu/~kosecka/cs682.html Virginia de Sa Cogsci 8F Linear Algebra review UCSD Vectors The length

More information