Affiliation:
1. Univ. of California at Santa Cruz, Santa Cruz
Abstract
The main problems associated with debugging concurrent programs are increased complexity, the "probe effect," nonrepeatability, and the lack of a synchronized global clock. The probe effect refers to the fact that any attempt to observe the behavior of a distributed system may change the behavior of that system. For some parallel programs, different executions with the same data will result in different results even without any attempt to observe the behavior. Even when the behavior can be observed, in many systems the lack of a synchronized global clock makes the results of the observation difficult to interpret. This paper discusses these and other problems related to debugging concurrent programs and presents a survey of current techniques used in debugging concurrent programs. Systems using three general techniques are described: traditional or breakpoint style debuggers, event monitoring systems, and static analysis systems. In addition, techniques for limiting, organizing, and displaying a large amount of data produced by the debugging systems are discussed.
Publisher
Association for Computing Machinery (ACM)
Subject
General Computer Science,Theoretical Computer Science
Cited by
140 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. MemSnap: A Fast Adaptive Snapshot Algorithm for RMWable Shared-Memory;Proceedings of the 43rd ACM Symposium on Principles of Distributed Computing;2024-06-17
2. The correctness of concurrencies in (reversible) concurrent calculi;Journal of Logical and Algebraic Methods in Programming;2024-01
3. Debugging Paxos in the UML Multiverse;2023 ACM/IEEE International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C);2023-10-01
4. Synchronous Deterministic Parallel Programming for Multi-Cores with ForeC;ACM Transactions on Programming Languages and Systems;2023-06-26
5. Event-Based Out-of-Place Debugging;Proceedings of the 19th International Conference on Managed Programming Languages and Runtimes;2022-09-14