Hardware-assisted replay of multiprocessor programs
- 1 December 1991
- proceedings article
- Published by Association for Computing Machinery (ACM)
- Vol. 26 (12) , 194-206
- https://doi.org/10.1145/122759.122777
Abstract
Shared-memory parallel programs can be highly non-deterministic due to the unpredictable order in which shared references are satisfied. However, deterministic execution is extremely important for debugging and can also be used for fault-tolerance and other replay-based algorihtms. We present a hardware/software design that allows the order of memory and the CPU''s. This log can then be used along with hardware and software control to replay execution. Simulation of several parallel programs shows that our device records no more than 1.17 MB/second for an application exhibiting fine-grained sharing behavior on a 16-way multiprocessor consisting of 12 MIP CPU''s. In addition, no probe effect on performance degradation is introduced. This represents several orders of magnitude improvement in both performance and log size over purely software-based methods proposed previously.Keywords
This publication has 12 references indexed in Scilit:
- Debugging concurrent programsACM Computing Surveys, 1989
- A software instruction counterPublished by Association for Computing Machinery (ACM) ,1989
- Debugging of heterogeneous parallel systemsPublished by Association for Computing Machinery (ACM) ,1988
- Supporting reverse execution for parallel programsPublished by Association for Computing Machinery (ACM) ,1988
- Partial orders for parallel debuggingPublished by Association for Computing Machinery (ACM) ,1988
- Firefly: a multiprocessor workstationIEEE Transactions on Computers, 1988
- Debugging Parallel Programs with Instant ReplayIEEE Transactions on Computers, 1987
- Modeling concurrency with partial ordersInternational Journal of Parallel Programming, 1986
- Time, clocks, and the ordering of events in a distributed systemCommunications of the ACM, 1978
- Reversible executionCommunications of the ACM, 1973