Shared-memory performance profiling
PPOPP '97 Proceedings of the sixth ACM SIGPLAN symposium on Principles and practice of parallel programming
Portable profiling and tracing for parallel, scientific applications using C++
SPDT '98 Proceedings of the SIGMETRICS symposium on Parallel and distributed tools
Fine-grained dynamic instrumentation of commodity operating system kernels
OSDI '99 Proceedings of the third symposium on Operating systems design and implementation
Dynamic instrumentation of threaded applications
Proceedings of the seventh ACM SIGPLAN symposium on Principles and practice of parallel programming
Residual test coverage monitoring
Proceedings of the 21st international conference on Software engineering
A framework for reducing the cost of instrumented code
Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation
Dynamic analysis for locating product features in Ada code
Proceedings of the 2001 annual ACM SIGAda international conference on Ada
Web cache prefetching as an aspect: towards a dynamic-weaving based solution
Proceedings of the 2nd international conference on Aspect-oriented software development
Dynamic Instrumentation and Performance Prediction of Application Execution
HPCN Europe 2001 Proceedings of the 9th International Conference on High-Performance Computing and Networking
Java Mirrors: Building Blocks for Remote Interaction
IPDPS '02 Proceedings of the 16th International Parallel and Distributed Processing Symposium
A Callgraph-Based Search Strategy for Automated Performance Diagnosis (Distinguished Paper)
Euro-Par '00 Proceedings from the 6th International Euro-Par Conference on Parallel Processing
The CrossGrid Performance Analysis Tool for Interactive Grid Applications
Proceedings of the 9th European PVM/MPI Users' Group Meeting on Recent Advances in Parallel Virtual Machine and Message Passing Interface
Automatic performance analysis of hybrid MPI/OpenMP applications
Journal of Systems Architecture: the EUROMICRO Journal - Special issue: Evolutions in parallel distributed and network-based processing
MRNet: A Software-Based Multicast/Reduction Network for Scalable Tools
Proceedings of the 2003 ACM/IEEE conference on Supercomputing
An expressive aspect language for system applications with Arachne
Proceedings of the 4th international conference on Aspect-oriented software development
Demand-driven structural testing with dynamic instrumentation
Proceedings of the 27th international conference on Software engineering
Nonintrusive precision instrumentation of microcontroller software
LCTES '05 Proceedings of the 2005 ACM SIGPLAN/SIGBED conference on Languages, compilers, and tools for embedded systems
Instrumentation in software dynamic translators for self-managed systems
WOSS '04 Proceedings of the 1st ACM SIGSOFT workshop on Self-managed systems
Using Dynamic Kernel Instrumentation for Kernel and Application Tuning
International Journal of High Performance Computing Applications
An API for Runtime Code Patching
International Journal of High Performance Computing Applications
A Performance Analysis Tool for Interactive Applications on the Grid
International Journal of High Performance Computing Applications
Efficient online computation of statement coverage
Journal of Systems and Software
Low overhead program monitoring and profiling
PASTE '05 Proceedings of the 6th ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Dynamic Adaptation of the Squid Web Cache with Arachne
IEEE Software
Application analysis using memory pressure
Proceedings of the 2005 workshop on Memory system performance
Grid environment for on-line application monitoring and performance analysis
Scientific Programming - AxGrids 2004
Dynamic instrumentation of production systems
ATEC '04 Proceedings of the annual conference on USENIX Annual Technical Conference
Java, peer-to-peer, and accountability: building blocks for distributed cycle sharing
VM'04 Proceedings of the 3rd conference on Virtual Machine Research And Technology Symposium - Volume 3
Interactive labs for experimental systems in education
ecs'07 Experimental computer science on Experimental computer science
High-level application-specific performance analysis using the G-PM tool
Future Generation Computer Systems
Virtual machine-provided context sensitive page mappings
Proceedings of the fourth ACM SIGPLAN/SIGOPS international conference on Virtual execution environments
Model Driven Performance Measurement and Assessment with MoDePeMART
MODELS '09 Proceedings of the 12th International Conference on Model Driven Engineering Languages and Systems
Automated tracing of I/O stack
EuroMPI'10 Proceedings of the 17th European MPI users' group meeting conference on Recent advances in the message passing interface
Jazz2: a flexible and extensible framework for structural testing in a Java VM
Proceedings of the 9th International Conference on Principles and Practice of Programming in Java
High-level application specific performance analysis using the G-PM tool
PVM/MPI'05 Proceedings of the 12th European PVM/MPI users' group conference on Recent Advances in Parallel Virtual Machine and Message Passing Interface
An expressive aspect language for system applications with arachne
Transactions on Aspect-Oriented Software Development I
Enabling modularity and re-use in dynamic program analysis tools for the java virtual machine
ECOOP'13 Proceedings of the 27th European conference on Object-Oriented Programming
The operating system: should there be one?
Proceedings of the Seventh Workshop on Programming Languages and Operating Systems
Hi-index | 0.00 |
We use a form of dynamic code generation, called dynamic instrumentation, to collect data about the execution of an application program. Dynamic instrumentation allows us to instrument running programs to collect performance and other types of information. The instrumentation code is generated incrementally and can be inserted and removed at any time. Our instrumentation currently runs on the SPARC, PA-RISC, Power 2, Alpha, and x86 architectures. Specification of what data to collect are written in a specialized language called the Metric Description Language, that is part of the Paradyn Parallel Performance Tools. This language allows platform independent descriptions of how to collect performance data. It also provides a concise way to specify, how to constrain performance data to particular resources such as modules, procedures, nodes, files, or message channels (or combinations of these resources). We also describe the details of how we weave instrumentation into a running program.