Troubleshooting Source Not Available

Symptoms

After running the Intel Advisor tools to analyze your running application's target, the displayed report may contain information about your target's source code that is unexpected or does not make sense.

Note

When you see that source code is not available, be aware that improper build settings can also cause this symptom. Missing debug information symbols disable the binary-to-source correlation that allows the normal display of source code. If the source code for annotations is not displayed in Report and Source windows, this may indicate missing debug information symbols, as explained in the help topic Troubleshooting Debug Information Not Available.

For example, one or more of the following might occur only for the calls into third-party library routine code for which library sources are not available to the project:

  • When viewing a Report window, a column that should contain either a source location or a function name instead contains a question mark (?), [Unknown], the target's executable-name (rather than a source file name), is blank, or contains a broken icon, such as Code location source code not available icon, Focus code location source code not available icon, Related code location source code not available icon, or for a Survey loop.

  • When viewing a Source window, you may see a message Intel Advisor cannot show source code for this location instead of the collected data. Also the Call Stack pane or a Function column may contain ?, [Unknown], or a broken icon (listed above). For example, if the top (starting) function line in a Call Stack pane contains source information, but calls to library routines lower in the calls stack do not contain source information.

  • When using the Intel Advisor GUI while viewing the Summary window, you see a message No annotations detected in your project sources when your sources do contain Intel Advisor annotations.

If your application's target calls libraries for which sources are not found by the project, you may see some symptoms about source code not being available. For example, the C/C++ sample application stats calls certain library routines to calculate standard deviation or similar values. Because the library's source code for those functions is not available, the symptoms like a broken icon or the message Intel Advisor cannot show source code for this location are expected.

Details

The most common causes are:

  • The target's execution paths called library functions for which sources are not available.

  • The cause may be that debug information symbols are not available for the main part of the program and annotated parallel sites and their tasks.

Possible Correction Strategies

  • Do the following:

    1. If source and debug information symbols are available for the annotated parallel sites and their tasks, but not for calls into library code for which sources are not available, this is expected and is not a problem. If you were considering adding annotations to the library code, instead add site/task annotations to the code that calls the library routines.

    2. If source and debug information symbols are not available for the main part of the program and annotated parallel sites and their tasks, see the help topic Troubleshooting Debug Information Not Available.

For more complete information about compiler optimizations, see our Optimization Notice.