Performance Engineering with Product-Form Models: Efficient Solutions and Applications
Total Page:16
File Type:pdf, Size:1020Kb
Performance Engineering with Product-form Models: Efficient Solutions and Applications Simonetta Balsamo Andrea Marin Dipartimento di Informatica Dipartimento di Informatica Università Ca’ Foscari Venezia Università Ca’ Foscari Venezia via Torino, 155 via Torino, 155 Venice, Italy Venice, Italy [email protected] [email protected] ABSTRACT 1. INTRODUCTION Performance engineering plays a pivotal role in the success- Performance engineering plays a pivotal role in the soft- ful design of software system and the software development ware development process and the successful design of soft- process. Stochastic modelling has been widely applied to ware architectures [42], communication protocols, or hard- predict and evaluate or estimate system performance. We ware architectures all along the development process. Mod- consider the specification of models in terms of compositions elling is an important and useful approach for performance of simpler components and their efficient solution. Various evaluation and system validation and it can provide predic- formalisms or classes of stochastic models have been ap- tion and comparison of design alternatives. System perfor- plied for system performance engineering and evaluation. mance engineering deals with the representation and analy- These formalisms includes queueing networks, Stochastic sis of the system dynamic based on models to provide feed- Petri Nets, and Stochastic Process Algebras. Their dy- back in the system development process. In this context, namic behaviour can be usually represented by an under- stochastic modelling has been widely applied to evaluate or lying stochastic (Markov) process. For each formalism some estimate the performance of both software [8] and hardware classes of product-form models have been identified, start- architectures of computer systems. These often consist of a ing from the first remarkable results for BCMP queueing possibly large number of interacting components that have networks. For some product-form models various efficient probabilistic behaviours. A successful quantitative analysis algorithms have been defined. We discuss the problem of of such systems depends on several factors: the ability to identifying and characterize classes of product-form mod- derive an adequate model from the system specifications, els. We compare the properties of the various modeling the characterisation of the workload, and the availability of formalisms, their solution and the combination of product- methods for deriving the desired performance indices and form (sub)models into a heterogeneous model. We illustrate their interpretation at the system level. We deal with the the application of product-form stochastic models for sys- specification of models in terms of compositions of simpler tem performance engineering with some examples of tools components and their efficient solution. Specifically, we fo- for the solution of heterogeneous models formed by synchro- cus on the class of stochastic models with product-form solu- nized sub-models, and some practical applications. tions. These are characterised by separable equilibrium state distributions that can be efficiently computed by consider- ing each model component in isolation. System performance Categories and Subject Descriptors engineering based on stochastic models requires the choice C.4 [PERFORMANCE OF SYSTEMS]: Modeling tech- of an appropriate formalism in order to model develop, an- niques alyze and evaluate significant system models. Various for- malisms or classes of stochastic models have been applied for system performance engineering and evaluation. Their General Terms dynamic behaviour can be usually represented by an under- Performance lying stochastic process. These formalisms include queueing networks, Stochastic Petri Nets, Stochastic Process Alge- Keywords bras, stochastic (Markov) processes. For each formalism some classes of product-form models have been identified, Queueing theory, Product-form solutions. starting from the first remarkable results for BCMP queue- ing networks [12]. Some product-form models can be solved by various efficient algorithms that have been proposed in literature. However, for some classes of models, additional Permission to make digital or hard copies of all or part of this work for conditions and constraints have to be satisfied in order to ap- personal or classroom use is granted without fee provided that copies are ply such algorithms. Specific features and properties have not made or distributed for profit or commercial advantage and that copies been studied and identified for various classes of stochastic bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific models, depending on the specific formalism. More recent permission and/or a fee. research focused on model properties that can be expressed ICPE’11, March 14–16, 2011, Karlsruhe, Germany. in terms of the underlying Markov process. Copyright 2011 ACM 978-1-4503-0519-8/11/03 ...$10.00. 437 Product-form has been widely investigated in queueing els. Since product-form appeared also for other formalisms network domain. Queueing network models (QN) have been (MPA, (G)SPN, SA), it appeared clear that more general extensively applied to represent and analyze various types characterisations were needed in ordered to have a unified of resource sharing systems, such as production, communi- approach to product-form modelling. In this section, we cation and computer systems, and they have proved to be a briefly describe both the results that have been formulated powerful and versatile tool for system performance evalua- for queueing networks and those that appeared later in lit- tion and prediction. QNs provide an abstract/black-box no- erature, and then, when possible, we compare them. tation, thus allowing easier feedback and model comprehen- sion, especially in a component-based software development 2.1 Characterisation of product-form QNs process. A QN is a collection of service centers representing Before proceeding with the definition of product-form prop- the system components that provide service to a collection of erties in QNs we need to introduce some notation and nomen- customers that represent the users. The customers’ compe- clature. tition for the resource service corresponds to queueing into the service centers. The analysis of the QN consists of eval- 2.1.1 Nomenclature and notation about QNs uating a set of performance measures, such as resource uti- In this paper we refer to a queueing station (or simply to lization and throughput and customer response time. This station) to identify the service room and the queue.Cus- class of performance models provide a good balance between tomers are characterised by a class and a chain. While a relative high accuracy in the performance results and the a class is a temporary characterisation, i.e., probabilistic efficiency in model analysis and evaluation, mainly thanks class switching may occur, a chain is permanent. Chains to product-form solutions. Product-form QNs have a simple form a partition of the classes, and each chain may be ei- closed form expression of the stationary state distribution ther open or closed. In the former case Poisson distributed that allowed the performance community to define efficient arrivals from the outside and departures are allowed, while algorithms to evaluate average performance measures [34, in the latter one the chain population is constant. Cus- 16]. Other performance modelling formalisms such as the tomers are distinguishable only through their classes. We Stochastic Petri Nets (SPN) and Stochastic Process Algebra assume independence among the service times and the ar- (SPA) have been proposed allowing the definition of more rival processes. A QN consists of N stations whose state expressive models and more complex cooperation and syn- is denoted by mi,1≤ i ≤ N, and the joint state is de- chronization among system components. Some classes of noted by m =(n1,...,mN ). For some QNs, the states of product-form models of SPN [38], Markovian SPA (MPA) the stations are fully described by the numbers of customers [30] and Stochastic Automata Network (SAN) [40] have been that are present for each class (take for instance the pro- proposed in literature. These formalisms also allow one to cessor sharing queueing discipline with exponential service specify cooperation of sub-models at the level of stochas- time [12]), i.e., the arrival order is not relevant. In these tic Markov processes. In this tutorial we discuss the char- cases, we identify the global state with the same population acterisation of classes of product-form models for various of m for all the stations and classes with the exception of formalisms, their solution and the combination of product- class r of station i which has one more customer than m form (sub)models into a heterogeneous model. Identifying with m + eir. A station is called work-conserving if there is product-form models is not an easy task. In Section 2 we dis- no artificial creation or loss of work in the system [32]. In cuss the relevant problems in the characterisation of classes what follows we refer to QNs assuming state-independent of product-form models. In Section 2.1 we deal with various probabilistic routing and the usual independence hypothesis types of product-form QN models, and we discuss their prop- among the service and arrival times. erties, such as local and station balance, M ⇒ M property,