• 2019 Update 3
  • 03/07/2019
  • Public Content
  • Download as PDF
Contents

Tracing on Windows* OS

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
Note
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.
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:
  1. Rebuild your application with the
    -trace
    compiler option. For example:
    > mpiicc -trace myApp.c
  2. 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.

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804