Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
An algorithm for parallel discrete event simulation using common memory
Cota B., Sargent R. ACM SIGSIM Simulation Digest20 (1):23-31,1989.Type:Article
Date Reviewed: Aug 1 1990

Many distributed and parallel discrete-event simulation algorithms assume that processes only communicate through message passing. Cota and Sargent, in contrast, assume the existence of shared memory, permitting one process to cheaply access the state of another process.

The authors take a refreshing view by starting from first principles in formulating their algorithm. They begin by defining discrete-event simulation and examine the implications of partitioning the event list and event code modules among a set of logical processes (LPs) while allowing shared access to state variables. Their conservative algorithm determines when an LP can execute the head event in its event list. An LP traverses two graphs, of predecessor and neighbor LPs, created before simulation program execution. Let LP P simulate event e. P’s predecessors include LPs that schedule events in P. Traversing predecessors yields a minimum next event time. P’s neighbors include all LPs that (1) schedule events that e cancels, (2) cancel events that e schedules, (3) read or write state variables that e writes, and (4) write variables that e reads. Traversing neighbors verifies that all neighbors simulate their next event after timet.

The paper is well written, although the reader must commit several definitions to memory. The authors clearly relate their proposal to existing work. For example, the proposed algorithm requires only one processor to participate in each graph traversal and never deadlocks.

The algorithm has two costs: two partial graph traversals every time an event is executed and locking shared state variables on every access. The question of how these costs compare to the overhead in other parallel simulation algorithms is left unanswered.

Reviewer:  M. Abrams Review #: CR113984
Bookmark and Share
 
Simulation Theory (I.6.1 )
 
 
Parallel Algorithms (G.1.0 ... )
 
 
Parallel Processors (C.1.2 ... )
 
 
Run-Time Environments (D.3.4 ... )
 
 
Simulation Theory (I.6.1 )
 
Would you recommend this review?
yes
no
Other reviews under "Simulation Theory": Date
On conflicts
Pawlak Z. International Journal of Man-Machine Studies 21(2): 127-134, 1984. Type: Article
May 1 1985
Efficient distributed event-driven simulations of multiple-loop networks
Lubachevsky B. Communications of the ACM 32(1): 111-123, 1989. Type: Article
Nov 1 1989
Distributed discrete-event simulation
Misra J. ACM Computing Surveys 18(1): 39-65, 1986. Type: Article
Jun 1 1987
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy