Intel® Advisor Help
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.
The following accuracy levels are available:
Comparison / Accuracy Level |
Low |
Medium |
High |
---|---|---|---|
Overhead |
5 - 10x |
15 - 50x |
50 - 80x |
Goal |
Model performance of an application that is mostly compute bound and does not have dependencies |
Model application performance considering memory traffic for all cache and memory levels |
Model application performance with all potential limitations for offload candidates |
Analyses |
Survey + Characterization (Trip Counts and FLOP) + Performance Modeling with no assumed dependencies |
For CPU-to-GPU modeling: Survey + Characterization (Trip Counts and FLOP with cache simulation, callstacks, and light data transfer simulation) + Performance Modeling with no assumed dependencies For GPU-to-GPU modeling: Survey + Characterization (Trip Counts and FLOP with light data transfer simulation) + Performance Modeling with no assumed dependencies |
For CPU-to-GPU modeling: Survey + Characterization (Trip Counts and FLOP with cache simulation, callstacks, and medium data transfer simulation) + Dependencies + Performance Modeling with assumed dependencies For GPU-to-GPU modeling: Survey + Characterization (Trip Counts and FLOP with medium data transfer simulation) + Performance Modeling with assumed dependencies |
Result |
Basic Offload Modeling report that shows potential speedup and performance metrics estimated on a target considering memory traffic from execution units to L1 cache only. The result may be inaccurate for memory-bound applications. |
For CPU-to-GPU modeling: Offload Modeling report extended with data transfers estimated between host and device platforms considering memory traffic for all cache and memory levels For GPU-to-GPU modeling: Offload Modeling report extended with data transfers estimated between host and device platforms |
For CPU-to-GPU modeling: Offload Modeling report with detailed data transfer estimations and automated check for loop-carried dependencies for more accurate search for the most profitable regions to offload For GPU-to-GPU modeling: Offload Modeling report with detailed data transfer estimations for more accurate search for the most profitable regions to offload |
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.
Info: 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
To model application performance for with low accuracy for a default target device, run the following command:
advisor --collect=offload --accuracy=low --project-dir=./advi_results –- ./myApplication
This command will sequentially run the following analyses:
advisor --collect=survey --auto-finalize --static-instruction-mix --project-dir=./advi_results -- ./myApplication
advisor --collect=tripcounts --flop --stacks --auto-finalize --target-device=gen11_icl --project-dir=./advi_results -- ./myApplication
advisor --collect=projection --no-assume-dependencies --config=gen11_icl --project-dir=./advi_results
Medium Accuracy
This accuracy is set by default. To model application performance with medium accuracy for a default target device, run the following command:
advisor --collect=offload --project-dir=./advi_results –- ./myApplication
This command will sequentially run the following analyses:
advisor --collect=survey --auto-finalize --static-instruction-mix --project-dir=./advi_results -- ./myApplication
advisor --collect=tripcounts --flop --stacks --auto-finalize --enable-cache-simulation --data-transfer=light --target-device=gen11_icl --project-dir=./advi_results -- ./myApplication
advisor --collect=projection --no-assume-dependencies --config=gen11_icl --project-dir=./advi_results -- ./myApplication
High Accuracy
To model application performance with high accuracy for a default target device, run the following command:
advisor --collect=offload --accuracy=high --project-dir=./advi_results –- ./myApplication
This command will sequentially run the following analyses:
advisor --collect=survey --auto-finalize --static-instruction-mix --project-dir=./advi_results -- ./myApplication
advisor --collect=tripcounts --flop --stacks --auto-finalize --enable-cache-simulation --data-transfer=medium --target-device=gen11_icl --project-dir=./advi_results -- ./myApplication
advisor --collect=dependencies --filter-reductions --loop-call-count-limit=16 --select markup=gpu_generic --project-dir=./advi_results -- ./myApplication
advisor --collect=projection --config=gen11_icl --project-dir=./advi_results -- myApplication
See Check How Dependencies Affect Modeling for a recommended strategy to check for loop-carried dependencies.
Low Accuracy
To model application performance for with low accuracy for a default target device, run the following command:
advisor --collect=offload --accuracy=low --gpu --project-dir=./advi_results –- ./myApplication
This command will sequentially run the following analyses:
advisor --collect=survey --auto-finalize --static-instruction-mix --profile-gpu --project-dir=./advi_results -- ./myApplication
advisor --collect=tripcounts --flop --auto-finalize --target-device=gen11_icl --profile-gpu --project-dir=./advi_results -- ./myApplication
advisor --collect=projection --no-assume-dependencies --config=gen11_icl --profile-gpu --project-dir=./advi_results
Medium Accuracy
This accuracy is set by default. To model application performance with medium accuracy for a default target device, run the following command:
advisor --collect=offload --gpu --project-dir=./advi_results –- ./myApplication
This command will sequentially run the following analyses:
advisor --collect=survey --auto-finalize --static-instruction-mix --profile-gpu --project-dir=./advi_results -- ./myApplication
advisor --collect=tripcounts --flop --auto-finalize --data-transfer=light --target-device=gen11_icl --profile-gpu --project-dir=./advi_results -- ./myApplication
advisor --collect=projection --no-assume-dependencies --config=gen11_icl --profile-gpu --project-dir=./advi_results -- ./myApplication
High Accuracy
To model application performance with high accuracy for a default target device, run the following command:
advisor --collect=offload --accuracy=high --gpu --project-dir=./advi_results –- ./myApplication
This command will sequentially run the following analyses:
advisor --collect=survey --auto-finalize --static-instruction-mix --profile-gpu --project-dir=./advi_results -- ./myApplication
advisor --collect=tripcounts --flop --auto-finalize --target-device=gen11_icl --profile-gpu --data-transfer=medium --project-dir=./advi_results -- ./myApplication
advisor --collect=projection --config=gen11_icl --profile-gpu --project-dir=./advi_results -- myApplication
You can view the results in the Intel Advisor GUI, in CLI, or an interactive HTML report.