Summary
This topic is part of a
tutorial
that shows how to use the automated
Roofline
chart to make prioritized optimization decisions.
The Roofline analysis is an optional analysis that plots an application's
achieved performance
and
arithmetic intensity
against the machine's
maximum achievable performance
.
Use the
Roofline
chart to answer the following questions:
- What is the maximum achievable performance with your current hardware resources?
- Does your application work optimally on current hardware resources?
- If not, what are the best candidates for optimization?
- Is memory bandwidth or compute capacity limiting performance for each optimization candidate?
Roofline analysis is cache-aware; it measures all memory subsystem traffic, not just DDR memory traffic. It works on both single-threaded and multithreaded code.
This tutorial showed how to use the
Vectorization Advisor
and the
roofline_demo_samples
C++ sample application to:
- Run a Roofline analysis.
- Focus on theRooflinechart data of most interest.
- InterpretRooflinechart data.
- UseRooflinechart data interpretations to make optimization decisions.
Step
| Key Tutorial Take-aways
|
---|---|
1. Prepare for tutorial. If you worked in the Standalone Intel Advisor GUI: You built the target application in release mode with the Intel compiler, and created and configured a new
Intel Advisor project to hold analysis results for the target.
If you worked in the Visual Studio* IDE: You opened the target solution and built the solution in release mode with the Intel compiler.
|
|
Step 2:
Run Roofline analysis.
You performed a Roofline analysis, and got to know
Roofline chart data and controls.
|
|
Step 3:
Address memory bandwidth bottlenecks. You opened a result snapshot, focused the
Roofline chart on the data of most interest, and interpreted the data.
|
|
Step 4:
Address compute capacity bottlenecks. You opened a result snapshot, focused the
Roofline chart on the data of most interest, and interpreted the data.
|
|
Step 5:
Identify the real bottlenecks. You opened a result snapshot, focused the
Roofline chart on the data of most interest, and interpreted the data.
|
|