Run-Time Event API for Performance Profiling - 2023.2 English

Vitis Tutorials: AI Engine

Document ID
Release Date
2023.2 English

Additionally, in the AI Engine application, the event::start_profiling and event::read_profiling API calls are specified. These calls configure the AI Engine to count the accumulated number of clock cycles. Because we know how much data is coming out of the AI Engine (OUT_DATA_WINSZ), and using this API gets us the number of clock cycles its takes to receive all the output data, we can calculate the port throughput (bytes per second). This calculation is done in the AI Engine application and printed to the console during simulation. Note that the longer the data is simulated, the higher the throughput accuracy. Currently, the number of iterations is chosen as 20.

Open the build/aiesim.log file to view the following throughput calculations for two of the output PLIOs:

DLBF Output0: Throughput 6.63442e+08 Samples/s, i.e. 2.65377e+09 Bytes/s
ULBF Output0: Throughput 6.65915e+08 Samples/s, i.e. 2.66366e+09 Bytes/s