Compiling AI Engine Graph Applications - 2022.2 English

Vitis Unified Software Platform Documentation: Application Acceleration Development (UG1393)

Document ID
UG1393
Release Date
2022-12-07
Version
2022.2 English
Important: Set up the command shell or window as described in Setting Up the Vitis Environment prior to running the tools.

As described in Versal ACAP AI Engine Programming Environment User Guide (UG1076) Versal AI Engine graph applications are written in C++ and compiled using the Vitis aiecompiler command.

An example command follows:
aiecompiler -target=hw --platform=xilinx_vck190_base_dfx_202220_1 \
-include=./src/graphs -include=./src/kernels ./src/datamove_app.cpp \
--constraints=./src/datamove_app.aiecst  -workdir=./Work 

The various arguments used are described below.

  • -target=hw: Specifies the build target as either for simulation purposes (x86) or for running on the physical device (hw). The default is hw.
  • --platform=xilinx_vck190_base_dfx_202220_1: Specifies the platform to use when compiling the graph application.
  • --include=<dir>: This option can be used to include additional directories in the include path for the compiler front-end processing.
  • <source_file>: Specify source files for the kernel. Multiple source files can be specified.
  • --constraints=<file>: Specify one or more constraints files in JSON format
  • -workdir=./Work: Use this option to specify the output directory.

The default output is an archive of the AI Engine graph application called libadf.a. Refer to Compiling an AI Engine Graph Application in UG1076 for additional information. The archive file can be used by the v++ --link command to build a fixed platform of the integrated system design as described in the next section.