Selecting the checkpoint interval in time warp simulation
PADS '93 Proceedings of the seventh workshop on Parallel and distributed simulation
Adaptive checkpointing in Time Warp
PADS '94 Proceedings of the eighth workshop on Parallel and distributed simulation
Parallel and Distribution Simulation Systems
Parallel and Distribution Simulation Systems
Designing a Parallel Debugger for Portability
Proceedings of the 8th International Symposium on Parallel Processing
Bug isolation via remote program sampling
PLDI '03 Proceedings of the ACM SIGPLAN 2003 conference on Programming language design and implementation
Understanding the limits of optimistic and conservative parallel simulation
Understanding the limits of optimistic and conservative parallel simulation
Locating causes of program failures
Proceedings of the 27th international conference on Software engineering
Empirical evaluation of the tarantula automatic fault-localization technique
Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering
EDEVS: A Scalable DEVS Formalism for Event-Scheduling Based Parallel and Distributed Simulations
DS-RT '09 Proceedings of the 2009 13th IEEE/ACM International Symposium on Distributed Simulation and Real Time Applications
A flexible checkpoint/restart model in distributed systems
PPAM'09 Proceedings of the 8th international conference on Parallel processing and applied mathematics: Part I
Checkpoint/restart-enabled parallel debugging
EuroMPI'10 Proceedings of the 17th European MPI users' group meeting conference on Recent advances in the message passing interface
Hi-index | 0.00 |
Debugging is critically important for diagnosing bugs of programs. In optimistic Parallel Discrete Event Simulation(PDES), a bug is probably not to be reproduced for the different orders of event processing in different simulation runs, so locating bugs is of great challenge in debugging PDES programs. To solve this problem, we first propose a bug reproducing method based on checkpoint/restart mechanism, which avoids starting the program from scratch when an error emerges. Moreover, our method can change the checkpoint interval dynamically to reduce the overhead of states saving. Then, based on bug reproduction we propose a bug locating method, which aims at searching for these events that cause the bugs likely by comparing the event processing sequences between one passing test case and the failing test case. By doing this, we can focus on the events directly related to the bugs, which will reduce the time of locating a bug.