TAU (Tuning and Analysis Utilities)

Category: Tools-Performance-Profiling

Description

TAU Performance System is a portable profiling and tracing toolkit for performance analysis of parallel programs written in Fortran, C, C++, Java, Python.

For more information visit TAU home page.

Use

TAU is capable of gathering performance information through instrumentation of functions, methods, basic blocks, and statements. TAU's profile visualization tool, paraprof, provides graphical displays of all the performance analysis results, in aggregate and single node/context/thread forms.

Using TAU

  module load tau
This command sets TAUROOT environment variable on NICS platforms and puts the TAU compiler wrappers in your PATH. Automatic instrumentation when compiling with the C TAU wrapper:
>  export TAU_MAKEFILE=${TAUROOT}/lib/Makefile.tau-mpi-pdt    # ksh syntax
>  tau_f90.sh test.f


Debug: Parsing with PDT Parser
Executing> /sw/xt/tau/2.17/cnl2.0+pgi7.0.7/pdtoolkit-3.12//craycnl/bin/f95parse mpi_example8.f
-I/sw/xt/tau/2.17/cnl2.0+pgi7.0.7/tau-2.17/include -I/opt/xt-mpt/default/mpich2-64/P/include


Debug: Instrumenting with TAU
Executing> /sw/xt/tau/2.17/cnl2.0+pgi7.0.7/tau-2.17/craycnl/bin/tau_instrumentor mpi_example8.pdb mpi_example8.f -o
mpi_example8.inst.f


Debug: Compiling (Individually) with Instrumented Code
Executing> ftn -I. -c mpi_example8.inst.f -I/sw/xt/tau/2.17/cnl2.0+pgi7.0.7/tau-2.17/include
-I/opt/xt-mpt/default/mpich2-64/P/include -o mpi_example8.o
/opt/xt-pe/2.0.33/bin/snos64/ftn: INFO: linux target is being used


Debug: Linking (Together) object files
Executing> ftn mpi_example8.o -L/opt/xt-mpt/default/mpich2-64/P/lib -L/sw/xt/tau/2.17/cnl2.0+pgi7.0.7/tau-2.17/craycnl/lib
-lTauMpi-mpi-pdt -lrt -lmpichcxx -lmpich -lrt -L/sw/xt/tau/2.17/cnl2.0+pgi7.0.7/tau-2.17/craycnl/lib -ltau-mpi-pdt
-L/opt/pgi/7.0.7/linux86-64/7.0/bin/../lib -lstd -lC -lpgc -o a.out
/opt/xt-pe/2.0.33/bin/snos64/ftn: INFO: linux target is being used


Debug: cleaning inst file
Executing> /bin/rm -f mpi_example8.inst.f


Debug: cleaning PDB file
Executing> /bin/rm -f mpi_example8.pdb

> aprun -n 4 ./a.out

> ls prof*
profile.0.0.0  profile.1.0.0  profile.2.0.0  profile.3.0.0
If you want to visualize the profile, then do this:
> module load java-jre
> module load tau   #if not loaded
> paraprof 

Support

This package has the following support level : Supported

Available Versions

Version Available Builds
pgi gnu pathscale Other
2.18.1
v
u
u
v
v
v
2.18.2
v
v
?
?
2.19
v