CPU Roofline 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.
The following accuracy levels are available:
Comparison / Accuracy Level | Low | Medium |
---|---|---|
Overhead | 5 - 10x
| 15 - 50x
|
Goal | Analyze how well your application uses memory and compute resources of a CPU and determine the main limiting factor (memory bandwidth or compute capacity)
| Analyze how well your application uses CPU memory at different cache levels in more details
|
Analyses | Survey + Characterization (FLOP)
| Survey + Characterization (Trip Counts and FLOP with call stacks for all memory levels) + Memory Access Patterns
|
Result | Cache-aware CPU Roofline for L1 cache
| Memory-level CPU Roofline with call stacks (for L1, L2, L3, DRAM)
Memory Access Patterns
|
You can generate commands for a desired accuracy level from the
Intel Advisor
GUI. See
Generate Command Lines from GUI for details.
There is a variety of techniques available to minimize data collection, result size, and execution overhead. Check
Minimize Analysis Overhead.
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
To run the
CPU / Memory Roofline Insights
perspective with the low accuracy:
advisor --collect=roofline --project-dir=./advi_results -- ./myApplication
Medium Accuracy
To run the
CPU / Memory Roofline Insights
perspective with the medium accuracy:
- Generate the Memory-level Roofline report with call stacks:advisor --collect=roofline --stacks --enable-data-transfer-analysis --project-dir=./advi_results -- ./myApplication
- Run the Memory Access Pattern analysis for the loops that have thePossible Inefficient Memory Access Patternissue:
advisor --collect=map --select=has-issue --project-dir=./advi_results -- ./myApplication
You can view the results in the
Intel Advisor
GUI or
generate an interactive HTML report.