Table of Contents
Introduction
A new optimization report interface, report structure, and options was introduced with the release of Intel(r) Parallel Studio XE 2015 Composer Edition. The four kinds of optimization reports (/Qopt-report, /Qvec-report, /Qopenmp-report, and /Qparreport) have been consolidated under one /Qopt-report interface in this version of Intel® Parallel Studio XE 2015 Composer Edition. This consolidated optimization report has been rewritten to improve the presentation, content, and precision of the information provided so that users better understand what optimizations were performed by the compiler and how they may be tuned to yield the best performance. This article will focus on how to generate and display the compiler optimization report using the Windows product within the Visual Studio IDE and what may prevent that.
Displaying the Optimization Report
When you build a solution or project and the compiler generates optimization diagnostics, you can view optimization reports in the following windows:
- Compiler Optimization Report window, either grouped by loops or in a flat format
- Compiler Inline Report window
- Optimization annotations integrated within the source editor
To enable viewing optimization reports:
- In your project's property pages, select Configuration Properties > Fortran > Diagnostics.
- Set a non-default value for any of the following options:
- OpenMP Diagnostics Level
- Auto-Parallelizer Diagnostics Level
- Vectorizer Diagnostics Level
- Optimization Diagnostics Level
- Optimization Diagnostics Phase
- Optimization Diagnostics Routine
- Interprocedural Optimization (IPO) is turned off by default. To view IPO diagnostics, set the property Fortran > Optimization > Interprocedural Optimization to Single-file or Multi-file.
- Build your project to generate an optimization report.
When the compiler generates optimization diagnostics, the Compiler Optimization Report and the Compiler Inline Report windows open, and optimization report annotations appear in the source editor.
Why the Optimization Report fails to appear
So why in some cases after following these steps does the optimization report fails to appear? Of course, for there to be an optimization report the compiler must be set up to perform optimizations. If you are working with the Debug configuration, optimizations are disabled by default. To enable optimization, from the Property Pages go to Configuration Properties>Fortran>Optimization. This alone, however, may not be enough as the Debug configuration also sets the diagnostic Check Stack Frame to 'yes' which also disables optimizations. To disable Check Stack Frame go to Configuration Properties>Fortran>Run-time and set Check Stack Frame to 'no'.
You may find, however, that though optimization reports are being generated, Visual Studio* fails to display them. There is a known bug that prevents Visual Studio from display the optimzation reports when the solution name contains 'nonstandard characters' such as spaces. This issue is currently being investigated by our developers.
Summary
Ensuring that optimizations have not been disabled and avoiding the use of nonstandard charactions in the solution name should allow the optimization reports to be displayed.