| January 18, 2009 11:00 PM PST | |
Introduction :
Intel® Parallel Amplifier can analyze just about any native binary. However, some settings make analysis easier.
Useful Settings for Intel® Parallel Amplifier:
|
Switch |
Purpose |
|
/Zi |
Intel® Parallel Amplifier uses the symbols to associate addresses to source lines. |
|
"Release" Build |
The time expired to execute a section of code may change if you don't use your normal production switches (Not /Od). Potentially causing you to analyze and attempt optimization on a section of code that is not a performance problem. |
|
/MD or /MDd (recommended) |
Using this setting will allow Amplifier to differentiate C runtime calls from your code in User Attribution. |
Useful Settings for OpenMP* Applications compiled with the Intel® Compiler for Intel® Parallel Amplifier:
|
Switch |
Purpose |
|
/Qopenmp (highly recommended) |
Without this switch Intel® Parallel Amplifier will not identify parallel regions due to OpenMP pragmas. |
|
/MD or /MDd (recommended) |
In Intel® Compiler 10.1 this setting chooses the dynamic version of the OpenMP* runtime libraries which has been instrumented for Intel® Parallel Amplifier. In Intel Compiler 11.0 or Intel Parallel Composer, please see below. |
|
/Qopenmp-link:dynamic (recommended) |
In Intel® Compiler 11.0 and Intel® Composer this setting chooses the dynamic version of the OpenMP* runtime libraries which has been instrumented for Intel® Parallel Amplifier. This is the default when using Intel Compiler 11.0 or Intel Parallel Composer. |
Useful Setting for applications using Intel® Threading Building Blocks:
|
Switch |
Purpose |
|
/D |
This setting adds the proper instrumentation allowing Intel® Parallel Amplifier to properly identify Intel® Threading Building Blocks. |
Settings not recommended for use with Intel® Parallel Amplifier:
|
Switch |
Purpose |
|
/Qtcheck |
This setting is an alternative method of instrumentation for Intel® Thread Checker, it will cause overhead altering the performance analysis. Intel® Parallel Amplifier does not use this switch. |
|
/Qopenmp-link:static (do not use) |
This setting places the static version of the Intel® OpenMP* libraries into your code. This version does not contain the necessary instrumentation for Intel® Parallel Amplifier. |
|
/Qtprofile (do not use) |
This setting is an alternative method of instrumentation for Intel® Thread Profiler, it will cause overhead altering the performance analysis. Intel® Parallel Amplifier does not use this switch. |
|
/Qopenmp_stubs (do not use) |
This setting will prevent OpenMP* codes from actually being parallel. |
|
/debug:parallel (do not use) |
This setting enables the Intel® Parallel Debugger Extension for the Intel® Parallel Composer. It is not used for the Intel® Parallel Amplifier |
Settings which have no impact on Intel® Parallel Amplifier:
|
Switch |
Purpose |
|
/FIXED:NO |
This is not required for Intel® Parallel Amplifier. It is a linker switch required by the code instrumentor used in Intel Thread Checker, Intel Thread Profiler, and in the call graph in Intel® VTuneTM Performance Analyzer. |
Note:
Intel® Parallel Amplifier works better with dynamic versions of the following libraries:
- OpenMP* Runtime Library (libiomp5md.dll or libguide40.dll)
- C Runtime Library (msvcr90.dll, msvcr80.dll, msvcr90d.dll, or msvcr80d.dll)
Intel® Parallel Amplifier does not work as well with the following libraries:
- OpenMP* Runtime Library (libiomp5mt.lib, libguide.lib, vcomp80.dll/vcomp90.dll or vcomp80d.dll/vcomp90d.dll)
- C Runtime Library (libcmt.lib)
More Information:
This article addressed the most obvious switches that developers would have concerns over. Most switches will work with Intel® Parallel Amplifier - but not every switch combination is tested. If you have information regarding other switches, please add a comment to this article. If you have question regarding a particular switch please submit an issue to the Intel® Parallel Studio Forum.
Version :
Intel® Parallel Amplifier
Intel® Parallel Composer
Intel® C++ Compiler for Windows* 11.0
Intel® C++ Compiler for Windows* 10.1
Microsoft* Visual Studio 2005
Microsoft* Visual Studio 2008
This article applies to: Intel Software Network communities, Intel SW Partner program, Parallel Programming, Tools, Intel® Parallel Amplifier Knowledge Base
For more complete information about compiler optimizations, see our Optimization Notice.
Alexei Alexandrov (Intel)
| ||
Eric Moore (Intel)
|

