An evaluation of the Chandy-Misra-Bryant algorithm for digital logic simulation
- 1 October 1991
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Modeling and Computer Simulation
- Vol. 1 (4) , 308-347
- https://doi.org/10.1145/130611.130613
Abstract
We explore the suitability of the Chandy-Misra-Bryant (CMB) algorithm for the domain of digital logic simulation. Our evaluation is based on results for six realistic benchmark circuits, one of them being the R6000 microprocessor form MIPS. A quantitative evaluation of the concurrency exhibited by the CMB algorithm shows that an average of 42-196 element activations can be evaluated in parallel if arbitrarily many processors are available. One major factor limiting the parallel performance is the large number of deadlocks that occur. We present a classification of the types of deadlocks and describe them in terms of circuit structure. Using domain-specific knowledge, we propose and evaluate several methods for both reducing the number of deadlock occurences and for reducing the time spent on each occurence. Running on a 16-processor Encore Multimax we observe speedups of 6-9. While these self-relative speedups are larger than a parallel version of the traditional centralized-time event-driven algorithm, they come at the price of large overheads: significantly more complex element evaluations, extra element evaluations, and deadlock resolution time. These overheads overwhelm the advantages of using distributed time and consistently make the parallel performance of the CMB algorithm about three times slower than that of the traditional parallel event-driven algorithm. Our experience leads us to conclude that the distributed-time CMB algorithm does not present a viable alternative to the centralized-time event-driven algorithm in the domain of parallel digital logic simulation.Keywords
This publication has 10 references indexed in Scilit:
- Breaking the barrier of parallel simulation of digital systemsPublished by Association for Computing Machinery (ACM) ,1991
- The directory-based cache coherence protocol for the DASH multiprocessorPublished by Association for Computing Machinery (ACM) ,1990
- Parallel distributed-time logic simulationIEEE Design & Test of Computers, 1989
- Characterization of parallelism and deadlocks in distributed digital logic simulationPublished by Association for Computing Machinery (ACM) ,1989
- The Titan Graphics Supercomputer architectureComputer, 1988
- Statistics for parallelism and abstraction level in digital simulationPublished by Association for Computing Machinery (ACM) ,1987
- SSIM: a software levelized compiled-code simulatorPublished by Association for Computing Machinery (ACM) ,1987
- Distributed discrete-event simulationACM Computing Surveys, 1986
- Virtual timeACM Transactions on Programming Languages and Systems, 1985
- Asynchronous distributed simulation via a sequence of parallel computationsCommunications of the ACM, 1981