本工具集主要基于寒武纪MLU进行移植环境的搭建及常用算法的移植与验证。力求压缩寒武纪MLU环境搭建与功能验证的时间成本, 以便快速上手寒武纪MLU设备。
- 可基于 Dockerfile 编译镜像,也可直接加载官网提供的各类镜像(推荐)。
- 支持 PyTorch、TensorFlow 深度学习框架以及 MagicMind 推理加速引擎。
- 支持常用算法的部署、移植、在线/离线推理等验证。
本工具集仅用于个人学习,打通流程; 不对效果负责,不承诺商用。
以下仅为常用大模型在MLU上的移植及验证教程,并未包含寒武纪支持的全部网络, 如有新网络需求, 可在 issue 区讨论。
AI框架 | 类别 | 原始网络 | 验证教程 | 代码适配 | 推理验证 | 训练验证 |
---|---|---|---|---|---|---|
Pytorch1.13 | GLM | ChatGLM3-6B | 验证教程 | ✅ | ✅ | ✅ |
Pytorch1.13 | GLM | ChatGLM2-6B | 验证教程 | ✅ | ✅ | ✅ |
Pytorch1.9 | LLaMA | Chinese-LLaMA-Alpaca-2 | 验证教程 | ✅ | ✅ | ✅ |
Pytorch1.9 | OB | OpenBioMed | 验证教程 | ✅ | ✅ | -- |
Pytorch1.9 | GLM | ChatGLM2-6B | 验证教程 | ✅ | ✅ | -- |
Pytorch1.9 | GLM | ChatGLM-6B | 验证教程 | ✅ | ✅ | ✅ |
Pytorch1.9 | Baichuan | Baichuan-7B | 验证教程 | ✅ | ✅ | -- |
以下仅为常用网络MLU移植教程,并未包含寒武纪支持的全部网络, 如有新网络需求, 可在 issue 区讨论。 在Cambricon Caffe/TF/Pytorch 框架下可支持CPU、MLU(逐层模式)和MFUS(融合模式)三种模式上运行。
AI框架 | 应用领域 | 原始网络 | 网络移植教程 | CPU | MLU | MFUS | OFFLINE |
---|---|---|---|---|---|---|---|
Caffe | 图像分类 | AlexNet | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Caffe | 图像分类 | ResNet-18 | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Caffe | 图像分类 | ResNet-50 | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Caffe | 图像分类 | VGG16 | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Caffe | 图像分类 | MobileNetV1 | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Caffe | 图像分类 | MobileNetV2 | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Caffe | 目标检测 | Faster R-CNN | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Caffe | 目标检测 | RFCN | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Caffe | 目标检测 | MTCNN | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Caffe | 目标检测 | SSD-VGG16 | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Caffe | 目标检测 | YOLOv3 | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Caffe | 目标检测 | YOLOv4 | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Caffe | 语义分割 | SegNet | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Caffe | 关键点检测 | OpenPose | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Pytorch | 图像分类 | ResNet-34 | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Pytorch | 图像分类 | ResNet-50 | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Pytorch | 图像分类 | ResNet-101 | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Pytorch | 图像分类 | VGG16 | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Pytorch | 图像分类 | MobileNetV1 | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Pytorch | 图像分类 | MobileNetV2 | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Pytorch | 图像分类 | DenseNet121 | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Pytorch | 目标检测 | Faster R-CNN | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Pytorch | 目标检测 | Mask R-CNN | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Pytorch | 目标检测 | SSD-VGG16 | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Pytorch | 目标检测 | YOLOv3 | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Pytorch | 目标检测 | YOLOv4 | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Pytorch | 目标检测 | YOLOv4-Tiny | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Pytorch | 目标检测 | YOLOv5 | 移植教程 | ✅ | ✅ | ✅ | ✅ |
Pytorch | 目标检测 | CenterNet | 移植教程 | ✅ | ✅ | ✅ | ✅ |
名称 | 数量 | 备注 |
---|---|---|
开发主机/服务器 | 一台 | 主流配置即可;电源功率按需配置;PCIe Gen.3 x16/Gen.4 x16 |
MLU270/MLU370 | 一套 | 不同型号板卡尽量避免混插混用 |
名称 | 版本/文件 | 备注 |
---|---|---|
Linux OS | Ubuntu16.04/Ubuntu18.04/CentOS7 | 宿主机操作系统 |
Driver_MLU270 | neuware-mlu270-driver-aarch64-4.9.8.tar.gz | 依操作系统选择 |
Driver_MLU370 | cambricon-mlu-driver-centos7-5.10.22-1.x86_64.rpm | 依操作系统选择,驱动安装教程 |
注: 以上软件环境中文件名词, 如有版本升级及名称变化, 可以在 env.sh 中进行修改。
注册开发者社区账号并下载 SDK 及文档: https://forum.cambricon.com/index.php?m=content&c=index&a=show&catid=169&id=2441