Discrete-event simulation is a widely used technique for modeling systems in such diverse fields as flexible manufacturing, computer science, engineering, economics, military applications, and operations research. Many of those systems are so complex that analytical evaluation of their performance is infeasible; even simulation of such complex systems on sequential machines may be too slow. This has led to many attempts to apply parallel computers to discrete-event simulation.
Two main approaches to parallel discrete-event simulation have been tried: distributed simulation and concurrent simulation. Distributed simulation uses different processors to simulate different components of the system. Concurrent simulation uses a global pending-event set where any processor may simulate the next available event. Our research focuses on the integration of these two approaches; we call our result an integrated distributed concurrent simulator.
We began our work with a distributed simulator written by Chou and fused the queues associated with the communication links into a single concurrent pending event-set for each logical process. This change is only possible in a shared memory environment, and in order to do so we had to reformulate the description of the traditional distributed simulation from a process centered view to an event centered view. We developed two versions of this distributed simulator that use different synchronization methods and that run significantly faster than Chou's original distributed simulator.
We then modified the code of this new distributed simulator so that we could group model components into what we called a cluster and so that we could attach more than one processor to a logical processes. This resulted in an integrated distributed concurrent simulator that runs faster than any of the previous distributed simulators, and depending on the topology of the model being simulated, runs faster than Chou's concurrent simulator.
Our integrated distributed concurrent simulator was restricted to simulate closed queuing networks models. However, it can easily be generalized to simulate other types of models.
Index Terms
- Integration of distributed and concurrent discrete-event simulation
Recommendations
Hypersim: distributed discrete-event simulation on an iPSC
C3P: Proceedings of the third conference on Hypercube concurrent computers and applications: Architecture, software, computer systems, and general issues - Volume 1This paper describes HYPERSIM, a distributed discrete-event simulation system developed as a research test bed for distributed simulation synchronization techniques. HYPERSIM is a Fortran-based, GASP-like distributed simulation software system which ...
Inside discrete-event simulation software: how it works and why it matters
WSC '10: Proceedings of the Winter Simulation ConferenceThis paper provides simulation practitioners and consumers with a grounding in how discrete-event simulation software works. Topics include discrete-event systems; entities, resources, control elements and operations; simulation runs; entity states; ...
Inside discrete-event simulation software: how it works and why it matters
WSC '13: Proceedings of the 2013 Winter Simulation Conference: Simulation: Making Decisions in a Complex WorldThis paper provides simulation practitioners and consumers with a grounding in how discrete-event simulation software works. Topics include discrete-event systems; entities, resources, control elements and operations; simulation runs; entity states; ...