Balancing runtime and replay costs in a trace-and-replay system
Jong-Deok Choi, Janice M. Stone
WPADD 1991
This paper describes a graphical representation called a concurrency map. It provides a succinct representation of the potentially large collection of possible correct event-orderings for a set of concurrent processes. The normal problems of monitoring, debugging and analyzing performance of single-process programs are compounded for programs with concurrent processes. Although we can observe the behavior of each separate process, we do not know what is occurring concurrently in the various processes during successive moments as execution progresses. Furthermore, unknown timing delays among the processes may cause different program behavior when we rerun the program. The relative time-ordering of events in different concurrent processes is not, in general, fixed, and events that occurred in one order on one occasion on which the program performed correctly might occur in another order on another occasion, with equal correctness. We need to know both how the program behaved during execution and how that behavior might have differed under normal variations of concurrent execution. The concurrency map aids in solving these problems. © 1989, ACM. All rights reserved.
Jong-Deok Choi, Janice M. Stone
WPADD 1991
Jong-Deok Choi, Janice M. Stone
ACM SIGPLAN Notices
Janice M. Stone, Harold S. Stone, et al.
IEEE Parallel & Distributed Technology: Systems & Applications
Janice M. Stone
PLDI 1988