Article

A distributed approach to queueing network simulation

Authors:
To read the full-text of this research, you can request a copy directly from the authors.

Abstract

Discrete simulation is a widely used technique for system performance evaluation. The conventional approach to discrete simulation (e.g., GPSS, Simscript) does not attempt to exploit the parallelism typically available in queueing network models. In this paper, a distributed approach to discrete simulation is presented. It involves the decomposition of a simulation into components and the synchronization of these components by message passing. This approach can result in the speedup of the total time to complete a given simulation if a network of processors is available. The architecture of a microcomputer network suitable for distributed simulation is described and some results concerning the distributed approach are presented.

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the authors.

... The aim of distributed simulation is to map the simulation model over several loosely coupled processors, where objects execute locally and exchange information in the form of time-stamp~ed messages. Two main paradigms have been proposed that implement distributed discrete-event simulation: the Network Paradigm [9,10] and the Time-Warp Mechanism [11,12]; both are asynchronous algorithms. The Network Paradigm. ...
... The Network Paradigm. This model was proposed independently by Peacock et al. [9,13] and Chandy et al. [14,101. It can be described as a conservative asynchronous mechanism. ...
... " The Link Time Algorithm [9] reduces the probability of a deadlock. ...
Article
Full-text available
With the increasing complexity of very large scale integrate circuits, simulation on a digital computer system has become a primary means of low-cost testing of new designs. However, a detailed behavioral simulation can be highly expensive in terms of computation loads. Simulation time can be reduced by distributing the problem over several processors. Indeed, the availability of commercial multiprocessors gives a new importance to parallel and distributed simulation. This report surveys the techniques that have been proposed to deal with this problem and then presents a new scheme based on a consistent description of the system to be simulated, which allows a maximum exploitation of the parallelism inherent in the system.
... If there is a feedback path from the output of I to the input of D, a large number of "NULL jobs" will be created at D for every "real job" entering D. Every message entering D will cause a NULL message to be sent along at least one of the two outgoing edges but there is no mechanism to annihilate NULL jobs. Peacock et al. [13] and Holmes [9] have suggested a method of detecting deadlock by using "probes". Probes are messages periodically sent out to collect status information of processes. ...
... It is more difficult to compile simulations written in other languages, though the problems are implementation-related rather than fundamental. Work on infinite buffer simulation models was carfled out by Bryant [1] and Peacock, Wong, and Manning111213. Peacock et al. [11] provide a very comprehensive study of distributed simulation in general. ...
Article
An approach to carrying out asynchronous, distributed simulation on multiprocessor message-passing architectures is presented. This scheme differs from other distributed simulation schemes because (1) the amount of memory required by all processors together is bounded and is no more than the amount required in sequential simulation and (2) the multiprocessor network is allowed to deadlock, the deadlock is detected, and then the deadlock is broken. Proofs for the correctness of this approach are outlined.
... The seminal work of Chandy and Misra [1], and Peacock, Manning, and Wong [12] avoided deadlock via the use of ''null messages'' to represent non-events. The problem with null messages is that if their timestamps are generated unintelligently, (e.g., with minimum lookahead, ε), the simulation becomes choked with null messages and performance suffers. ...
Article
This paper presents the results of an empirical study of the effects of null message cancellation on the performance of conservatively synchronized distributed simulation. Null message cancellation is an algorithmic modification to the basic conservative synchronization scheme wherein a null message is discarded before receipt when overcome by a message with a larger timestamp.
... Different object-oriented based approach for concurrent simulation have been proposed in the literature [10,6]. Jefferson and Sowizral [8] worked on a mechanism called Time Warp which is based on discrete event based simulation. ...
Conference Paper
Full-text available
The automotive industry is going through a major transition where all of the main car OEMs (original equipment manufacturer) are putting serious efforts toward self-driving vehicles, and some of the OEMs have the vision to sell fully functional driver-less car by 2020. Software is the primary driving force for implementing different functionalities of today's cyber-physical systems. Being a safety critical system, functionalities of an autonomous vehicle need to be rigorously tested in different driving conditions, for example, weather, traffic, road markings, etc. In order to get early feedback on the implemented functionalities, testing in the simulation environment has become common before testing them on the prototype vehicle. This paper presents an approach to reduce the testing time in the simulation environment by parallelly executing the loosely coupled segments of a test scenario. Reducing simulation testing time is also substantial when we need to run regression test scenarios following changes in the implementation. The preliminary investigation shows that by applying the proposed concept, we can significantly reduce the simulation testing time both in the cases of successful and failed run.
... The main problems faced in conservative algorithms are overcoming deadlock and guaranteeing the steady progress of simulation time. Examples of conservative mechanisms include Chandy, Misra and Byrant's NMP [6], and Peacock, Manning, and Wong [11] avoided deadlock through null messages. The primary problem associated with null messages is that if their timestamps are chosen inappropriately, the simulation becomes choked with null messages and performance suffers. ...
Chapter
Full-text available
The performance of a conservative time management algorithm in a distributed simulation system degrade s significantly if a large number of null messages are exchanged across the logical processes in order to avoid deadlock. This situation gets more severe when the exchange of null messages is increased due to the poor selection of key parameters such as lookahead values. However, with a mathematical model that can approximate the optimal values of parameters that are directly involved in the performance of a time management algorithm, we can limit the exchange of null messages. The reduction in the exchange of null messages greatly improves the performance of the time management algorithm by both minimizing the transmission overhead and maintaining a consistent parallelization. This paper presents a generic mathematical model that can be effectively used to evaluate the performance of a conservative distributed simulation system that uses null messages to avoid deadlock. Since the proposed mathematical model is generic, the performance of any conservative synchronization algorithm can be approximated. In addition, we develop a performance model that demonstrates that how a conservative distributed simulation system performs with the null message algorithm (NMA). The simulation results show that the performance of a conservative distributed system degrades if the NMA generates an excessive number of null messages due to the improper selection of parameters. In addition, the proposed mathematical model presents the critical role of lookahead which may increase or decrease the amount of null messages across the logical processes. Furthermore, the proposed mathematical model is not limited to NMA. It can also be used with any conservative synchronization algorithm to approximate the optimal values of parameters.
... Examples of conservative mechanisms include Chandy, Misra and Byrant's NMP [5], and Peacock, Manning, and Wong [16] avoided deadlock through null messages. Some intelligent approaches to null message generation include generation on demand [17], and generation after a time-out [18]. ...
Article
Full-text available
This paper presents a new logical process (LP) simulation model for distributed simulation systems where Null Message Algorithm (NMA) is used as an underlying time management algorithm (TMA) to provide synchronization among LPs. To extend the proposed simulation model for n number of LPs, this paper provides a detailed overview of the internal architecture of each LP and its coordination with the other LPs through sub-system components and models such as communication interface and simulation executive. The proposed architecture of LP simulation model describes the proper sequence of coordination that need to be done among LPs though different subsystem components and models to achieve synchronization. To execute the proposed LP simulation model for different set of parameters, a queuing network model is used. Experiments will be performed to verify the accuracy of the proposed simulation model using the pre-derived mathematical equations. Our numerical and simulation results can be used to observe the exchange of null messages and overhead indices.
... In order to avoid and resolve the deadlock situations, each LP needs to exchange time stamp information with the other neighboring LPs [1, 3]. Examples of conservative mechanisms include Chandy, Misra and Byrant's NMP [6], and Peacock, Manning, and Wong [11] avoided deadlock through null messages. Conservative TMA can be further classified as synchronous and asynchronous protocols [1]. ...
Conference Paper
Full-text available
Null message algorithm is an important conservative time management protocol in parallel discrete event simulation systems for providing synchronization between the distributed computers with the capability of both avoiding and resolving the deadlock. However, the excessive generation of null messages prevents the widespread use of this algorithm. The excessive generation of null messages results due to an improper use of some of the critical parameters such as frequency of transmission and Lookahead values. However, if we could minimize the generation of null messages, most of the parallel discrete event simulation systems would be likely to take advantage of this algorithm in order to gain increased system throughput and minimum transmission delays. In this paper, a new mathematical model for optimizing the performance of parallel and distributed simulation systems is proposed. The proposed mathematical model utilizes various optimization techniques such as variance of null message elimination to improve the performance of parallel and distributed simulation systems. For the sake of simulation results, we consider both uniform and non-uniform distribution of Lookahead values across multiple output lines of an LP. Our experimental verifications demonstrate that an optimal NMA offers better scalability in parallel discrete event simulation systems if it is used with the proper selection of critical parameters.
Article
Full-text available
Virtual time is a new paradigm for organizing and synchronizing distributed systems which can be applied to such problems as distributed discrete event simulation and distributed database concurrency control. Virtual time provides a flexible abstraction of real time in much the same way that virtual memory provides an abstraction of real memory. It is implemented using the Time Warp mechanism, a synchronization protocol distinguished by its reliance on lookahead-rollback, and by its implementation of rollback via antimessages.
Presents a model of timed Petri nets which is more general than known models in terms of modeling convenience. The model consists of simple but fairly general modules. This would result in simpler and more modular codes for simulation of these systems, as compared with the known models of timed Petri nets. After discussing this model, the authors present an approach towards its distributed simulation. The well known distributed simulation schemes for discrete event systems do not directly apply to these systems due to the non-autonomous nature of place nodes in timed Petri nets. Moreover, in the authors' approach they incorporate several ideas to increase the degree of concurrency and to reduce the number of overhead messages in distributed simulation
Article
A survey of the techniques used in distributed discrete event simulation is presented. Some of the algorithms that have been developed to overcome some of the inherent problems of simulating on distribution systems are then described. The application of distributed discrete event simulation to the performance evaluation of communication networks is addressed. The design and implementation of the DISDESNET (distributed discrete event simulation of networks) simulation package for the simulation of general communication networks is described. Results of tests performed on different configurations are examined and found to demonstrate the flexibility of the package
Article
The availability of commercial multiprocessors gives a new importance to distributed simulation. However, while existing techniques exploit some levels of parallelism in the discrete-event simulation algorithm, they are usually targeted to specific applications and architectures. In the general scheme presented here, the algorithm is executed in parrallel using a compilation strategy that can be implemented on shared-memory multiprocessors.
Conference Paper
Full-text available
The authors present a model of timed Petri nets which is more general than known models in terms of modeling convenience. The model consists of simple but fairly general modules. This results in simpler and more modular codes for simulation of these systems, as compared with the known models of timed Petri nets. Time can be associated with either a place or a transition or both. The model consists of several simple modules resulting in modular code for simulation. The authors present an approach towards distributed simulation of the model. The well-known distributed simulation schemes for discrete event systems do not directly apply to these systems due to the nonautonomous nature of place nodes in timed Petri nets. The authors incorporate several ideas in the proposed approach to increase the degree of concurrency and to reduce the number of overhead messages in distributed simulation
Conference Paper
An object-oriented method for the design and implementation of distributed, discrete-event simulations is presented. Two differing synchronization mechanisms, conservative and optimistic, are identified. These differing mechanisms give rise to significant differences in the resulting simulation models. Which kind of synchronization allows more flexibility in modeling and implementing application programs is discussed. The authors present three simulation problems: the game of life (J.H. Conway, 1970), a sequential circuit with feedback (A.D. Friedman et al., 1975) and a queueing network. They show that each problem can be naturally decomposed into communicating subsystems. They present the Simula code for an object representation of the key subsystem in each problem. The conservative and the optimistic synchronization strategies for each problem are also compared
Conference Paper
Full-text available
Null message algorithm (NMA) is one of the efficient conservative time management algorithms that use null messages to provide synchronization between the logical processes (LPs) in a parallel discrete event simulation (PDES) system. However, the performance of a PDES system could be severely degraded if a large number of null messages need to be generated by LPs to avoid deadlock. In this paper, we present a mathematical model based on the quantitative criteria specified in (Rizvi et al., 2006) to optimize the performance of NMA by reducing the null message traffic. Moreover, the proposed mathematical model can be used to approximate the optimal values of some critical parameters such as frequency of transmission, Lookahead (L) values, and the variance of null message elimination. In addition, the performance analysis of the proposed mathematical model incorporates both uniform and non-uniform distribution of L values across multiple output lines of an LP. Our simulation and numerical analysis suggest that an optimal NMA offers better scalability in PDES system if it is used with the proper selection of critical parameters.
Article
The verification of VLSI circuits, which are ever increasing in size and complexity, is bottlenecked during simulation within the circuit design process. Distributed simulation on a cluster of workstations or a shared memory multiple processor computer attempts a cost-effective solution. The key factor in performance of these simulations is the development of distributed simulation algorithms that make use of the circuits' underlying properties. This study presents the design and implementation of a distributed simulation framework to better produce and test simulation algorithms. The framework includes a technique to generate circuits, since large commercial circuits are hard to obtain, a Verilog compiler, and a simulator template to ease implementation.
Article
We investigate in this paper various issues in parallel and distributed simulations in general, and its implementation in cluster of workstation environment in particular. The first part of the paper surveys the filed of parallel and distributed simulations, describes the issues that many researchers have been tackling. The second part of the paper presents the research projects carried out by the author in three areas, state saving in distributed simulations, implementing and performance issues in cluster of workstations, and debugging in distributed simulation environment. Our research found that the memory requirement of state saving can be reduced in certain types of distributed simulations; while decreasing communications among participating processes may reduce the cost of communications, it may result in more rollbacks because the loss of synchronization; debugging distributed programs is difficult, but it can be aided using library functions we developed.
Article
We present a language, the Task Graph Language for the centralized representation of distributed control in the Mininet distributed operating system. This context-free language allows a programmer to specify the inter-process communication between a suite of distributed processes in the form of a Task Graph (centralized representation) and to have the constraints of the Task Graph enforced at run-time by coöperating Token Lists, one at each task (distributed control). The language allows the specification of connectivity (which tasks can send messages to which), sequencing (which messages must precede or follow one another), concurrency (which messages can be sent without regard to order), and mutual exclusion (which message sequences incident on a single task must be non-interfering).
Conference Paper
In any computer system it is valuable to have methods for enforcing expected behaviour at runtime. (Capabilities and object-oriented architectures are mechanisms commonly used to address the problem.) In a message-switched system, all inter-process communication is done by the transmission of messages, and the problem of enforcing expected behaviour can be reduced to the problem of enforcing expected patterns of message transmission.In this paper we give a method, called the Task Graph Language, for expressing expected patterns (policy) of message transmission. Such an expression is quite independent of the actual programs which pass messages, and can be used at runtime to check the validity of observed behaviour. The mechanism we provide to perform the runtime checking of observed vs. expected behaviour is called Token Lists.This mechanism requires no esoteric hardware support and it can be used in both distributed and centralized systems. From another perspective, the user is provided with two independent, hence mutually redundant, ways to express his intent (the programs which pass messages and the Task Graph Language description), and the two expressions of intent are compared or matched at runtime as a checking mechanism. From still another perspective, the Task Graph Language and Token Lists permit a centralized representation of distributed control.
Article
This paper explores several variants of the Chandy-Misra Null Message algorithm for distributed simulation. The Chandy-Misra algorithm is one of a class of “conservative” algorithms that maintains the correct order of simulation throughout the execution of the model by means of constraints on simulation time advance. The algorithms developed in this paper incorporate an “event-oriented” view of the physical process and message-passing. The effects of the computational workload to compute each event is related to speedup attained over an equivalent sequential simulation. The effects of network topology are investigated, and performance is evaluated for the variants on transmission of null messages. The performance analysis is supported with empirical results based on an implementation of the algorithm on an Intel iPSC 32-node hypercube multiprocessor. Results show that speedups over sequential simulation of greater than N, using N processors, can be achieved in some circumstances.
Article
Traditional discrete-event simulations employ an inherently sequential algorithm. In practice, simulations of large systems are limited by this sequentiality, because only a modest number of events can be simulated. Distributed discrete-event simulation (carried out on a network of processors with asynchronous message-communicating capabilities) is proposed as an alternative; it may provide better performance by partitioning the simulation among the component processors. The basic distributed simulation scheme, which uses time encoding, is described. Its major shortcoming is a possibility of deadlock. Several techniques for deadlock avoidance and deadlock detection are suggested. The focus of this work is on the theory of distributed discrete-event simulation.
Article
This document describes the design concept of the Network Design Tool. The Network Design Tool (NDT) is a collection of analytical techniques, algorithms and simulation methods that may be used to characterize the performance of a computer communication network. Much work has been done over the past several years in network performance analysis and many techniques have been developed or proposed. Each of these methods applies to a particular aspect of the network design and is based on a particular modeling point of view. We define the computer communication network and then describe the different ways the network may be modeled. Each network model is related to the particular design problem being addressed. The various analytical approaches are briefly described and their relationship to the network models discussed. Chapter 2 is a survey of the major approaches to specific network design problems while Chapters 3 and 4 discuss two fairly well defined areas of network analysis: topological design/optimization and protocol validation. Chapter 5 is a survey of network design tools presently available locally or on the Advanced Research Projects Agency Network (ARPANET). Finally, Chapter 6 presents an outline of the NDT specification.
Conference Paper
We have successfully implemented a concurrent simulator and we report initial speedup measurements for this technique. Our algorithm requires a shared-memory multiprocessor and is appropriate to any discrete-event simulation model. In addition, our algorithm places no constraints on minimum service times or the presence of cycles in the simulation model. Our experimental simulator runs on an Encore Multimax computer and is applicable to closed product-form queueing networks. We have observed speedups of 2.3 for a central-server queueing model using our simulator.
Article
This article presents a history of queueing theory done by Canadian researchers prior to 1980 and includes an extensive bibliography.
Conference Paper
Häufig wird der Simulation der hohe Aufwand angelastet, der für die Modellerstellung an Programmier-sowie für die Auswertung an Rechenleistung zu erbringen ist. Dies verhinderte bisher, daß die Möglichkeiten dieser Technik über den Expertenkreis hinaus ausgeschöpft wurden Die enormen Fortschritte der letzten Jahre auf dem Gebiet der Rechnertechnologie fordern dazu auf, die verfügbaren Kapazitäten unmittelbar für die Simulation zu erschließen.
Article
The unix* shell is a command programming language that provides an interface to the unix operating system. It contains several mechanisms found in algorithmic languages such as control-flow primitives, variables, and parameter passing. Constructs such as while, if, for, and case are available. Two-way communication is possible between the shell and commands. String-valued parameters, typically file names or flags, may be passed to a command. A return code is set by commands and may be used to determine the flow of control, and the standard output from a command may be used as input to the shell. The shell can modify the environment in which commands run. Input and output can be redirected and processes that communicate through “pipes” can be invoked. Commands are found by searching directories in the file system in a sequence that can be defined by the user.
Article
Simulation, particulary of networks of queues, is an application with a high degree of inherent parallelism and is of great practical interest. We hope to exploit this parallelism by performing simulations using a network of cheap, but slow, micro-processors.We define a taxonomy by which we classify a number of parameters of a distributed simulation method, and seek solutions to problems of synchronization, deadlock prevention and inter-process communication arising with various methods in each class of the taxonomy. We concentrate in particular on the class (loose, event-driven) which seems to possess the greatest potential parallelism, and on the class (scaled, tight, time-driven) which allows mock-up studies of real systems. We give algorithms for deadlock prevention and detection, and briefly discuss the design of a distributed operating system to support the simulation application.This research forms part of a joint program with the Dept. of Computer Sciences, University of Texas at Austin, directed by Prof. K.M. Chandy.
Article
A potentially valuable attribute of message switched networks is that all processors in the network can cooperate in solving a common problem. This attribute has not recieved sufficient attention in the literature probably because it is hard to partition most programs into processes which communicate exclusively by exchanging messages. The problem of partitioningng programs and assigning them to processors in message switched systems becomes acute when programs appear to be inherently sequential. In this paper we use a message switched network to solve a problem that has always been solved in a highly sequential fashion. The specific problem that is studied is discrete-event simulation though key concepts can be extended to other areas of message-switched problem-solving. There are no shared variables in message switched networks. The shared variable “clock” typically used in simulation algorithms, does not appear in the proposed scheme; instead each process maintains an internal clock that is not usually synchronized with clocks of other processes. The case where the network is a tandem of servers is considered in detail in this paper. The core ideas reported here were significantly developed and radically extended by a group at the University of Waterloo under the direction of Professors Manning and Wong.
Article
The application of queueing network models to the performance analysis of mesage-switched (or packet-switched) communication networks is surveyed. The main topics covered are the analysis of end-to-end delay and the analysis of buffer management schemes. A brief discussion on flow control is also included. A queueing network model is developed for a simple user-resource network. The mean response time of a host computer in this network is illustrated by a numerical example.
Article
An overview is presented of queueing theoretic modeling and analysis of interactive computing systems. While the emphasis is on recent advances, an introduction is given which briefly trices the historical development of this area to put current research in perspective. Models, methods of analysis, and applications to real systems are described. An extensive bibliography provides the references for a more in-depth study.
Process Management and Communication Facilities for Distributed Operating Systems
  • N L Meisner