The effective daum coursework focused on open source software in Jeju National Univ. (2011)
SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data...
-
Upload
rafe-lester -
Category
Documents
-
view
216 -
download
4
Transcript of SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data...
![Page 1: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/1.jpg)
SvPablo
URL http://www-pablo.cs.uiuc.edu/
Version Pablo release 5.0
Languages HPF, ANSI C
Platforms SGI running IRIX 6Sun SPARC running Solaris
![Page 2: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/2.jpg)
SvPablo
• Source view Pablo• GUI for instrumenting source code and viewing
runtime performance data• Joint work at Univ. of Illinois and Rice Univ.• HPF programs automatically instrumented by PGI
HPF compiler• C programs interactively instrumented using GUI• Fortran 77/90 parser developed at JPL
![Page 3: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/3.jpg)
SvPablo Project
• Set of application source files
• One or more performance contexts
• Performance context includes
– instrumentation specification - source code points where performance measurements are to be inserted
– set of performance data files in SDDF, generated when instrumented code is run
• Source files and parser options are shared among all contexts.
![Page 4: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/4.jpg)
SvPablo Main Window
![Page 5: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/5.jpg)
Project Menu
![Page 6: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/6.jpg)
Project Menu Selections
• New Project
• Open Project
• Edit Project
• Select Project Base Directory
• Load Color Configuration
• Exit SvPablo
![Page 7: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/7.jpg)
SvPablo on-line help
![Page 8: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/8.jpg)
New Project dialog box
![Page 9: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/9.jpg)
Edit Project dialog box
![Page 10: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/10.jpg)
Instrumentation of HPF Programs
• Given appropriate flags, the PGI HPF compiler automatically inserts calls to SvPablo instrumentation library routines at the beginning and end of every procedure and for each executable line.
• After compiling and linking with the SvPablo HPF trace library, the user runs the instrumented executable which generates per-process trace files.
• User runs HPFCombine to merge per-process trace files into a single performance file SDDF format.
![Page 11: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/11.jpg)
Overview of HPF Instrumentation
![Page 12: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/12.jpg)
Compiling and Linking
Compile with pghpf flag -Mprof=lines to active calls to the SvPablo HPF trace library:
% pghpf -c -Mprof=lines part1.F % pghpf -c -Mprof=lines part2.F
Link with flag -Mprof=lines to activate calls to both theSvPablo HPF trace library and the PGI profiler library.Link with flag -Mprof=stats to activate only calls to the SvPablo HPF trace library: % pghpf -Mprof=stats part1.o part2.o /usr/local/SvPablo/lib/pghpf2SDDF.o
![Page 13: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/13.jpg)
Procedure Metrics
• Count
• Exclusive Duration
• Inclusive Duration
• Send Msg Duration
• Receive Msg Duration
![Page 14: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/14.jpg)
Line Metrics
• Count
• Duration
• Exclusive Duration
• Message Send Duration
• Message Send Count
• Message Send Size
• Message Receive Duration
• Message Receive Count
• Message Receive Size
![Page 15: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/15.jpg)
Performance Statistics
• Performance file contains the following statistics for the procedure and line performance metrics:
– mean
– standard deviation
– minimum value
– process corresponding to minimum value
– maximum value
– process corresponding to maximum value
![Page 16: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/16.jpg)
Performance view of HPF program
![Page 17: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/17.jpg)
Performance statistics for subroutine relax
![Page 18: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/18.jpg)
Instrumentation of C Programs
• Use GUI to instrument selected constructs in C source files
• Compile instrumented source files and link with SvPablo C Trace Library
• Run instrumented executable
• Combine per-process trace files using CCombine
![Page 19: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/19.jpg)
Overview of C Instrumentation
![Page 20: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/20.jpg)
C Instrumentation GUI
![Page 21: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/21.jpg)
Multiple instrumentable constructs in source line
![Page 22: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/22.jpg)
Instrument options for routine main
![Page 23: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/23.jpg)
Files Created By Saving Instrumentation
• Each instrumented file is saved as <file name>.<inst directory>.inst.c
• The following files are saved in the instrumentation directory:
– InstrumentationInit.c, containing the new main function for the instrumented program
– projectHistory file, containing information for the parser and for CCombine
– a configuration file named <file name>.c.config for each instrumented file, containing the instrumented points used by the GUI
![Page 24: SvPablo. Source view Pablo GUI for instrumenting source code and viewing runtime performance data Joint work at Univ. of Illinois and Rice Univ. HPF programs.](https://reader036.fdocuments.us/reader036/viewer/2022070411/56649f565503460f94c7b03c/html5/thumbnails/24.jpg)
Compiling and Linking
% cc -64 -c file1.Context1.inst.c
% cc -64 -c file2.Context1.inst.c
% cc -64 -c Context1/InstrumentationInit.c
% cc -64 -o app file1.Context1.inst.o file2.Context2.inst.o \
InstrumentationInit.o /usr/local/SvPablo/lib/cTrace.o \
/usr/local/SvPablo/lib/svPabloLib_MPI.o
-L/usr/lib64/libmpi.so -lmpi