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 the Roofline chart data of most interest.
Interpret Roofline chart data.
Use Roofline chart 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. |
|