若用户在训练过程中怀疑网络存在溢出问题,常见现象为loss scale不更新,用户可以使用溢出检测。具体操作步骤如下。
from ptdbg_ascend import register_hook, overflow_check, seed_all, set_dump_path, set_dump_switch, acc_cmp_dump
from ptdbg_ascend import register_hook, overflow_check, seed_all, set_dump_path, set_dump_switch, acc_cmp_dump
seed_all()
...
# 设置dump路径,最终数据保存在此路径下
set_dump_path("./data/dump", dump_tag='npu_overflow')
# 使能溢出检测
register_hook(model, overflow_check, overflow_nums=1)
...