Intel® Advisor Help
Running your target application with the Intel® Advisor can take substantially longer than running your target application without the Intel Advisor. Depending on an accuracy level and analyses you choose for a perspective, different overhead is added to your application execution time. For example:
Runtime Overhead / Analysis |
Survey |
Characterization |
Dependencies |
MAP |
---|---|---|---|---|
Target application runtime with Intel® Advisor compared to runtime without Intel® Advisor |
1.1x longer |
2 - 55x longer |
5 - 100x longer |
5 - 20x longer |
Use the following techniques to minimize overhead while collecting Intel Advisor analysis data. The Disabling additional analysis technique also minimizes finalization overhead.
Minimize collection overhead.
Applicable analysis: Survey.
Set to offline/after collection when:
Survey analysis runtime overhead exceeds 1.1x.
A large quantity of data is allocated on the stack, which is a common case for Fortran applications or applications with a large number of small, parallel, OpenMP* regions
Note: In the commands below, make sure to replace the myApplication with your application executable path and name before executing a command. If your application requires additional command line options, add them after the executable name.
To implement, do one of the following before/while running a Survey analysis:
Set Project Properties > Analysis Target > Survey Hotspots Analysis > Advanced > Stack unwinding mode > During collection.
Use the advisor CLI action option --stackwalk-mode=online. For example:
advisor --collect=survey --project-dir=./advi_results --stackwalk-mode=online -- ./myApplication
Minimize collection overhead.
Applicable analyses: Characterization with Trip Counts and FLOP collections enabled.
To implement, do one of the following before/while running the analysis:
Disable the Analysis Workflow pane > Characterization Collect call stacks checkbox.
Disable the Project Properties > Analysis Target > Trip Counts and FLOP Analysis > Advanced > Collect stacks checkbox.
Ensure the CLI action option --stacks is omitted from the command line. Alternative: Use the CLI action option --no-stacks.
Minimize collection overhead.
Applicable analysis: Survey.
The stitch stacks option restores a logical call tree for Intel® oneAPI Threading Building Blocks (oneTBB) or OpenMP* applications by catching notifications from the runtime and attaching stacks to a point introducing a parallel workload.
Disable when Survey analysis runtime overhead exceeds 1.1x.
Note: In the commands below, make sure to replace the myApplication with your application executable path and name before executing a command. If your application requires additional command line options, add them after the executable name.
To implement, do one of the following before/while running the analysis:
Disable the Project Properties > Analysis Target > Survey Hotspots Analysis > Advanced > Stitch stacks checkbox.
Use the advisor CLI action option --no-stack-stitching. For example:
advisor --collect=survey --project-dir=./advi_results --no-stack-stitching -- ./myApplication
Disabling stack stitching may decrease the overhead for applications using oneTBB.
Minimize collection overhead.
Applicable analysis: Survey.
Increase the wait time between each analysis collection sample when your target application runtime is long.
Note: In the commands below, make sure to replace the myApplication with your application executable path and name before executing a command. If your application requires additional command line options, add them after the executable name.
To implement, do one of the following before/while running the analysis:
Increase the value in the Project Properties > Analysis Target > Survey Hotspots Analysis > Advanced > Sampling interval checkbox.
Use the advisor CLI action option --interval=<integer> when running a Survey analysis. For example:
advisor --collect=survey --project-dir=./advi_results --interval=20 -- ./myApplication
Minimize collection overhead.
Applicable analysis: Survey.
Decrease the amount of collected raw data when exceeding a size threshold could cause issues. For example: You have storage space limitations.
Note: In the commands below, make sure to replace the myApplication with your application executable path and name before executing a command. If your application requires additional command line options, add them after the executable name.
To implement, do one of the following before/while running the analysis:
Decrease the value in the Project Properties > Analysis Target > Survey Hotspots Analysis > Advanced > Collection data limit, MB field.
Decrease the value in the advisor CLI action option --data-limit=<integer>. For example:
advisor --collect=survey --project-dir=./advi_results --data-limit=250 -- ./myApplication
Minimize collection overhead.
Applicable analysis: Dependencies, Memory Access Patterns.
Decrease the maximum number of instances each marked loop is analyzed.
Note: In the commands below, make sure to replace the myApplication with your application executable path and name before executing a command. If your application requires additional command line options, add them after the executable name.
To implement, do one of the following before/while running the analysis:
Supply a non-zero value in the Project Properties > Analysis Target > [Name] Analysis > Advanced > Loop Call Count Limit field.
Supply a non-zero value in the advisor CLI action option --loop-call-count-limit=<integer>. For example:
advisor --collect=dependencies --project-dir=./advi_results --loop-call-count-limit=10 -- ./myApplication
Minimize finalization overhead.
Applicable analysis: Survey.
Implement these techniques when the additional data is not important to you.
The default setting for all the properties/options in the table below is disabled.
Path: Project Properties > Analysis Target > Survey Hotspots Analysis > Advanced |
CLI Action Options |
Description |
---|---|---|
Disable the Analyze MKL loops and functions checkbox. |
--no-mkl-user-mode | Do not show Intel® oneAPI Math Kernel Library loops and functions in Intel Advisor reports. |
Disable the Analyze Python loops and functions checkbox. |
--no-profile-python | Do shot show Python* loops and functions in Intel Advisor reports. |
Disable the Analyze loops that reside in non-executed code paths checkbox. |
Do not collect a variety of data for loops that reside in non-executed code paths, including:
NoteThis capability is available only for binaries compiled using the -ax (Linux* OS)/Qax (Windows* OS) option with an Intel® compiler. |
|
Disable the Enable register spill/fill analysis checkbox. |
--no-spill-analysis | Do not calculate the number of consecutive load/store operations in registers and related memory traffic. |
Disable the Enable static instruction mix analysis checkbox. |
--no-static-instruction-mix | Do not statically calculate the number of specific instructions present in the binary. |