文件最后提交记录最后更新时间
!7066 add 16p demo documents, README, requirements.txt Merge pull request !7066 from 王凯宇/master 1 年前
!6915 Add ToyModel for PyTorch Merge pull request !6915 from 你可以口算啊/testdoc 1 年前
!6927 Add examples for amp Merge pull request !6927 from 你可以口算啊/testdoc2 1 年前
!6915 Add ToyModel for PyTorch Merge pull request !6915 from 你可以口算啊/testdoc 1 年前
!6915 Add ToyModel for PyTorch Merge pull request !6915 from 你可以口算啊/testdoc 1 年前
!6915 Add ToyModel for PyTorch Merge pull request !6915 from 你可以口算啊/testdoc 1 年前
!6915 Add ToyModel for PyTorch Merge pull request !6915 from 你可以口算啊/testdoc 1 年前
!6927 Add examples for amp Merge pull request !6927 from 你可以口算啊/testdoc2 1 年前
!7238 Update example codes about distributed training for better undestanding Merge pull request !7238 from 丛臻/master 1 年前
README.md

ToyModel for PyTorch

概述

简述

ToyModel是一个旨在指导用户将模型从GPU或其他第三方框架迁移适配到NPU的示例模型。用户可以参考《PyTorch训练模型迁移调优指南》中的迁移适配章节,进行具体操作。该文档详细介绍了如何通过修改模型代码等适配步骤,使原本为GPU或其他第三方平台设计的深度学习模型适应NPU的架构和编程环境,确保模型能在NPU上顺利运行。结合ToyModel的示例,文档为用户提供了端到端迁移适配操作指导。

准备训练环境

准备环境

准备数据集

启动脚本后会自动下载MNIST数据集,无需自行准备。

开始训练

训练模型

  1. 进入解压后的源码包根目录。

    cd /${模型文件夹名称}
    
  2. 运行训练脚本。

    该模型支持单机单卡训练、单机8卡和多机训练。

    • 单机单卡训练

      启动单卡训练。

      bash ./test/run_1p.sh  # 单卡不开启混合精度
      
      bash ./test/run_1p_with_amp.sh  # 单卡开启混合精度
      
    • 单机8卡训练

      启动8卡训练。

      bash ./test/run_8p.sh  # 单机8卡不开启混合精度
      
      bash ./test/run_8p_with_amp.sh  # 单机8卡开启混合精度
      
    • 双机16卡训练

      启动16卡训练。

      bash ./test/run_16p.sh  # 双机16卡不开启混合精度
      
      bash ./test/run_16p_with_amp.sh  # 双机16卡开启混合精度
      

      启动双机脚本时,需要根据实际情况修改对应的MASTER_ADDR和NODE_RANK值。

    • 梯度累加场景和多模型场景开启混合精度时训练

      启动梯度累加场景和多模型场景训练。

      bash ./test/run_with_accumulate_amp.sh  # 梯度累加场景开启混合精度
      
      bash ./test/run_with_multi_amp.sh  # 多模型场景开启混合精度
      

版本说明

变更

2025.1.6:添加梯度累加场景和多模型场景的混合精度适配样例

2024.12.31:首次发布

FAQ

无。