Intel® oneAPI HPC Toolkit
Get help with building, analyzing, optimizing, and scaling high-performance computing (HPC) applications.
Announcements
This community is designed for sharing of public information. Please do not share Intel or third-party confidential information here.
1917 Discussions

Source location in Trace Analyzer in applications statically linked with Intel® MPI Library

ipasichnyk
Novice
189 Views

I want to perform analysis of the application which is compiled with the following command line:

$ mpiicc -static_mpi -trace -g myApp.c -o myApp
$ mpirun -n 4 ./myApp

Additionally I record the location of my function calls by setting the environment variable VT_PCTRACE with the following command

$ export VT_PCTRACE=5

By opening an stf file in the Trace Analyzer GUI the dialog "Details on Funciton MPI" contains link "Show source". But on clicking this link appears the window "None of the source files are available" (see attachments). I perform all actions (compiling, collecting and analyzing) from the same directory.

Interesting that by dynamically linking MPI library everything works fine.

My version of itac is 9.0.3.049.

 

 

0 Kudos
1 Solution
Artem_R_Intel1
Employee
189 Views

Colleagues have prompted more elegant solution for this - use 'mpiicc -nostrip ...':

-nostrip
Use this option to turn off the debug information stripping while linking the Intel® MPI Library statically.

View solution in original post

3 Replies
Artem_R_Intel1
Employee
189 Views

Hi Igor,

Could you please submit a ticket for this problem via Intel Premier Support?

Artem_R_Intel1
Employee
189 Views

Hi Igor,

If you prefer to use static MPI libraries you can try the following W/A:

Run 'mpiicc -static_mpi -trace -g myApp.c -o myApp -show' - there should be output like this:
icc ...
objcopy ...
objcopy ...
objcopy ...

Compile your MPI application with the shown icc command line (without objcopy). Check that source code is visible in the Intel Trace Analyzer.

Artem_R_Intel1
Employee
190 Views

Colleagues have prompted more elegant solution for this - use 'mpiicc -nostrip ...':

-nostrip
Use this option to turn off the debug information stripping while linking the Intel® MPI Library statically.

Reply