Viewing Compilation Results in the Analysis View of the Vitis Unified IDE - 2023.2 English

AI Engine Tools and Flows User Guide (UG1076)

Document ID
Release Date
2023.2 English

After the compilation of the AI Engine graph, the AI Engine compiler writes a summary of compilation results called <graph-file-name>.aiecompile_summary to view in the Analysis view of the Vitis unified IDE. The summary contains a collection of reports, and diagrams reflecting the state of the AI Engine application implemented in the compiled build. The summary is written to the working directory of the AI Engine compiler as specified by the --workdir option, which defaults to ./Work.

To open the AI Engine compiler summary, use the following command:

vitis ./Work/graph.aiecompile_summary

The Vitis Unified IDE opens the Analysis view displaying the Summary page of the report. The Report Navigator view lists the different reports that are available in the Summary. For more information, see Working with the Analysis View (Vitis Analyzer) in Vitis Unified Software Platform Documentation: Application Acceleration Development (UG1393).

The listed reports include:

This is the top-level of the report, and reports the details of the build, such as date, tool version, a link to the graph, and the command-line used to create the build.
Kernel Guidance
Shows a variety of messages to provide guidance on kernel optimization.
Provides a flow diagram of the AI Engine graph that shows the data flow through the various kernels. You can zoom into and pan the graph display as needed. At the bottom of the Reports view, a table summarizes the graph with information related to kernels, buffers, ports, and nets. Clicking on objects in the graph diagram highlights the selected object in the tables. (See Graph and Array Details).
Provides a graphical representation of the AI Engine processor array on the Versal device. The graph kernels and connections are placed within the context of the array. You can zoom into and select elements in the array diagram. Choosing objects in the array also highlights the object chosen in the tables at the bottom of the Reports view.
Note: The Graph and Array reports both share the same tables. When selecting an item in either of the views, it also selects it in both. For example, selecting a net in the Graph view, also selects it in the Array view.
Shows all constraints used within the graph and from .json constraint files.
Mapping Analysis
Displays the text report graph_mapping_analysis_report.txt. Reports the block mapping, port mapping, and memory bank mapping of the graph to the device resources.
DMA Analysis
Displays the text report DMA_report.txt, providing a summary of DMA accesses from the graph.
Lock Allocation
Displays the text report Lock_report.txt, listing DMA locks on port instances.
AI Engine Compilation
Shows the single kernel compilation log file.

The following figure shows the graph.aiecompile_summary report open in the Analysis view in the unified Vitis IDE. In the displayed Array view, an AI Engine kernel is selected, and its associated tables are displayed at the bottom. The source code associated with the kernel is also displayed to the right.

Figure 1. Array View