The Dynamic Probe Class Library An Infrastructure for Developing Instrumentation for Performance Too - PowerPoint PPT Presentation

1 / 22
About This Presentation
Title:

The Dynamic Probe Class Library An Infrastructure for Developing Instrumentation for Performance Too

Description:

difficult to get near peak performance, why? Complex architectures mean complex tools ... impossible with 3rd party libraries. History of Dyninst / DPCL ... – PowerPoint PPT presentation

Number of Views:34
Avg rating:3.0/5.0
Slides: 23
Provided by: Michae7
Category:

less

Transcript and Presenter's Notes

Title: The Dynamic Probe Class Library An Infrastructure for Developing Instrumentation for Performance Too


1
The Dynamic Probe Class Library An
Infrastructure for Developing Instrumentation for
Performance Tools
  • Luiz DeRose and Ted Hoover (IBM)
  • Jeffrey K. Hollingsworth (UMD)
  • presented by M. Voss

2
Outline
  • Motivation for Dyninst / DPCL
  • Background on Dynamic Instrumentation
  • Dyninst
  • DPCL
  • Example Tools
  • Conclusion

3
Motivation for Dyninst/DPCL
  • Architectures are becoming more complex
  • especially true of parallel machines
  • difficult to get near peak performance, why?
  • Complex architectures mean complex tools
  • tool development resources are shrinking
  • more tools are needed fewer tools are made
  • Big cost of tool development instrumentation
  • it would help to have a general infrastructure
    for arbitrary instrumentation ? DPCL

4
What is Instrumentation?
  • Collect data about the performance of an app
  • inserted into the application, e.g. calls to
    timers
  • To keep overhead low
  • few events should be recorded
  • information per event should be small
  • To get maximum information
  • lots of events need to be recorded
  • lots of information about each events is kept
  • Obvious conflict between goals

5
Dynamic Instrumentation
  • Can insert instrumentation dynamically as an
    application is executing
  • Insert instrumentation only when it is needed

Look for Bottleneck
Inspect Closely to Find Cause
Inspect Closely to Find Solution
6
Benefits of Dynamic Instrumentation
  • You can highly tune the resolution of
    instrumentation
  • reduce perturbation to application
  • reduce size of trace file (collected data)
  • Dont need to recompile or relink
  • aggravating at best
  • impossible with 3rd party libraries

7
History of Dyninst / DPCL
Paradyn Parallel Performance Toolset (U of Wisc.)
DPCL commercial parallel tool (IBM)
Dyninst (U of Maryland)
(just the dynamic instrumentation part)
8
How Dyninst Works
9
How Dyninst Works (part II)
  • Uses the procs or ptrace interface
  • designed for debuggers
  • lets you inspect and modify program image
  • Dyninst hides the details of
  • building and compiling new code snippets
  • attaching to a target application
  • finding points in the target application
  • inserting the code in the target application

10
DPCL Dynamic Probe Class Library
  • Tightly coupled to AIX Parallel Operating
    Environment (POE)
  • can handle parallel applications well
  • handles both MPI and threaded applications
  • Is a value-added layer on top of Dyninst
  • parallel stuff
  • more security
  • an asynchronous model
  • probes can communicate back to tool

11
How DPCL Works
Ais_send()
12
Probes and Snippets
  • Point probes
  • interesting locations in the application
  • function entry and exit points,
  • One shot probes
  • executed right away, once
  • Phase probes
  • executed every so often when timer expires
  • Snippet
  • the inserted instrumentation code

13
Scalability
  • Big parallel apps on big parallel machines
  • many processes, but similar images
  • Modify one copy of image, applied to all
  • Asynchronous nature of daemons

14
Example Tools
  • Dynamic Printf
  • insert printfs when you want them
  • DynaProf
  • gdb-like profiling tool for serial MPI and OpenMP
    apps
  • GUI Dynamic Instrumentation
  • Paraver

15
Future Work
  • DPCL is open source
  • Debugger support
  • mapping to line numbers
  • more variable info
  • arbitrary probe points
  • DPCL-Dyninst compatibility
  • trying to remerge the source for these projects

16
Vampir/GuideView Dynamic Instrumentation Tool
17
GuideView for performance analysis in OpenMP
codes.
Vampir for MPI codes.
18
Smg98 Time
19
Sppm Time
20
Sweep3d Time
21
Umt98 Time
22
Instrumentation Time
Write a Comment
User Comments (0)
About PowerShow.com