Uploaded on

 

More in: Education , Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
60
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
1
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Module 5 Slide 1 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Module 5: Case Studies in Modeling using Stochastic Activity Networks
  • 2. Module 5 Slide 2 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Module Goals •  Learn, by example, how to build system availability/reliability/performance models using SANs •  Understand basic steps in model creation –  Understand how “tricks” from probability theory are used to simplify models –  Understand how to convert a problem description into a model with multiple SANs and a composed model •  Learn the way to approximate many non-exponential distributions using Erlang and Hyperexponential distributions
  • 3. Module 5 Slide 3 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Outline •  Introduction •  Basic approaches for building models •  Database system example •  “Faulty multiprocessor” example •  Representing non-exponential distributions as exponentials
  • 4. Module 5 Slide 4 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Introduction •  Modeling is an “art,” and successful model creation and solution depend on knowledge of many different things, including: –  The aim of the modeling –  The desired measures –  The system being modeled –  The required level of detail/abstraction –  The way to select the “best” solution method from a set of solution methods •  Best way to learn is by example and experience
  • 5. Module 5 Slide 5 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Basic Approach for Building a SAN/Composed Model (once level of detail/abstraction and measures are known) 1. Determine how to break the system into multiple SAN models, and determine the general structure of the composed model. 2. Determine the precise interfaces among the multiple SAN submodels. –  Determine the places they will share. –  Determine the meaning of tokens in these places. 3. Build each SAN model. 4. Connect the SAN models together to form a composed model 5. Specify the desired measures on the composed model. 6. Debug and refine model.
  • 6. Module 5 Slide 6 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Basic Approach for Building SAN Models 1. Determine the “state” that needs to be represented. 2. Determine the places that will be used to represent this state, and the meaning of tokens in each place. 3. Determine the “actions” that can change the state of the system, as represented in the model, and represent them as activities. 4. Determine when each action begins, and represent these conditions as input gates. 5. Determine how each activity changes the state, and represent these changes as gates.
  • 7. Module 5 Slide 7 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Example Systems and Models •  We consider two simple examples in this session, to illustrate the procedure for building and solving models. 1. Simple Database System [Sanders 92] –  Adapted from IBM Research Center Model –  Used to illustrate model composition –  SANs are purposely very simple, and could be enhanced –  Computes steady-state instant-of-time availability 2. “Faulty” Multiprocessor [UltraSAN manual] –  Simple example to illustrate construction of SAN from textual description –  Also illustrates construction of a variety of performance, dependability, and performability variables
  • 8. Module 5 Slide 8 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Simple Distributed Database System [Sanders 92] •  Goals: –  Determine steady-state instant-of-time availability –  Determine system reliability as a function of time •  System architecture: –  Six disk clusters –  Two sets of disk controllers –  Two processors •  Data on each disk is replicated such that 1/3 of the data are on each of the other three disks in the same cluster. •  Disk clusters are placed into two groups; each group contains three disk clusters. •  One set of controllers is connected to each group of disk clusters. •  Each processor can access the data on any disk cluster through the disk controllers.
  • 9. Module 5 Slide 9 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Simple Database System .... .... spare processor disk controllers disk cluster 1 disk cluster 3 disk cluster 4 disk cluster 6
  • 10. Module 5 Slide 10 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Criteria for Proper Operation •  Service is considered proper if at least one processor can access the data in each disk cluster •  Thus, we require that: –  At least one processor must be operational –  There must be at least one disk controller in each set of controllers –  At least three disks in each disk cluster must be operational
  • 11. Module 5 Slide 11 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Repair Assumptions •  System repair carried out by having one repair facility for each disk cluster, one for each set of controllers, and one for the two processors. •  Components can continue to fail even when the system is in a failed state. •  Each repair facility repairs one component at a time. •  Repair on a given component starts as soon as its corresponding repair facility becomes free. •  If system is in a failed state, it goes back to a working state when enough components have been repaired for the system to be in an operational state. •  For numerical solution, failure rates are as listed below. •  Repair rate of disks varied between 1 and 4 repairs per hour. •  Repair rate of processors and controllers fixed at 1 per hour. Component Failure rate (per hour) Repair rate (per hour) Processor 1/2000 1 Disk controller 1/2000 1 Disk 1/6000 1
  • 12. Module 5 Slide 12 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Composed Model: database_a Rep1 Rep2 Join1 controllers processors Join2 disks Node Reps Common Places Rep1 3 system_fail Rep2 2 system_fail Composed Model Rep Node Definitions for Project database_a: Node Common Places Subtree 1 2Join1 system_fail   Subtree 1 2Join2 system_fail   Composed Model Join Node Definitions for Project database_a:
  • 13. Module 5 Slide 13 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Reward Variable Definitions for Project database_a Variable Definition availability Rate rewards Subnet = processors Predicate: MARK(system_fail) == 0 Function: 1.0 Impulse rewards none Simulator statistics Estimate mean Confidence Level = 0.95 Relative Confidence Interval = 0.10 Initial Transient = 1000 Batch Size = 1000 Variable type = Instant of Time Start of Interval = 10.0 Length of Interval = 100.0 (Note that reward variable is defined on a non-replicated model, so desired value (1) does not need to be divided by the number of replicas.)
  • 14. Module 5 Slide 14 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Study Editor Range Definitions for Project database_a Study Variable Type Range Increment Add./Mult. availability repair_rate double [1, 4] 1 Add.
  • 15. Module 5 Slide 15 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. SAN Model: processors processors_working processor_failure OG1 OG2 processors_failed processor_repair system_fail Place Initial Marking processors_working 2 Non-zero or Variable Initial Markings for SAN Model processors:
  • 16. Module 5 Slide 16 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Activity Time Distributions and Output Gate Definitions for SAN Model processors Activity Distribution Parameter values exponentialprocessor_failure rate 1/2000.0 * MARK(processors_working) exponentialprocessor_repair rate 1.0 Gate Definition OG1 MARK(processors_failed) ++; if(MARK(processors_working) == 0) MARK(system_fail) ++; OG2 MARK(processors_working) ++; if(MARK(processors_working) == 1) MARK(system_fail) − −;
  • 17. Module 5 Slide 17 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. SAN Model: disks disks_working disk_failure OG1 OG2 disks_failed disk_repair system_fail Place Initial Marking disks_working 4 Non-zero or Variable Initial Markings for SAN Model disks:
  • 18. Module 5 Slide 18 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Activity Time Distributions and Output Gate Definitions for SAN Model disks Activity Distribution Parameter values exponentialdisk_failure rate 1/6000.0 * MARK(disks_working) exponentialdisk_repair rate GLOBAL_D(repair_rate) Gate Definition OG1 MARK(disks_failed) ++; if (MARK(disks_working) == 2) MARK(system_fail) ++; OG2 MARK(disks_working) ++; if (MARK(disks_working) == 3) MARK(system_fail) − −;
  • 19. Module 5 Slide 19 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. SAN model: controllers controllers_working controller_failure OG1 OG2 controllers_failed controller_repair system_fail Place Initial Marking controllers_working 2 Non-zero or Variable Initial Markings for SAN Model controllers:
  • 20. Module 5 Slide 20 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Activity Time Distributions and Output Gate Definitions for SAN Model controllers Activity Distribution Parameter values exponentialcontroller_failure rate 1/2000.0 * MARK(controllers_working) exponentialcontroller_repair rate 1.0 Gate Definition OG1 MARK(controllers_failed) ++; if(MARK(controllers_working) == 0) MARK(system_fail) ++; OG2 MARK(controllers_working) ++; if(MARK(controllers_working) == 1) MARK(system_fail) − −;
  • 21. Module 5 Slide 21 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Results •  Steady-state Instant-of-time availability –  Generate reduced base model from SAN model just described •  16,695 states –  System availability was calculated to be .999997 •  System reliability –  Use the same reward structure as for availability –  Change the SAN submodels that represent the individual system components to disable repair. –  Reliability (which is an interval-of-time measure) can then be determined using an instant-of-time solution at the end of the interval (since system will then be down at the end of the interval if it fails anytime during the interval).
  • 22. Module 5 Slide 22 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Reliability Results: Default Configuration •  Database system reliability vs. Mission Time (Reliability obtained by removing repair activities, and looking at probability system operational at end of interval)
  • 23. Module 5 Slide 23 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Reliability Results: Design Variations •  Database System Reliability for Different System Configurations Design description State-space size Reliability (5-week mission time) 6 disk clusters, 2 controller sets, and 2 processors 268 0.425082 6 disk clusters + 1 spare disk per cluster, 2 controller sets, and 2 processors 1510 0.650810 6 disk clusters + 1 spare disk per cluster, 2 controller sets + 1 spare controller per set, and 2 processors 3075 0.769799
  • 24. Module 5 Slide 24 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. “Faulty Multiprocessor” Example [UltraSAN Manual] •  A simple example to illustrate the construction of SAN models and definition of a variety of performance, dependability and performability measures on such a model. •  At a high level, system comprises: –  A workload generator, which generates tasks as a Poisson process –  A finite global queue, which holds tasks waiting to be processed –  Multiple processors, which can process one or two tasks at a time •  Goal is to determine: –  Probability that a buffer overflow occurs –  System utilization –  Number of tasks in queue –  Fraction of time spent in I/O –  Number of tasks processed in some interval –  Time between I/O completions –  Time between processor completions
  • 25. Module 5 Slide 25 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Design Specification •  Tasks for processors arrive as a Poisson process with rate arr_rate. •  Arriving tasks are put in a queue with capacity size. •  If the queue is full, the task is rejected. •  Processors remove tasks from the queue in a FIFO manner, which takes an exponentially distributed time with mean value 1/access_rate. •  Processors process tasks in an exponentially distributed time with mean 1/ proc_rate. •  They can also process a second task simultaneously, completing both tasks at the same time. •  If only one task is processed at a time, correct processing is guaranteed. If two tasks are processed at a time, there is a chance of a processing error: –  With probability ok_prob, both tasks are processed correctly –  With probability one_error_prob, one task is processed incorrectly –  With probability 1 - ok_prob - one_error_prob, both tasks are processed incorrectly.
  • 26. Module 5 Slide 26 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Design Specification, cont. •  When a task is processed correctly, it is sent to be output. •  I/O time is exponentially distributed with rate io_rate, and happens sequentially on a per-processor basis. •  Processing may not resume on a processor until all I/O is complete. •  A task that is processed incorrectly remains in the processor to be reprocessed.
  • 27. Module 5 Slide 27 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Composed Model: faulty_proc Rep1 processor buffer Join1 Composed Model Rep Node Definitions for Project faulty_proc: Node Common Places Subtree 1 2Join1 queue   Composed Model Join Node Definitions for Project faulty_proc: Node Reps Common Places Rep1 3 queue
  • 28. Module 5 Slide 28 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. SAN Model: buffer arrival queue capacity size Place Initial Marking size 5 Non-zero or Variable Initial Markings for SAN Model buffer:
  • 29. Module 5 Slide 29 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Activity Time Distributions and Input Gate Definitions for SAN Model buffer Activity Distribution Parameter values exponentialarrival rate GLOBAL_D(arr_rate) Gate Definition Predicate /* has the buffer capacity been reached? */ MARK(queue) < MARK(size) capacity Function /* do nothing */ ;
  • 30. Module 5 Slide 30 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. SAN Model: processor queue access available num_tasks processing correct done I_O check_done ready one fail Initial marking = 1 Place Initial Marking ready 1 Non-zero or Variable Initial Markings for SAN Model processor: Jobs waiting for IO completion Not waiting on I/O completion # tasks being processed
  • 31. Module 5 Slide 31 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Activity Time Distributions and Case Probabilities for SAN Model processor Activity Distribution Parameter values exponentialI_O rate GLOBAL_D(io_rate) exponentialaccess rate GLOBAL_D(access_rate) exponentialprocessing rate GLOBAL_D(proc_rate) Activity Case Probability 1 if (MARK(num_tasks) == 1) return(1.0); else return(GLOBAL_D(ok_prob)); 2 if (MARK(num_tasks) == 1) return(ZERO); else return(GLOBAL_D(one_error_prob)); processing 3 if (MARK(num_tasks) == 1) return(ZERO); else return(1.0 − GLOBAL_D(ok_prob) − GLOBAL_D(one_error_prob));
  • 32. Module 5 Slide 32 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Input and Output Gate Definitions for SAN Model processor Gate Definition Predicate MARK(num_tasks) < 2 available Function /* do nothing */ ; Gate Definition check_done /* when I/O done, reset ready */ if (MARK(done) == 0) MARK(ready) = 1; correct /* put one or two tasks in done, clear num_tasks */ MARK(done) = MARK(num_tasks) + 1; MARK(num_tasks) = 0; +1 because one num_tasks token removed on activity completion
  • 33. Module 5 Slide 33 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Study Editor Definitions for Project faulty_proc Study Experiment Variable Type Value vary_error_prob exp1 access_rate arr_rate io_rate ok_prob one_error_prob double double double double double 20 10 10 0.75 0.24 exp2 access_rate arr_rate io_rate ok_prob one_error_prob double double double double double 20 10 7.5 0.77 0.21 Study Variable Type Range Increment Add./Mult. vary_arrival_rate access_rate arr_rate io_rate ok_prob one_error_prob double double double double double 20 [5, 30] 10 0.81 0.18 - 5 - - - - Add. - - - Set Definitions: Range Definitions:
  • 34. Module 5 Slide 34 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Reward Variable Definitions for Project faulty_proc Variable Definition probability non-blocking Rate rewards Subnet = buffer Predicate: MARK(queue) < MARK(size) Function: 1 Impulse rewards none Simulator statistics Estimate mean Estimate variance Confidence Level = 0.95 Relative Confidence Interval = 0.10 Initial Transient = 1000 Batch Size = 1000 Variable type = Instant of Time Start of Interval = 100.0 Length of Interval = 100.0
  • 35. Module 5 Slide 35 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Reward Variable Definitions for Project faulty_proc, cont. Variable Definition utilization Rate rewards Subnet = processor Predicate: MARK(num_tasks) > 0 && MARK(ready) == 1 Function: 1.0 / 3 Impulse rewards none Simulator statistics Estimate mean Estimate variance Confidence Level = 0.95 Relative Confidence Interval = 0.10 Initial Transient = 1000 Batch Size = 1000 Variable type = Instant of Time Start of Interval = 100.0 Length of Interval = 100.0
  • 36. Module 5 Slide 36 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Reward Variable Definitions for Project faulty_proc, cont. Variable Definition number of tasks in queue Rate rewards Subnet = buffer Predicate: 1 Function: MARK(queue) Impulse rewards none Simulator statistics Estimate mean Estimate variance Confidence Level = 0.95 Relative Confidence Interval = 0.10 Initial Transient = 1000 Batch Size = 1000 Variable type = Instant of Time Start of Interval = 100.0 Length of Interval = 100.0
  • 37. Module 5 Slide 37 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Reward Variable Definitions for Project faulty_proc, cont. Variable Definition fraction of time in I_O Rate rewards Subnet = processor Predicate: MARK(ready) == 0 Function: 1.0 / 3 Impulse rewards none Simulator statistics Estimate mean Estimate variance Confidence Level = 0.95 Relative Confidence Interval = 0.10 Initial Transient = 1000 Batch Size = 1000 Variable type = Instant of Time Start of Interval = 100.0 Length of Interval = 100.0
  • 38. Module 5 Slide 38 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Reward Variable Definitions for Project faulty_proc, cont. Variable Definition number of tasks processed Rate rewards none Impulse rewards Subnet = processor activity = I_O, value = 1 Simulator statistics Estimate mean Estimate variance Confidence Level = 0.95 Relative Confidence Interval = 0.10 Initial Transient = 1000 Batch Size = 1000 Variable type = Interval of Time Start of Interval = 0.0 Length of Interval = 100.0
  • 39. Module 5 Slide 39 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Activity Variable Definitions for Project faulty_proc Variable Definition processor I_O Simulator statistics Estimate mean and variance Confidence Level = 0.95 Relative Confidence Interval = 0.10 Initial Transient = 1000 Batch Size = 1000 First Completion = 0 Last Completion = 100 processor processing Simulator statistics Estimate mean and variance Confidence Level = 0.95 Relative Confidence Interval = 0.10 Initial Transient = 1000 Batch Size = 1000 First Completion = 0 Last Completion = 100 Need to describe metric being estimated
  • 40. Module 5 Slide 40 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Approximating Non-Exponentials with Exponentials Sometimes important behaviors do not match the exponential distribution. For example, some behaviors take nearly a fixed amount of time, and others may have a larger variance. At the cost of additional states, it is possible to approximate some other distributions. These approximations are called phase-type distributions. The distribution of a phase-type is the time to reach some state in a Markov chain. (This will become clear in a moment.) Two useful phase types are the Erlang distribution and the hyperexponential distribution.
  • 41. Module 5 Slide 41 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Erlang - k Distribution An Erlang-k distribution with rate λ is the sum of k independent exponential random variables with rate kλ. Let X be Erlang with rate λ, and Y be exponential with rate λ. in λ 1 2 k-1 out...λ λ λ λ Erlang random variables are useful for approximating random variables with variances less than those of exponentials. [ ] ( ) 2 1 1 λ = λ = k XVar XE [ ] ( ) 2 1 1 λ = λ = YVar YE
  • 42. Module 5 Slide 42 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. SAN Representation of Erlang with K Stages Gate Definition Predicate: MARK(p) > 0 Function: if (MARK(e) >= GLOBAL_S(K)-1) { MARK(p)--; MARK(e) = 0; MARK(q)++; } else g MARK(e)++; Note: Activity a now has memory! λ p qa ⇒ p qa g e λ Put k tokens in p Put 1 token in p Mark completion Mark stage completed
  • 43. Module 5 Slide 43 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Hyperexponential The converse of the Erlang is the hyperexponential. A hyperexponential is formed by probabilistically choosing a state i (with probability αi) and then leaving with rate λi. This can be used to produce a random variable with a larger variance than an exponential with the same mean. ( ) [ ] 2 11 2 1 1 2 0       λ α − λ α = λ α = ≥λα= ∑∑ ∑ ∑ == = = λ− n i i i n i i i n i i i n i t iiX )X(Var XE .tetf i λ1 1 2 k out ... in λ2 λκ α1 α2 ακ
  • 44. Module 5 Slide 44 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Hyperexponentials in SANs Parameters for hyperexponentials should be chosen with care p q ⇒ p q ... α1 = .5 λ1 = 10 α2 = .5 λ2 = .526316 λ1 λ2 λk ...
  • 45. Module 5 Slide 45 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Phase Type Distributions There is a generalization of the Erlang and Hyper-exponential distributions, call “Phase Type” distributions. Simply put, it is the distribution of the time to absorption into a given state (normally 0) in a CTMC Transition matrix for a phase type distribution with n stages is • T an nxn matrix describing transitions among transient states • t column vector of size n giving transition rates into 0 • τ an n-element vector of the initial distribution of state in transient states Charateristics where e is a column vector of 1’s
  • 46. Module 5 Slide 46 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Phase Type Distributions : Examples Examination of Q shows that • Hypoexponential enters absorbing state only from state 4 • Hyperexponential enters one state, then is absorbed • Coxian moves along stages, but at any one of them may exit to be absorbed
  • 47. Module 5 Slide 47 ECE/CS 541: Computer System Analysis. Copyright © 2006 William H. Sanders. All rights reserved. Do not copy or distribute to others without the permission of the author. Summary •  Reviewed general procedures for building SAN models •  Looked at two examples •  Looked at ways to build non-exponential distributions from exponential distributions