在模型训练过程中或结束后,可能保存一些检查点文件(checkpoint,简称ckpt)记录当前模型、优化器等训练状态。
Checkpoint比对(ckpt Compare,Checkpoint Compare)可比较两个不同的checkpoint,评估模型相似度。
当前支持Megatron-LM、MindSpeed(PyTorch&MindTorch)的ckpt比较。支持TP、PP、EP、VPP模型并行;支持megatron.core、megatron.legacy、TransformerEngine的模型实现。
功能说明
比较两个不同的ckpt。
注意事项
- Megatron、MindSpeed的ckpt加载依赖megatron,请确保megatron已安装在Python环境中,或将megatron的代码保存在当前路径下。
- 在ckpt传给工具加载前,用户需要确保ckpt是安全可信的,若ckpt来源官方有提供SHA256等校验值,用户必须要进行校验,以确保ckpt没有被篡改。
命令格式
[object Object]
参数说明
ckpt路径说明[object Object][object Object]
Megatron-LM和MindSpeed的ckpt目录结构示例如下:
[object Object]
对于--compare参数的两个路径:
- 配置为directory_name时,工具通过latest_checkpointed_iteration.txt自动选择最后一个保存的ckpt进行比对。
- 配置为directory_name/iter_xxxxxxx时,工具使用指定iteration的ckpt进行比对。
- 暂不支持单个rank的比对。
使用示例
执行比对操作,示例命令如下:
[object Object]
输出说明
比对操作执行完成后,会打印比对结果json文件的输出路径,详细介绍请参见。
Checkpoint比对结果以json文件输出,内容如下示例:
[object Object]