The application must be built with certain compiler flags in order for
the tool to collect the required information.
- XLC compilers:
- The -g option is required to collect debug information. This information
is used to correlate ticks with source code lines. (Optionally -qlinedebug
can be used in place of -g in order to produce smaller binaries.)
- For XLC version 12 compilers the -g8 option can optionally be used instead of -g to produce
better quality line debug information, at the tradeoff of a small additional performance overhead.
- The -qlistfmt=xml=all option enables the collection of compiler transformation reports.
These reports are used to determine the location of compiler optimizations such as inlining.
With this option enabled several XML report files will appear in the project after building.
- GCC compilers:
- The -g option is required to collect debug information. This information
is used to correlate ticks with source code lines.
Compiler transformation reports are currently not supported for GCC.
Potential Issues with Transformation Reports
Performance Advisor determines how your
executables are compiled by looking for XL compiler transformation reports and the
build output from builds launched from within the IDE.
If this information gets out of sync, for example because a build was run
manually on the remote machine, or in a shell or terminal window,
or because the -qlistfmt=xml=all option was removed but the existing
transformation reports were not, Performance Advisor can give
incorrect recommendations about compiler options.
If you suspect this is the case:
- Clean your project (right click on the project and select Clean Project)
- Remove any transformation reports in the project
- Rebuild your project (right click on the project and select Build Project)