项目简介
本项目围绕墨芯软件栈开展,此软件栈涵盖生态层、稀疏化层、SDK层、Driver层和硬件层。它支持多种主流AI技术,能为用户提供从模型训练到推理的一站式解决方案。同时针对PaddlePaddle框架,详细说明了模型编译和推理流程,还对部分Paddle模型进行了全流程测试。
项目的主要特性和功能
- 广泛的生态支持:支持ONNX、TensorFlow、PyTorch、PaddlePaddle等主流AI技术,可降低用户研发成本,获取稀疏化收益。
- 稀疏化训练:提供SparseOPT组件,能与训练框架协同,助力用户训练稀疏神经网络。
- 丰富的SDK组件
- SparseRT:具备稀疏化模型的编译、推理及调试能力,提供Python、C++接口和相关工具。
- Codec:提供图像、视频编解码开发接口。
- SOLA Runtime:提供灵活的硬件控制能力,便于开发复杂高性能AI应用。
- 驱动支持:为墨芯稀疏化AI推理卡提供驱动,包括SOLA SEAL (KMD & UMD)、虚拟化组件、容器化组件等。
- 模型开发与测试:详细给出Paddle模型在moffett板卡上的编译和推理流程,并对部分模型进行全流程测试。
安装使用步骤
前提条件
假设用户已经下载了本项目的源码文件,并且已经完成相关依赖的安装。
Paddle模型编译
- 创建Paddle模型目录并放入模型文件,例如: ```bash
resnet50
mkdir -p /my_project/paddle_model/resnet50 cd /my_project/paddle2onnx/paddle_model/resnet50 wget https://paddle-imagenet-models-name.bj.bcebos.com/dygraph/inference/ResNet50_infer.tar
bert
mkdir -p /my_project/paddle_model/bert_base_uncased
2. 将Paddle模型编译为runtime可执行的model.bin文件,例如:
bash
PaddleClass Model
python3 compiler/compile_PaddleClas.py /my_project/paddle_model/resnet50/inference.pdmodel -o compile_output/resnet50
Bert Model
python3 compiler/compile_bert_base.py /my_project/paddle_model/bert_base_uncased/inference.pdmodel -o compile_output/bert-base-uncased ```
板卡上推理
使用编译生成的模型文件modle.bin在moffett板卡上进行推理测试,例如: ```bash
PaddleClass Model
cd /home/moffett/workspace/paddle/PaddleClas sudo python3 tools/eval.py -c ppcls/configs/ImageNet/ResNet/ResNet50.yaml -m./my_projectcompile_output/resnet50/model.bin
Bert Model
cd /my_project/PaddleNLP/model_zoo/bert sudo bash test_accuracy.sh /my_project/compile_output/bert-base-uncased/uncased/model.bin ```
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】