Profiling the AI Engine, Memory Modules and Interface Tiles - 2025.2 English - UG1076

AI Engine Tools and Flows User Guide (UG1076)

Document ID
UG1076
Release Date
2025-11-20
Version
2025.2 English

The following list details the four types of performance counters:

  • Runtime event performance counters for the AI Engine modules
  • Runtime memory counters for memory modules
  • Runtime interface counters for AI Engine-PL interface tiles
  • Runtime memory counters for memory tiles (AI Engine-ML only)

You can configure performance counters to track a variety of events in the AI Engine, the memory module, and the interface tile. Various features like error-correction code (ECC) scrubbing, event trace and profiling can use these performance counters. Performance counters count occurrences of a given event in a profile configuration. The profile feature offers several different configurations of these performance counters. Configurations can be dynamically applied at runtime to collect various profiling statistics.

When using performance counters, no changes are required in the PS host code. Performance counters can be configured, read, and collected at runtime while the design executes in hardware. The following table lists the number of performance counters that are available for different configurations.

Table 1. Available Performance Counters
Event Trace Used? Counters Available for Profiling
Core Module Memory Module PL Interface Memory Tile (AI Engine-ML)
No 3 2 2 4
Yes 2 1 2 3

When performance counters are used for event trace and profiling in the same execution, allocated performance counters cannot meet the requirements of all the requested features at the same time. The following warning messages indicate this situation.

Figure 1. Warning Message

Note: Each array element supports only one Profile metric and one Trace metric:
  • AI Engine
  • AI Engine Memory
  • Interface Tile
  • Memory Tile (AI Engine-ML and AI Engine-ML v2)

All the chosen metric sets must be grouped in the xrt.ini file under the [Debug] and [AIE_profile_settings] keywords in the XRT flow. In the XSDB flow, metric sets must be specified as flags when using aieprofile.