Debugging Parallel Programs with Instant Replay
IEEE Transactions on Computers
Series 32000 programmer's reference manual
Series 32000 programmer's reference manual
High-level debugging in parasight
PADD '88 Proceedings of the 1988 ACM SIGPLAN and SIGOPS workshop on Parallel and distributed debugging
Introduction to DECsystem-20: Assembly Language Programming
Introduction to DECsystem-20: Assembly Language Programming
Gprof: A call graph execution profiler
SIGPLAN '82 Proceedings of the 1982 SIGPLAN symposium on Compiler construction
Organization and statistical simulation of hierarchical multiprocessors
Organization and statistical simulation of hierarchical multiprocessors
Parasight: a high-level debugger/profiler architecture for shared-memory multiprocessor
ICS '88 Proceedings of the 2nd international conference on Supercomputing
Efficient debugging primitives for multiprocessors
ASPLOS III Proceedings of the third international conference on Architectural support for programming languages and operating systems
High-level debugging in parasight
PADD '88 Proceedings of the 1988 ACM SIGPLAN and SIGOPS workshop on Parallel and distributed debugging
Quartz: a tool for tuning parallel program performance
SIGMETRICS '90 Proceedings of the 1990 ACM SIGMETRICS conference on Measurement and modeling of computer systems
A portable interface for on-the-fly instruction space modification
ASPLOS IV Proceedings of the fourth international conference on Architectural support for programming languages and operating systems
Experience with a performance analyzer for multithreaded applications
Proceedings of the 1990 ACM/IEEE conference on Supercomputing
A bibliography of parallel debuggers, 1990 edition
ACM SIGPLAN Notices
PADD '91 Proceedings of the 1991 ACM/ONR workshop on Parallel and distributed debugging
MemSpy: analyzing memory system bottlenecks in programs
SIGMETRICS '92/PERFORMANCE '92 Proceedings of the 1992 ACM SIGMETRICS joint international conference on Measurement and modeling of computer systems
An annotated bibliography of interactive program steering
ACM SIGPLAN Notices
The Journal of Supercomputing
Mtool: An Integrated System for Performance Debugging Shared Memory Multiprocessor Applications
IEEE Transactions on Parallel and Distributed Systems
A Management Architecture for Measuring and Monitoring the Behavior of Digital Libraries
ECDL '98 Proceedings of the Second European Conference on Research and Advanced Technology for Digital Libraries
Java virtual machine profiler interface
IBM Systems Journal
Comprehensive profiling support in the javaTM virtual machine
COOTS'99 Proceedings of the 5th conference on USENIX Conference on Object-Oriented Technologies & Systems - Volume 5
Controlled dynamic performance analysis
WOSP '08 Proceedings of the 7th international workshop on Software and performance
Dynamic detection of event handlers
WODA '08 Proceedings of the 2008 international workshop on dynamic analysis: held in conjunction with the ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA 2008)
Hi-index | 0.00 |
Debugging the performance of parallel applications is crucial for fully utilizing the potential of multiprocessor hardware. This paper describes profiling tools in Parasight, a programming environment that is geared towards non-intrusive performance analysis and high-level debugging. In Parasight, profilers execute as observer programs which run concurrently with the target program and monitor its behavior. This design grew out of our experience in debugging and monitoring the performance of real parallel programs.Parasight is used to implement an interactive profiler based on gprof, a standard UNIX profiling tool. The new profiler is an interactive tool that is dynamically controlled by the programmer and can run concurrently with the target program. It is also less intrusive than the original. This was achieved in part by off-loading the profile gathering computations to an adjacent processor and in part by allowing selective profiling.In conjunction with the new profiler, Parasight is used to implement high-level custom profiling routines that may be inserted at arbitrary locations in a target program to measure user-defined abstractions. One outcome has been to develop the beginnings of a profiling methodology in which high-level performance problems are detected through a function profiler and detailed performance bottlenecks are analyzed with custom profiling routines.Parasight, the new profiler and their associated tools have been implemented on the Encore Multimax, a shared-memory multiprocessor running UNIX. They have been used to profile both parallel and sequential programs.