Latency and Throughput - 2023.2 English

Vitis Libraries

Release Date
2023.2 English

The latency and throughput values are calculated using the input and output timestamp feature of the aiesimulator. The simulator will create files for the input and output PLIO ports containing the data stream and the timestamp information. Each line of data is preceded by a line containing a timestamp of when it was read or written by the graph port. This feature can be enabled using the option:

aiesimulator --graph-latency

The latency value for each iteration is found by calculating the difference between the first input timestamp and the first output timestamp. Throughput is calculated from the number of samples in an iteration divided by the time difference between the first input timestamp of two consecutive iterations.

The latency and throughput values, as reported for each library element in the tables below, are representative of the function operating at a stable rate. In this context, stability is assumed once the latency is consistent across consecutive iterations. Following power-on, systems typically take several iterations before a stable rate is achieved. This is due to the buffers being initially empty and other such effects. The figures reported are from when the system has reached a steady state after this initial transient phase.

In the case where there are multiple input ports and/or multiple output ports, the timestamps from the first of these ports are used as these are the ports that contain the first timestamped sample of each iteration.

Furthermore, if there are no input ports included in the design (such as DDS only mode) then the throughput will be measured using the timestamped data on the output port. In such case the latency figures may be marked as invalid with value reported as -1.