Code Analytics Tab
Code Analytics Tab Purpose and Usage
Code Analytics Tab Regions and Usage
- Summary: View a quick list of basic information about the loop, such as the code source, whether the loop is scalar or vector, instruction set (and whether extensions, such as VNNI, are used), total time, and the static and dynamic instruction mix.
- Traits: View additional scalar and vectorization characteristics that may impact performance. For a list of possible traits, see the Data Reference.
- Trip Counts: View information about the number of times the loop is invoked (trip count), such as the minimum and maximum trip count, the average loop iteration time, etc.
- Statistics for x: Click the drop-down list at the top of this section to choose to display performance statistics for a specific operation type:FLOP,INTOP,INT + FLOAT, orAll Operations.Click the toggle control to switch between displaying performance statistics using self or total loop metrics.
- Data Transfer and Bandwidth:View the amount of data transferred for the loop per memory level and bandwidth for each memory level. Click the toggle control to switch between self and total data.To see this pane, run Roofline analysis for all memory levels with cache simulation enabled.
- Code Optimizations: View a list of code optimizations applied to the loop by the compiler, as well as information on which compiler was used and what version. This information is only available for binaries compiled by the Intel® C Compiler,Intel® C++ Compiler Classic, orIntel® Fortran Compiler Classic.
- Roofline: View a more detailed roofline chart that summarizes recommendations and information from the Roofline Conclusions section, such as whether the loop is compute bound, memory bound, or both. This chart features:
If you have collected the Roofline for all memory levels, you can use theMemory Level/CARMselector to switch between Roofline guidance views. When you set the selector toMemory Level, the chart features X marks representing memory levels for the loop and an arrowed line indicating the memory level that bounds the loop.
- The labeled distance between the loop and the performance roof limiting it.
- The metrics used to plot the loop on the chart, Giga OPS (operations per second) and AI (arithmetic intensity).
- Memory Metrics: View how efficiently the loop/function uses cache and what memory level bounds the loop/function.
- Review theImpactshistogram, which shows time spent processing requests for each memory level. A big value indicates a memory level that bounds the selected loop.
- Review theShareshistogram, which shows an amount of data that passes through each memory level.