Intel® Advisor Tutorial: Use Automated Roofline Chart to Make Optimization Decisions

  • Intel® Parallel Studio XE Professional Edition

  • Intel® Parallel Studio XE Cluster Edition

Intel® Advisor provides two tools to help ensure your Fortran, C and C++ native/managed applications realize full performance potential on modern processors, such as Intel® Xeon® and Intel® Xeon Phi™ processors:

  • Vectorization Advisor is a vectorization optimization tool that lets you identify loops that will benefit most from vectorization, identify what is blocking effective vectorization, explore the benefit of alternative data reorganizations, and increase the confidence that vectorization is safe.

  • Threading Advisor is a threading design and prototyping tool that lets you analyze, design, tune, and check threading design options without disrupting your normal development.

This tutorial - and C++ sample application you can use to follow along - show how to use the Intel® Advisor automated Roofline chart to visualize actual performance against hardware-imposed performance ceilings, as well as determine the main limiting factor (memory bandwidth or compute capacity), thereby providing an ideal roadmap of potential optimization steps.

About This Tutorial

This tutorial shows how 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.

Note

This is an advanced Vectorization Advisor tutorial. See Intel® Advisor Tutorials for basic Vectorization Advisor tutorials that include quick start and basic operations information.

Estimated Duration

20 minutes.

Learning Objectives

After you complete this tutorial, you should be able to:

  • Identify compiler/linker options that produce the most accurate and complete Vectorization Advisor analysis results.

  • Run a Roofline analysis.

  • Show/hide a Roofline chart.

  • Use various Roofline chart controls.

  • Use the Roofline chart to identify which loops are the best candidates for optimization.

  • Load Intel Advisor snapshots.

More Resources

See Roofline Analysis in Intel® Advisor 2017 for a video that essentially covers the same content as this tutorial, but in more conceptual depth.

The concepts and procedures in this tutorial apply regardless of programming language; however, a similar tutorial using a sample application in another programming language may be available at:

These sites also offer tutorials for other Intel products.

In addition, you can find more resources in:

For more complete information about compiler optimizations, see our Optimization Notice.