Visible to Intel only — GUID: GUID-331103C8-D7E2-4936-9D07-91BDDFEE96EE
Visible to Intel only — GUID: GUID-331103C8-D7E2-4936-9D07-91BDDFEE96EE
Optimization Reports in Microsoft Visual Studio*
Enable in Microsoft Visual Studio*
Optimization reports can help you address vectorization and optimization issues.
When you build a solution or project, the compiler generates optimization diagnostics.
To enable the optimization reports:
- In your project's property pages, select Configuration Properties > Fortran > Diagnostics
- Set a non-default value for the Optimization Diagnostics Level. The possible values are:
- Disable: Disables the generation of an optimization report. This is the default when the option is not specified. No optimization report is generated.
- 1 or low: Tells the compiler to only emit positive remarks. This report shows the transformations that actually occurred.
- 2 or medium: Tells the compiler to create a report with low details, and emit negative remarks with a reason why the transformation did not happen. This is the default if you do not specify arg.
- 3 or high: Tells the compiler to create a report with medium details, plus all other details.
- Build your project to generate an optimization report:
- This generates of a text file called sourcefile.optrpt, that contains the optimization information for the source file being compiled.
- When the compiler generates optimization diagnostics, the Compiler Optimization Report and the Compiler Inline Report windows open. The optimization report annotations appear in the source editor.
View Reports
Information appears in the Compiler Optimization Report window grouped by loops, or in a flat format. To switch the presentation format, click the gear button on the toolbar of the window, and uncheck Group by loops.
In addition to sorting information by clicking column headers and resizing columns, you can use the windows described in the following table:
Do This |
To Do This |
---|---|
Double-click a diagnostic. |
Jump to the corresponding position in the editor. |
Click a link in the Inlined into column. |
Jump to the call site of the function where the loop is inlined. |
Expand or collapse a diagnostic in Group by loops view. |
View detailed information for the diagnostic. |
Click on a column header. |
Sort the information according to that column. |
Click the filter button. |
Select a scope by which to filter the diagnostics that appear in the window. The title bar of the Compiler Optimization Report window shows the applied filter. Labels on optimization phase filter buttons show how many diagnostics of each phase are in the current scope. |
Enter text in the search box in the Compiler Optimization Report window toolbar. |
Filter diagnostics using the text pattern. Diagnostics are filtered when you stop typing. Pressing Enter saves this pattern in the search history. To disable filtering, clear the search box. To use a pattern from the search history, click on the down arrow next to the search box. |
Click the filter button. |
Select a scope by which to filter the diagnostics that appear in the window. |
Optimization Notes
The Viewing Optimization Notes window in the editor provides context for the diagnostics that the compiler generates:
In Caller Site
In Callee Site
In Caller and Callee Site
You can use optimization notes as described in the following table:
Do This |
To Do This |
---|---|
Right-click an optimization note. |
|
Double-click an optimization note heading. |
Expand or collapse the current optimization note. |
Double-click a diagnostic detail. |
Jump to the corresponding position in the editor. |
Click a hyperlink in the optimization note. |
Show where the specified function is inlined. |
Hover the mouse over a collapsed optimization note. |
View a detailed tool tip about that optimization note. |
Interprocedural Optimization (IPO)
IPO is turned off by default. To view the IPO diagnostics, set the property to: Fortran > Optimization > Interprocedural Optimization to Multi-file.
The Compiler Inline Report window displays diagnostics for the IPO phase of the optimization report.
This window displays information in a tree. Each entry in the tree has corresponding information in the right-hand pane under the Properties tab and the Inlining options tab.
You can use the window as described in the following table:
Do This |
To Do This |
---|---|
Double-click a diagnostic in the tree, or click on the source position link under the Properties tab. |
Jump to the corresponding position in the editor. |
Click Just My Code. |
Only display functions from your code, filter all records from files that don't belong to the current solution file tree. |
Right-click on a function body in the editor and select Intel Compiler > Show Inline report for function name. |
View detailed information for the specified function. |
Right-click on a function body in the editor and select Intel Compiler > Show where function name in inlined. |
Show where the specified function is inlined. |
Enter text in the search box in the Compiler Inline Report window toolbar. |
Filter diagnostics using the text pattern. Diagnostics are filtered when you stop typing. Pressing Enter saves this pattern in the search history. To disable filtering, clear the search box. To use a pattern from the search history, click on the down arrow next to the search box. |