Vampir vampir visualization and Analysis of mpi resources



Yüklə 444 b.
tarix06.05.2018
ölçüsü444 b.
#42392


VAMPIR


VAMPIR

  • Visualization and Analysis of MPI Resources

  • Commercial tool from PALLAS GmbH

  • VAMPIRtrace - MPI profiling library

  • VAMPIR - trace visualization tool



VAMPIRtrace

  • Separate Installation and User’s Guide for each supported platform

  • Works with MPICH and all vendor MPIs

  • Instrumentation done by linking your application with the VAMPIRtrace library

  • API for stopping and starting tracing and for inserting user-defined events into the trace file

  • Trace files generated by MPI processes are automatically collected and merged into a single trace file



VAMPIRtrace API

  • Used to start and stop tracing and to define application-specific activities

  • Error to call any VAMPIRtrace API routines before MPI_Init or after MPI_Finalize

  • To disable trace collection for the local process:

    • void VT_traceoff(void)
    • SUBROUTINE VTTRACEOFF()
  • To re-enable trace collection for the local process:

    • void VT_traceon(void)
    • SUBROUTINE VTTRACEON()


VAMPIRtrace API (cont.)

  • User-defined activities

    • Process states with start and stop times
    • Activitiy class can contain activities with different symbolic names
    • Start and stop routines identify activity by an integer code that is attached to the class/symbol pair by first calling a definition routine
    • Activity definitions are process local, but integer codes must be assigned in a globally consistent manner.


VAMPIRtrace Configuration File

  • Logfile-name

  • Logfile-rank

    • Rank of process that will write logfile
  • Internal-msgs [on|off]

    • Specifies whether communications internal to the MPI library should be traced


Configuration file (cont.)

  • Activity [on|off]

    • Defines a filter for matched activity classes
  • Symbol [on|off]

  • Filter directives are evaluated in order.



Filtering Example



Default Configuration



Limiting VAMPIRtrace Logfile Size

  • Limit number of events to be logged by scaling down application input files, iteration count, number of processes, etc.

  • Enable trace data collection for just a subset of the application’s runtime.

  • Use the filtering mechanism to limit the set of logged events.



Managing VAMPIRtrace API Calls

  • Need both instrumented and uninstrumented versions

  • Dummy API library libVTnull.a

  • Use C preprocessor (or equivalent tool for Fortran) to guard calls to the VAMPIRtrace API using #ifdef directives



VAMPIR

  • Highly configurable trace visualization tool

  • Originally developed by Forschungszentrum Julich GmbH under name PARvis

  • Available for all major workstations and some SMPs and MPPs

  • Requires graphical display running X11R5 or later



VAMPIR Displays

  • Process State Display

  • Statistics Display

  • Timeline Display

  • Communications Statistics

  • Configured by using

    • Pull-down menus
    • Configuration file






















Yüklə 444 b.

Dostları ilə paylaş:




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©www.genderi.org 2024
rəhbərliyinə müraciət

    Ana səhifə