Roofline Use Case

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:

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.

Follow these steps to use the Vectorization Advisor and the roofline_demo_samples C++ sample application to:

Step

Step Detail

Step 1: Prepare for tutorial.

Do one of the following:

Step 2: Run a Roofline analysis.

  • Run a Roofline Analysis.

  • Show/hide the Roofline chart.

  • Get to know Roofline chart controls.

  • Get to know Roofline chart data.

Step 3: Address memory bandwidth bottlenecks.

  • Open a result snapshot.

  • Use various controls to focus on Roofline chart data of most interest.

  • Interpret Roofline chart data.

Step 4: Address compute capacity bottlenecks.

  • Open a result snapshot.

  • Use various controls to focus on Roofline chart data of most interest.

  • Interpret Roofline chart data.

Step 5: Identify the real bottlenecks.

  • Open a result snapshot.

  • Use various controls to focus on Roofline chart data of most interest.

  • Interpret Roofline chart data.