Parallel simulation of chip-multiprocessor architectures
- 1 July 2002
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Modeling and Computer Simulation
- Vol. 12 (3) , 176-200
- https://doi.org/10.1145/643114.643116
Abstract
Chip-multiprocessor (CMP) architectures present a challenge for efficient simulation, combining the requirements of a detailed microprocessor simulator with that of a tightly-coupled parallel system. In this paper, a distributed simulator for target CMPs is presented based on the Message Passing Interface (MPI) designed to run on a host cluster of workstations. Microbenchmark-based evaluation is used to narrow the parallelization design space concerning the performance impact of distributed vs. centralized target L2 simulation, blocking vs. non-blocking remote cache accesses, null-message vs. barrier techniques for clock synchronization, and network interconnect selection. The best combination is shown to yield speedups of up to 16 on a 9-node cluster of dual-CPU workstations, partially due to cache effects.Keywords
This publication has 14 references indexed in Scilit:
- Architecture of the Atlas chip-multiprocessor: dynamically parallelizing irregular applicationsIEEE Transactions on Computers, 2001
- PiranhaPublished by Association for Computing Machinery (ACM) ,2000
- An Integrated Simulation Environment for Parallel and Distributed System PrototyingSIMULATION, 1999
- The M-machine multicomputerInternational Journal of Parallel Programming, 1997
- Modeling cost/performance of a parallel computer simulatorACM Transactions on Modeling and Computer Simulation, 1997
- Distributed Simulation of Parallel DSP Architectures on Workstation ClustersSIMULATION, 1996
- Myrinet: a gigabit-per-second local area networkIEEE Micro, 1995
- A case for NOW (Networks of Workstations)IEEE Micro, 1995
- Reducing null messages in Misra's distributed discrete event simulation methodIEEE Transactions on Software Engineering, 1990
- Distributed Simulation: A Case Study in Design and Verification of Distributed ProgramsIEEE Transactions on Software Engineering, 1979