The impact of interprocedural analysis and optimization in the Rn programming environment
ACM Transactions on Programming Languages and Systems (TOPLAS)
Development of a debugger for a concurrent language
IEEE Transactions on Software Engineering
The program dependence graph and its use in optimization
ACM Transactions on Programming Languages and Systems (TOPLAS)
Debugging Parallel Programs with Instant Replay
IEEE Transactions on Computers
Integrating non-intering versions of programs
POPL '88 Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Lifetime analysis of dynamically allocated objects
POPL '88 Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Reliability Issues in Computing System Design
ACM Computing Surveys (CSUR)
Programmers use slices when debugging
Communications of the ACM
Time, clocks, and the ordering of events in a distributed system
Communications of the ACM
A practical interprocedural data flow analysis algorithm
Communications of the ACM
Guarded commands, nondeterminacy and formal derivation of programs
Communications of the ACM
SIGPLAN '84 Proceedings of the 1984 SIGPLAN symposium on Compiler construction
A precise inter-procedural data flow algorithm
POPL '81 Proceedings of the 8th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
An efficient way to find the side effects of procedure calls and the aliases of variables
POPL '79 Proceedings of the 6th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Notes on Data Base Operating Systems
Operating Systems, An Advanced Course
The distributed V kernel and its performance for diskless workstations
SOSP '83 Proceedings of the ninth ACM symposium on Operating systems principles
Generalized path expressions: A high level debugging mechanism (Preliminary Draft)
SIGSOFT '83 Proceedings of the ACM SIGSOFT/SIGPLAN software engineering symposium on High-level debugging
The program dependence graph in a software development environment
SDE 1 Proceedings of the first ACM SIGSOFT/SIGPLAN software engineering symposium on Practical software development environments
INTERACTIVE DEBUGGING IN A DISTRIBUTED COMPUTATIONAL
INTERACTIVE DEBUGGING IN A DISTRIBUTED COMPUTATIONAL
Monitoring distributed systems: a relational approach
Monitoring distributed systems: a relational approach
On-the-fly detection of access anomalies
PLDI '89 Proceedings of the ACM SIGPLAN 1989 Conference on Programming language design and implementation
Demonic memory for process histories
PLDI '89 Proceedings of the ACM SIGPLAN 1989 Conference on Programming language design and implementation
Debugging standard ML without reverse engineering
LFP '90 Proceedings of the 1990 ACM conference on LISP and functional programming
PLDI '90 Proceedings of the ACM SIGPLAN 1990 conference on Programming language design and implementation
Analysis of event synchronization in a parallel programming tool
PPOPP '90 Proceedings of the second ACM SIGPLAN symposium on Principles & practice of parallel programming
A Noninterference Monitoring and Replay Mechanism for Real-Time Software Testing and Debugging
IEEE Transactions on Software Engineering
An efficient cache-based access anomaly detection scheme
ASPLOS IV Proceedings of the fourth international conference on Architectural support for programming languages and operating systems
Improving the accuracy of data race detection
PPOPP '91 Proceedings of the third ACM SIGPLAN symposium on Principles and practice of parallel programming
Race Frontier: reproducing data races in parallel-program debugging
PPOPP '91 Proceedings of the third ACM SIGPLAN symposium on Principles and practice of parallel programming
Techniques for debugging parallel programs with flowback analysis
ACM Transactions on Programming Languages and Systems (TOPLAS)
Dynamic slicing in the presence of unconstrained pointers
TAV4 Proceedings of the symposium on Testing, analysis, and verification
Loop monotonic computations: an approach for the efficient run-time detection of races
TAV4 Proceedings of the symposium on Testing, analysis, and verification
A bibliography of parallel debuggers, 1990 edition
ACM SIGPLAN Notices
Balancing runtime and replay costs in a trace-and-replay system
PADD '91 Proceedings of the 1991 ACM/ONR workshop on Parallel and distributed debugging
Detecting access anomalies in programs with critical sections
PADD '91 Proceedings of the 1991 ACM/ONR workshop on Parallel and distributed debugging
Debuggable concurrency extensions for standard ML
PADD '91 Proceedings of the 1991 ACM/ONR workshop on Parallel and distributed debugging
What are race conditions?: Some issues and formalizations
ACM Letters on Programming Languages and Systems (LOPLAS)
Optimally profiling and tracing programs
POPL '92 Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Optimal tracing and incremental reexecution for debugging long-running programs
PLDI '94 Proceedings of the ACM SIGPLAN 1994 conference on Programming language design and implementation
Debugging heterogeneous applications with Pangaea
SPDT '96 Proceedings of the SIGMETRICS symposium on Parallel and distributed tools
Static slicing of threaded programs
Proceedings of the 1998 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Detecting data races in Cilk programs that use locks
Proceedings of the tenth annual ACM symposium on Parallel algorithms and architectures
Compile-time detection of race conditions in a parallel program
ICS '89 Proceedings of the 3rd international conference on Supercomputing
Parallel performance prediction using lost cycles analysis
Proceedings of the 1994 ACM/IEEE conference on Supercomputing
The Combining DAG: A Technique for Parallel Data Flow Analysis
IEEE Transactions on Parallel and Distributed Systems
IEEE Transactions on Software Engineering
Event Manipulation for Nondeterministic Shared-Memory Programs
HPCN Europe 2001 Proceedings of the 9th International Conference on High-Performance Computing and Networking
A Perturbation-Free Replay Platform for Cross-Optimized Multithreaded Applications
IPDPS '01 Proceedings of the 15th International Parallel & Distributed Processing Symposium
Context-sensitive slicing of concurrent programs
Proceedings of the 9th European software engineering conference held jointly with 11th ACM SIGSOFT international symposium on Foundations of software engineering
On-the-fly detection of access anomalies
ACM SIGPLAN Notices - Best of PLDI 1979-1999
A Fast Assembly Level Reverse Execution Method via Dynamic Slicing
Proceedings of the 26th International Conference on Software Engineering
Assembly instruction level reverse execution for debugging
ACM Transactions on Software Engineering and Methodology (TOSEM)
A brief survey of program slicing
ACM SIGSOFT Software Engineering Notes
A serializability violation detector for shared-memory server programs
Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation
Replay compilation: improving debuggability of a just-in-time compiler
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
Proceedings of the 2007 international symposium on Software testing and analysis
The Cilk++ concurrency platform
Proceedings of the 46th Annual Design Automation Conference
The Cilk++ concurrency platform
The Journal of Supercomputing
The Journal of Supercomputing
A tool for layered analysing and understanding of distributed programs
Computer Communications
Hi-index | 0.00 |
This paper addresses the design and implementation of an integrated debugging system for parallel programs running on shared memory multi-processors (SMMP). We describe the use of flowback analysis to provide information on causal relationships between events in a program's execution without re-executing the program for debugging. We introduce a mechanism called incremental tracing that, by using semantic analyses of the debugged program, makes the flowback analysis practical with only a small amount of trace generated during execution. We extend flowback analysis to apply to parallel programs and describe a method to detect race conditions in the interactions of the co-operating processes.