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

Tài liệu Queueing mạng lưới và chuỗi Markov P12 ppt

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

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

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Queueing Networks and Markov Chains
Tác giả Gunter Bolch, Stefan Greiner, Hermann de Meer, Kishor S. Trivedi
Trường học University of Erlangen-Nürnberg
Chuyên ngành Performance Modeling and Analysis
Thể loại Sách tham khảo
Năm xuất bản 1998
Thành phố Nuremberg
Định dạng
Số trang 31
Dung lượng 5,3 MB

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

Nội dung

l Exact and/or approximate solution of product-form queueing networks.. For a limited class of queueing networks see Chapters 8 and 9, so-called product-form queueing networks, efficien

Trang 1

12 Performance Analysis

Tools

Performance analysis tools have acquired increased importance due to increa- sed complexity of modern systems It is often the case that system mea- surements are not available or are very difficult to get In such cases the development and the solution of a system model is an effective method of performance assessment Software tools that support performance modeling studies provide one or more of the following solution methods:

l Discrete-event simulation

l Generation and (steady-state and/or transient) solution of CTMC and DTMC

l Exact and/or approximate solution of product-form queueing networks

l Approximate solution of non-product-form queueing networks

l Hierarchical (multilevel) models combining one or more of the preceding methods

If we use DES, then the system behavior can be described very accurately, but computation time and resource needs are usually extremely high In this book queueing network solutions as well as Markov chain analysis methods have been introduced to analyze system models Queueing networks are very easy to understand and allow a very compact system description For a limited class of queueing networks (see Chapters 8 and 9), so-called product-form queueing networks, efficient solution algorithms (such as convolution, MVA, SCAT) are available But many queueing networks do not fulfill the product- form requirements In this case approximation methods can be used (see

571

Queueing Networks and Markov Chains

Gunter Bolch, Stefan Greiner, Hermann de Meer, Kishor S Trivedi

Copyright  1998 John Wiley & Sons, Inc Print ISBN 0-471-19366-6 Online ISBN 0-471-20058-1

Trang 2

Chapter 10) It is also possible to develop a multilevel model to approximately solve a non-product-form queueing network If the approximation methods are not accurate enough or cannot be applied to a certain problem, as can, for example, be the case when we have non-exponentially distributed service times or when blocking is allowed in the network, then DES or CTMC is used

As we have seen in earlier chapters, the state space for even simple systems can

be huge and grows exponentially with the number of nodes and the number

of jobs in the network Nevertheless, due to increasing computational power and better solution algorithms, CTMCs have acquired greater importance For the solution of our models we realize that:

l The application of exact or approximate solution algorithms for queue- ing networks is very cumbersome, error prone, and time consuming and hence not feasible to carry out by hand calculations

l The generation and solution of the CTMC/DTMC for even small sys- tems by hand is nearly impossible

We therefore need tools that can automatically generate the state space of the underlying CTMC and apply exact or approximate solution algorithms and/or that have implemented exact and approximate algorithms for queue- ing networks In this chapter we introduce four representative performance modeling and analysis tools: PEPSY, SPNP, MOSES, and SHARPE As men- tioned previously, tools differ not only in their solution algorithms (DES, exact and approximate solution algorithms for queueing networks, generation and transient and steady-state solution of CTMCs) but also in their input/output facilities There are tools that have a graphical user interface (GUI) and/or

a special input language (batch mode or interactive) or both Some tools are based on special model types such as queueing networks, SPNs, CTMC models, or precedence graphs (and others) or a combination of these model types

PEPSY (performance evaluation and prediction system) [BoKi92] has been developed at the University of Erlangen-Niirnberg Using this tool it is pos- sible to describe and solve PFQNs and NPFQNs More than 30 solution algorithms are incorporated It is possible to specify open, closed, and mixed networks where jobs cannot switch to another job class Closed job classes are described by the number of jobs in each class, while open job classes are described by the arrival rate of jobs at the class To compute performance measures such as throughput, utilization, or mean response time of a given network, different exact as well as approximation algorithms are provided for PFQN and NPFQN The network is described in textual and/or graphical form The X11-windows version of PEPSY is called XPEPSY [Kirs93] PEPSY

Trang 3

PEPSY 573

can be used on almost all UNIX machines, whereas XPEPSY needs the X11 windows system A Windows95, WindowsNT version WinPEPSY with similar features is also available but it has a restricted set of solution algorithms

the system to be modeled The specification file has a name of the form e-name and is divided into a standard block and possibly additional blocks that contain additional information specific to solution algorithms The standard block contains all necessary descriptions for most of the solution methods, for example, the number of nodes and job classes, the service time distribution at each node, the routing behavior of the jobs, and a description of the classes The input file is usually generated using the input program, which is provided

by PEPSY Information that is not asked for by the input program is provided using the addition program

The type of each node (and its characteristics) needs to be specified: the -/M/m-FCFS, -/G/l-PS, -/G/-IS, and -/G/l-LCFS) and several other node types For example, two types of multiple server nodes with different ser-

be specified The service time distribution is defined by its first and second moment, or by the service rate and the squared coefficient of variation For the solution of the specified models, many different algorithms are implemented in PEPSY These algorithms can be divided into six groups:

1 Convolution algorithm for product-form networks

2 MVA for product-form networks

3 Approximation algorithms for product-form networks

4 Approximation methods for non-product-form networks

5 Automated generation and steady-state solution of the underlying CTMC

6 DES

In addition to these six groups, there are some methods and techniques that

do not fit in any of these groups For example, the bounds method performs

a calculation of the upper bounds of the throughput and lower bounds of the average response time

the computed performance measures is generated It is called xx-name where

“name” is the same as in the input file and “xx” is an abbreviation for the used method The output file consists of a short header with the name of

Trang 4

the model, the corresponding input file, and the solution method used to calculate the performance measures The performance measures of all nodes are separated by classes

The output file contains the performance measures for each node (through- put, visit ratio, utilization, average response time, average number of jobs, average waiting times, and average queue length) and the performance mea- sures for the entire network (throughput, average response time and average number of jobs)

solution methods to compute performance measures of queueing networks

In general, each method has certain limitations and restrictions Because it would be impossible for the user to know all these restrictions and limitations, control files are used in PEPSY Each control file contains the limitations and restrictions for each solution method, namely the network type (open, closed,

or mixed), the maximum number of nodes and classes allowed, whether the method can deal with routing probabilities or visit ratios, whether the service rates at -/M/m-FCFS nodes have to be the same for different job classes, the range of the coefficients of variation, and the maximum number of servers at

a -/M/m node

The following lists the most important programs of PEPSY For a more detailed reference see [Kirs94]

input: This

work

program is used for an interactive description of a queueing net-

addition: For some solution algorithms, additional information is needed This information is provided by invoking the addition program

selection: Using this program, all possible solution algorithms can be listed that are applicable to the system description (the file that was just created) The output of this program consists of two columns The left-hand column contains all solution algorithms that can be applied directly, while the right-hand column contains the methods that can only be applied after specifying an additional block (using the addition program)

analysis: After a complete system description, the queueing network desired solution algorithm can be applied by invoking the analysis program The results are printed on the screen as well as written to a file pinf: This program is invoked to obtain information about the solution meth-

od utilized

Trang 5

PEPSY 575

transform: As already mentioned before, it is possible to specify the network using either routing probabilities or visit ratios By invoking the trans- form program, visit ratios can be transformed into routing probabilities pdiffz By invoking pdiff, the results of two different solution methods can be compared

Fig 12.1 Simple queueing network example

The main steps in working with PEPSY are described herein Starting with the model, first the model file is created, then the solution method is selected, and the analysis is carried out The model to be analyzed is shown in Fig 12.1

At first the input program is invoked by means the command input The user will then be asked to enter the type and number of job classes (a closed network with only one job class in our case), the number of nodes (three in our case), the type of each node, and its service rate After the basic network information is specified, the routing information is entered In PEPSY we need

to consider one special point when talking about routing: open job classes contain a (combined) source/sink-node that is used in PEPSY as a reference node (outside node) for relative performance values For closed queueing networks the outside node also needs to be specified Finally the number of jobs in the network needs to be specified

Now the file is saved in, say, e-first-example The corresponding model description, generated by input, is shown in Fig 12.2 The next step is the selection of the solution method PEPSY supports the user with a built-in database with the limitations and restrictions of each algorithm and returns

a list of applicable solution methods In our example the result, of apply- ing the selection program to the model description is shown in Fig 12.3 This list contains all the methods that can be used to analyze the network e-simple-example In addition to the standard network description that has been entered in the beginning, some methods need further parameters

Trang 6

fig 12.2 Model description file e-simple-example

Trang 7

PEPSY 577

description of the network is In file ~e,slmpSe,example'

the closed network was 801ved using z;he method 'mari@'

lllV2 : average respbnae time

maa : average number of jab8

mwz : averaGe waiting time

snws2: average queue-length

/

For example, in order to run the sim2 method (DES), some information about the maximum simulation time and accuracy needs to be specified If the user is not familiar with a particular method, PEPSY assists the user with online help

Suppose the user selects the method name marie and invokes the solution method by entering the command analysis marie simple-example The resulting performance measures are shown on the screen and are also written into the file a-c-simple-example The contents of this file are shown in Fig 12.4

To demonstrate how to work with XPEPSY, the same queueing model as in Section 12.1.2 is used After the program is started, the user can graphically draw the network as shown in Fig 12.5 Nodes or connections can be created, moved, or deleted simply by mouse clicks The necessary parameters are specified in the corresponding dialog boxes Consider, for example, the node data dialog box, shown in Fig 12.6~ that appears when clicking on the service station in the drawing area and that is used to specify node parameters When the queueing network is fully specified, XPEPSY switches from the edit mode to the analysis mode and a new set of menus will appear Now PEPSY assists you in selecting the solution method Four possibilities are offered:

1 Select from a limited set of methods, i.e., the ones that are very well suited for the problem

2 Select from all possible methods

Trang 8

fig 12.5 The main XPEPSY window

XPEPSY

Analysis I”““” “x” ” , “”

v Non feasible -*-

~-“-“ Analysis -m-v - method options F - numerical parameters r-

Fig 12.6 (a) The node data dialog box and (b) the menu of solution methods corre- sponding to Fig 12.5

Trang 9

SPNP 579

3 Show only methods that have already been used

results can be found without resolving the model

and for which valid

4 Show all methods that cannot be used due to inherent restrictions of the solution method

Now the solution can be carried out by simply activating the Analysis button from the analysis menu, shown in Fig 12.6b, and the results are pre- sented on the screen (see Fig 12.4) The results can also be presented as a histogram or as a line drawing In a line drawing it is also possible to show

an output parameter as a function of an input parameter

Some additional programs from PEPSY are integrated into XPEPSY as well Using the Method Information button, the PEPSY internal database can be searched for information about the selected method

The stochastic Petri net package (SPNP) d eveloped by Ciardo, Muppala and Trivedi, is a versatile modeling tool for performance, dependability, and per- formability analysis of complex systems Input models developed based on the theory of stochastic Petri nets are solved by efficient and numerically stable algorithms Steady-state, transient, cumulative transient, time-averaged, and up-to-absorption measures can be computed Parametric sensitivity analysis

of these measures is efficiently carried out Some degree of logical analysis capabilities is also available in the form of assertion checking and the number and types of markings in the reachability graph Advanced constructs avail- able - such as marking-dependent arc multiplicities, guards, arrays of places and transitions, and subnets - reduce modeling complexity and enhance the power of expressiveness of the package The most powerful feature is the capability to assign reward rates at the net level and subsequently compute the desired measures of the system being modeled The model description language is CSP L, a C-like language, although no previous knowledge of the

C language is necessary to use S P N P

12.2.1 SPNP Features

The input language of SPNP is CSPL (C-based stochastic Petri net language)

A CSPL file is compiled using the C compiler and then linked with the precom- piled files that are provided with SPNP The full power of the C programming language can be used to increase the flexibility of the net description An important feature of CSPL is that it is a superset of C Thus a CSPL user can exploit C language constructs to represent a large class of SPNs within a single CSPL file Most applications will only require a limited knowledge of the C syntax, as predefined functions are available to define SPNP objects

Trang 10

Another important characteristic of SPNP is the provision of a function to

the arcs among them, and any other required parameters

The SPNP package allows the user to perform steady-state, transient, cumu- lative transient, and sensitivity analysis of SPNs Steady-state analysis is

measures are defined in terms of reward rates associated with the markings

[CNT97]

Trang 11

SPNP 581

Fig 12.7 Basic structure of a CSPL input file

entities Any legal C construct can be used anywhere in the CSPL file All the

C library functions, such as fprintf, f scanf, log, exp, etc., are available and perform as expected The only restriction to this generic rule is that the file should not have a main function In spite of being a programming language, CSPL enables the user to describe SPN models very easily There is no need

to be a programmer to fully exploit all the built-in features of SPNP Just a basic knowledge of C is sufficient to describe SPNs effectively; although, for experienced programmers, CSPL brings the full power and generality of the C language

Fig 12.7 shows the basic structure of a CSPL input file with six different segments

the package Several parameters establishing a specific behavior can be select-

ed The function iopt (fopt) enables the user to set option to have the

integer (double-precision floating point) value Any of the available options can be selected and modified For example:

specifies that the solution method to be used is transient solution as uni- formization and that the reachability graph is to be printed The function input permits the input of parameter values at run time

parameters of an SPN model For built-in functions that can be used inside the net segment, Fig 12.8 provides some illustrations

Trang 12

Fig 12.8 The CSPL net segment

There are other functions such as guards, which allow the user to define the enabling condition of a transition as a function of tokens in various places,

or functions that allow the user to define arrays of places and transitions or functions that pertain to sensitivity analysis

dition on a marking of the SPN For example, the assert definition:

will stop the execution in a marking where the sum of the number of tokens

in places p2 and p3 is not 4, or where t 11 and t7 are both enabled

ing the reachability graph construction It can be used to output data about

Trang 13

SPNP 583

the SPN in the “ out” file This is especially useful when the number of places

or transitions is defined at run time (otherwise it is merely a summary of the CSPL file) The function ac-reach is called after the reachability graph con- struction is completed It can be used to output data about the reachability graph in the “ out” file

CTMC has been completed, to carry out the computation and printing of user-requested outputs For example, the following function:

writes in the “ out” file for each place the probability that it is not empty and its average number of tokens, and for each transition the probability that it is enabled and its average throughput, respectively The derivatives

of all the preceding standard measures with respect to a set of previously chosen parameters are computed and printed In the end it writes the message goodbye Before applying the ac-f inal function, additional functions often have to be provided This can be done, for instance, using the construct reward-type as it is shown in the following example:

reward-type ep7 (1 < return(mark(“p7”) > ; 3

SPNP to analyse systems that can be modeled by an SPN is a straightforward procedure The inhibitor arcs avoid a capacity overflow in places pl and p2 The CSPL file for this SPN is shown in Fig 12.10

A short description of this specification follows:

Line 4-6: The reachability graph, the CTMC, and the state probabilities of the CTMC are to be printed

Line 10-22: The places, the initial marking of the places, the transitions, their firing rates, and the input, output, and inhibitor arcs are defined Line 26-29: Check whether a capacity overflow in either place pl or place p2 has occurred

Trang 14

Pl

P2

fig 12.9 Petri net example

Trang 15

SPNP 585 Line 33-37: Data about the SPN and the reachability graph of the SPN are

to be printed

Line 40: The number of tokens in

rate sl in that marking

Line 41: The number of tokens in place

rate s2 in that marking

Line 42-49: Self-explanatory

Line 52: Data about the CTMC and its solution are to be printed

Line 53-54: The mean number of tokens in the places pl and p2 are to be

Line 55-57: The probabilities that the places pl and p2 are empty are to be

12.2.3 iSPN

of Tcl/Tk [Welc95] in designing iSPN makes this application portable to all

Input Data: iSPN provides a higher level input format to CSPL, which pro-

iSPN also provides a textural interface, which is necessary if we wish

Ngày đăng: 26/01/2014, 16:20

TỪ KHÓA LIÊN QUAN

w