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以便调试。
10.4. gsan¶
目前,需要使用sanitizer版本的TritonGCU安装包。具体步骤如下:
卸载已经安装过的正常版TritonGCU
dpkg -r triton-gcu
安装sanitizer版TritonGCU安装包
dpkg -i triton-gcu_gsan_address_*.deb
运行triton算子代码,如果运行过程中发生了DTE访存越界,那么sanitizer版的TritonGCU会报错、然后自动终止运行。