Before tracing your applications make sure to complete the steps described in the previous section.
Tracing MPI Applications in Python*
To create a trace file for an MPI application written in Python*, use the -trace option with "libVT.so libmpi.so" argument. For example:
$ mpiexec.hydra -trace "libVT.so libmpi.so" -n 2 python helloworld.py
To change the trace name, see the VT_LOGFILE_NAME variable or refer to the example below:
$ export VT_LOGFILE_NAME=helloworld.stf $ export VT_LOGFILE_FORMAT=SINGLESTF
Tracing on Linux* OS
Tracing without rebuilding
The common way to trace an MPI application is to dynamically load the Intel® Trace Collector profiling library during execution. The profiling library then intercepts all MPI calls and generates a trace file. The easiest way to do this is to use the -trace option of the mpirun command. For example:
$ mpirun -trace -n 4 ./myApp
If you use your own launch scripts, you can use the LD_PRELOAD environment variable to point to the appropriate profiling library (see Product Components). For example, for regular tracing:
$ export LD_PRELOAD=libVT.so $ mpirun -n 4 ./myApp
Relinking with profiling library
In some cases you may need to rebuild your application to trace it – for example, if it is statically linked with the MPI library. In this case, use the -trace compiler option to link the libraries required for tracing. To generate a trace file, run the application as usual. For example:
$ mpiicc -trace myApp.c -o myApp $ mpirun -n 4 ./myApp
If you wish to specify the profiling library, use the -profile=<profiling_library> option instead of -trace. For the list of available libraries, see Product Components. For example, for the fail-safe tracing library:
$ mpiicc -profile=vtfs myApp.c -o myApp
The -trace and -profile options link the selected Intel® Trace Collector library statically. To link it dynamically, use the additional -dynamic_log option.
For more details on the options used, see the Intel® MPI Library documentation.
Tracing on Windows* OS
To trace an application on Windows* OS, you need to recompile your application and link it with the Intel® Trace Collector profiling library. The -trace compiler option helps you do this job.
Do the following:
Rebuild your application with the -trace compiler option. For example:
> mpiicc -trace myApp.c
Run the application as usual:
> mpiexec -n 4 myApp.exe
After running your application, a trace file with the .stf extension is created. Open this trace file in Intel® Trace Analyzer to analyze the application behavior. See the Intel® Trace Analyzer User and Reference Guide for details.