【2023 · CANN训练营第一季】昇腾AI入门课(Pytorch)——第二章学习笔记
第二章 PyTorch模型迁移&调优
目标 - 了解 Pytorch 是如何适配到昇腾平台上的 - 了解 Davinci 硬件架构以及什么样的模型在昇腾上更亲和·了解软件术语和 Ascend - Pytorch 的安装步骤 - 了解如何将原生 Pytorch 的模型代码是如何适配到 Ascend - Pytorch
前置知识 - 对原生 Pytorch 的软件架构有一定了解. - 对昇腾芯片及 CANN 软件栈有一定了解· - 对原生 Pytorch的使用方法有一定了解· - 对混合精度训练有一定了解
软件架构及Ascend-Pytorch(1.8)安装
参考链接 https://www.hiascend.com/software/ai-frameworks
前提条件
1.已完成 CANN 开发或运行环境的安装,确保相应 os 依赖(如 python 、 numpy 等)已安装完成。
2.需确保 CMake >=3.12.0, gcc >=7.3.0 3.建议用户直接在安装环境中进行编译。如果在其他环境中编译,需要编译环境和安装环境的 OS 版本、依赖版本保持一致。
步骤: 1.安装依赖:pip3 install pyyaml wheel
2.安装官方 torch 包:-pip3 install torch ==1.8.1+ cpu
3.编译生成 pytorch 件的二进安装包。 git clone -- b maste https://gitee.com/ascend/pytorch.git
4.安装插 torchnpu 包
5.安装混合精度模块(可选)
Pytorch模型迁移——三种方法
- 手工迁移
- 脚本转换工具(msFmkTransplt)
- 自动迁移(推荐)
Pytorch模型迁移——手工迁移
Pytorch模型迁移——脚本转换工具迁移
Pytorch模型迁移——自动迁移
本章总结
介绍了 Pytorch 在昇腾上的适配原理
- 新增 npu 的 device 类型,开辟新的路径
- 通过 npu 的 device 类型,结合适配层,调用 npu 底层计算能力
- 通过适配 npu 上的内存管理和流管理机制等,使能任务运行
- 通过适配 HCCL 通讯协议,使能分布式训练
介绍了芯片硬件架构及相应的影响 介绍了昇腾的软件栈及 Pytorch 的安装向导 PyTorch 模型迁移三种方法
- 手工迁移(1.前期准备2.单 P 迁移3.多 P 迁移4.Debug)
- 脚本转换工具迁移
- transfer _ to _ npu 自动迁移(推荐)
- 点赞
- 收藏
- 关注作者
评论(0)