Visible to Intel only — GUID: GUID-8CEFC069-0D33-4971-AAB7-49A42450741E
Visible to Intel only — GUID: GUID-8CEFC069-0D33-4971-AAB7-49A42450741E
Threading Accuracy Levels in Command Line
For each perspective, Intel® Advisor has several levels of collection accuracy. Each accuracy level is a set of analyses and properties that control what data is collected and the level of collection details. The higher accuracy value you choose, the higher runtime overhead is added.
In CLI, each accuracy level corresponds to a set of commands with specific options that you should run one by one to get a desired result.
For the Threading perspective, you are recommended to run the accuracy levels one by one to get a Threading report.
The following accuracy levels are available:
Comparison / Accuracy Level |
Low |
Medium |
---|---|---|
Overhead |
1.1x |
5 - 8x |
Goal |
Find candidates for parallelization |
Model threading parallelism and check for loop-carried dependencies |
Analyses |
Survey |
Survey + Characterization (Trip Counts) + Suitability + Dependencies |
Result |
Basic Survey report |
Survey report extended with trip count data Dependencies report Suitability report with parallel performance modeled for annotated loops |
You can generate commands for a desired accuracy level from the Intel Advisor GUI. See Generate Command Lines from GUI for details.
Consider the following command examples.
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.
Low Accuracy
First, run the Threading perspective with low accuracy to find candidates for parallelizing based on Survey analysis results.
Run the analysis as follows:
advisor --collect=survey --project-dir=./advi_results -- ./myApplication
You can view the generated results in the Intel Advisor GUI or in the CLI. The loops/functions with high total time are the best candidates for parallelization. Annotate the loops/functions of interest to model parallelism.
Medium Accuracy
Prerequisite: Annotate loops/functions to model parallelization for. Rebuild the application.
Run the commands as follows:
Run the Survey analysis:
advisor --collect=survey --project-dir=./advi_results -- ./myApplication
Collect trip count data:
advisor --collect=tripcounts --project-dir=./advi_results -- ./myApplication
Run the Suitability analysis to model threading parallelism for the annotated loops:
advisor --collect=suitability --project-dir=./advi_results -- ./myApplication
Run the Dependencies analysis for the annotated loops:
advisor --collect=dependencies --project-dir=./advi_results -- ./myApplication
You can view the generated results in the Intel Advisor GUI or in the CLI.