Generating AI Engine Status - 2023.2 English

AI Engine Tools and Flows User Guide (UG1076)

Document ID
UG1076
Release Date
2023-12-04
Version
2023.2 English

Periodic AI Engine Status Output Using XRT

You can enable the run-time deadlock detection and status output using the xrt.ini file. This is a one-time set up, which results in periodic output of status data, including deadlock detection. To turn on this feature, add the following to the xrt.ini file:
[Debug]
aie_status=true
To specify the interval of probing and analysis the AI Engine status:
[Debug]
aie_status=true
aie_status_interval_us=1000
The AI Engine status is copied to the following files when the host program is running:
  • xrt.run_summary: Run summary information that can be used by the IDE. 
  • aie_status_<device>_<current time>.json: Status of AI Engine, AI Engine memory and AI Engine Interface tiles.
  • summary.csv: Always created for other profiling capabilities, like guidance.
If a potential deadlock is detected, an warning message is reported, such as the following:
[XRT] WARNING: Potential deadlock/hang found in AI Engines. Graph : gr
[XRT] WARNING: Potential stuck cores found in AI Engines. Graph : gr Tile : (25,1) Status 0x81 : Enable,Lock_Stall_W

Besides the AI Engine status, if any error event occurred, it is recorded in the JSON file.

You are responsible for determining the severity of the error, and whether it is recoverable. Use the summary and JSON files for analyzing in the IDE.

Manual AI Engine Status Output

You can output a single snapshot of the AI Engine status to the JSON file at any time after the device has been loaded. This is a static snapshot of the AI Engine running status, along with the events that happened before.

Use the xbutil command with option -f json to output status to the JSON file. For example:

xbutil examine -r aie -d 0 -f json -o aie_status_xbutil.json