CLU reference manual
Debugging Parallel Programs with Instant Replay
IEEE Transactions on Computers
ASPLOS II Proceedings of the second international conference on Architectual support for programming languages and operating systems
Multilanguage Parallel Programming of Heterogeneous Machines
IEEE Transactions on Computers - Special issue on architectural support for programming languages and operating systems
Time, clocks, and the ordering of events in a distributed system
Communications of the ACM
INTERACTIVE DEBUGGING IN A DISTRIBUTED COMPUTATIONAL
INTERACTIVE DEBUGGING IN A DISTRIBUTED COMPUTATIONAL
Debugging techniques for communicating, loosely-coupled processes
Debugging techniques for communicating, loosely-coupled processes
Adaptability and portability of symbolic debuggers
Adaptability and portability of symbolic debuggers
ACM Computing Surveys (CSUR)
A bibliography of parallel debuggers, 1990 edition
ACM SIGPLAN Notices
Hardware-assisted replay of multiprocessor programs
PADD '91 Proceedings of the 1991 ACM/ONR workshop on Parallel and distributed debugging
Debugging heterogeneous applications with Pangaea
SPDT '96 Proceedings of the SIGMETRICS symposium on Parallel and distributed tools
Capo: a software-hardware interface for practical deterministic multiprocessor replay
Proceedings of the 14th international conference on Architectural support for programming languages and operating systems
Computer Communications
Proceedings of the 40th Annual International Symposium on Computer Architecture
Hi-index | 0.00 |
The Agora system supports the development of heterogeneous parallel programs, e.g. programs written in multiple languages and running on heterogeneous machines. Agora has been used since September 1986 in a large distributed system [1]: Two versions of the application have been demonstrated in one year, contrary to the expectation of two years per one version. The simplicity in debugging is one of the reasons of the productivity speedup gained. This simplicity is due both to the deeper understanding that the debugger has of parallel systems, and to a novel feature: the ability to replay the execution of parallel systems built with Agora. A user is able to exactly repeat for any number of times and at a slower pace an execution that failed. This makes it easy to identify time-dependent errors, which are peculiar to parallel and distributed systems. The debugger can also be customized to support user defined synchronization primitives, which are built on top of the system provided ones. The Agora debugger tackles three set of problems that no parallel debugger in the past has simultaneously addressed: dealing with programming-in-the-large, multiple processes in different languages, and multiple machine architectures.