10. 调试

当前主要存在几种调试方式。

10.1. interpret

  • TRITON_INTERPRET: 使能该环境变量,可以在cpu侧模拟执行,可以辅助用户就代码逻辑进行调试。

10.2. print

  • tl.static_print: 编译期打印,打印运行期常量。运行期变量只会显示类型。

  • tl.device_print: 运行期打印。

10.3. topsgdb

使用TopsGDB调试,需要使用者对GCU硬件及TopsGDB使用有一定的了解。同时可以通过设置环境变量TRITON_DISABLE_LINE_INFO=1来使能llvm debug info,方便TopsGDB获取symbol以便调试。

TopsGDB使用手册

10.4. gsan

目前,需要使用sanitizer版本的TritonGCU安装包。具体步骤如下:

  1. 卸载已经安装过的正常版TritonGCU

dpkg -r triton-gcu
  1. 安装sanitizer版TritonGCU安装包

dpkg -i triton-gcu_gsan_address_*.deb
  1. 运行triton算子代码,如果运行过程中发生了DTE访存越界,那么sanitizer版的TritonGCU会报错、然后自动终止运行。