Dump统计量功能使用
大模型场景下,API的数量可能很多,如果进行全量dump的话,存盘的npy数据可能会占用很大的内存空间,数据跨服务器传输时间也很长。在部分场景下,某迭代loss相对差异较大(如超过10%),通过简单分析API的dtype、shape、最大值、最小值和均值便可以初步定位精度问题。在这种场景下,可以使用只dump保存API统计信息的pkl文件的功能。
- 在PrecisionDebugger模块与模型初始化之间的任意位置添加代码。
debugger.configure_hook(summary_only=True)
- 执行命令启动训练。
- NPU训练:
python ddp_basic_main.py 8
8表示训练所用卡数。
- GPU训练:
python ddp_basic_main.py 8
需注释掉NPU相关代码,进行训练。
训练结束后在dump_path/ptdbg_dump_v3.2/rank0目录下只生成了API_stack_dump.pkl,可在pkl查看和分析API的统计信息。
统计信息包括:输入输出的dtype、shape、最大值最小值均值以及(前向)调用栈。
- NPU训练:
父主题: 使用示例