剖析 AI 引擎、存储器模块和接口拼块 - 2022.1 简体中文

Versal ACAP AI 引擎编程环境 用户指南 (UG1076)

Document ID
UG1076
Release Date
2022-05-25
Version
2022.1 简体中文

性能计数器分三种类型:用于 AI 引擎模块的运行时事件性能计数器、用于存储器模块的运行时存储器计数器,以及用于 AI 引擎到 PL 接口拼块的运行时接口计数器。这些性能计数器可配置为跟踪 AI 引擎、存储器模块和接口拼块中的各种事件。纠错码 (ECC) 清理、事件追踪和剖析等各种功能特性均可使用这些性能计数器。性能计数器会对剖析配置中给定事件出现的次数进行计数。剖析功能特性可为这些性能计数器提供多种不同配置,可在运行时动态应用这些配置来收集各种剖析统计数据。

使用性能计数器时,PS 主机代码中无需任何更改。在硬件中执行设计时,可在运行时对这些计数器进行配置、读取和收集。下表列出了不同配置中可用的性能计数器的数量。

表 1. 可用性能计数器
是否使用事件追踪? 是否使用 ECC 清理? 可用于剖析的计数器
核模块 存储器模块 PL 接口
4 2 2
3 2 2
3 1 2
2 1 2

ECC 清理默认开启,可使用 AI 引擎编译器选项来将其开启或关闭。如需了解更多信息,请参阅 AI 引擎编译器选项。启用 ECC 清理时,有三个计数器可用于剖析。

在同一次执行中将性能计数器用于 ECC 清理、事件追踪和剖析时,分配的性能计数器无法同时满足请求的所有功能特性的要求。以下警告消息即表示出现此状况。

图 1. 警告消息

所有选定的指标集都应组合到 xrt.ini 文件中的 [Debug] 关键字下。以下提供了用于剖析 AI 引擎模块、存储器模块和 PL 接口拼块的 xrt.ini 文件示例:
[Debug]
aie_profile = true
aie_profile_interval_us = 1000
aie_profile_core_metrics = heat_map
aie_profile_memory_metrics = write_bandwidths
aie_profile_interface_metrics = input_stalls_idle:2