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:
- Summary
- 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.
- Graph
- 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).
- Array
- 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.
- Constraints
- 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.