MIGraphX图形推理引擎如何在国产加速器海光DCU AI集群上安装使用

目录

一、软件简介

二、部署安装

2.1 MIGraphX_Samples_V1.2目录结构

2.2 构建安装

2.2.1 安装依赖

2.2.2 安装rbuild

2.2.3设置安装目录

2.2.4 构建并安装MIGraphX

 2.2.5 安装OpenCV依赖

2.2.6 修改CMakeLists.txt 

2.2.7 安装OpenCV并编译工程

2.2.8 设置环境变量

三、使用

四、模型转换说明

4.1 SSD模型

4.2 YOLOV3模型

4.3 YOLOV5模型

注意事项


一、软件简介

MIGraphX是图形推理引擎,加速机器学习模型推理,MIGraphX可以通过直接安装二进制文件或从源代码构建来使用。

二、部署安装

2.1 MIGraphX_Samples_V1.2目录结构

├── 3rdParty:依赖库
├── Resource:资源文件目录,包括模型,测试图像等
│ └── Models:示例模型
│ └── TestImage:测试图像
│ └── Configuration.xml:配置文件
├── Src
│ └── Classifier:分类器源码
│ └── Detector:检测器源码
│ └── Utility:工具
│ └── Sample.cpp:示例程序
│ └── main.cpp
├── CMakeLists.txt
├── README.md
├── requirements.txt

2.2 构建安装

2.2.1 安装依赖

MIGraphX的依赖库包括:

安装方法(这里以centos为例):

yum install rocm-cmake
yum install miopen-hip
yum install protobuf
yum install half
pip install pybind11

2.2.2 安装rbuild

pip install https://github.com/RadeonOpenCompute/rbuild/archive/master.tar.gz

2.2.3设置安装目录

设置环境变量ROCM_PATH为MIGraphX的安装目录。比如MIGraphX安装在/opt/rocm/目录下,则设置

export ROCM_PATH="/opt/rocm/"

2.2.4 构建并安装MIGraphX

git clone https://github.com/ROCmSoftwarePlatform/AMDMIGraphX.git
cd AMDMIGraphX
rbuild build -d depend --cxx=/opt/rocm/llvm/bin/clang++
cd build
make install

 2.2.5 安装OpenCV依赖

当前路径为工程根目录 

sh ./3rdParty/InstallOpenCVDependences.sh

 注意:根据不同的系统,选择脚本中相应的安装方式

2.2.6 修改CMakeLists.txt 

如果使用ubuntu系统,需要修改CMakeLists.txt中依赖库路径:
将”{CMAKE_CURRENT_SOURCE_DIR}/depend/lib64/{CMAKE_CURRENT_SOURCE_DIR}/depend/lib/“

2.2.7 安装OpenCV并编译工程

当前路径为工程根目录

rbuild build -d depend

2.2.8 设置环境变量

将依赖库路径加入环境变量LD_LIBRARY_PATH,在~/.bashrc中添加如下语句:

Centos:

export LD_LIBRARY_PATH=/opt/rocm/lib/:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=项目根目录/depend/lib64/:$LD_LIBRARY_PATH

Ubuntu:

export LD_LIBRARY_PATH=/opt/rocm/lib/:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=项目根目录/depend/lib/:$LD_LIBRARY_PATH

然后执行:
```
source ~/.bashrc

三、使用

运行

cd ./build/
./MIGraphX_Samples

根据提示选择要运行的示例程序,比如执行

./MIGraphX_Samples 3

运行YOLOV5示例程序

注:需要MIGraphX 0.9版本以上才能运行YOLOV5模型

四、模型转换说明

4.1 SSD模型

  1. Resource/Models/Detector/SSD/目录下提供了模型转换示例,deploy.prototxt对应的onnx版本为deploy_Caffe2ONNX.prototxt。本示例使用caffe框架,其他框架需要按照caffe的实现方式作出相应的修改。
  2. 模型转换成功后需要修改 Resource/Configuration.xml中SSD网络结构参数,xml中对每个参数的含义作出了详细的解释。

4.2 YOLOV3模型

  1. Resource/Models/Detector/YOLOV3/目录下提供了模型转换示例,deploy.prototxt对应的onnx版本为deploy_Caffe2ONNX.prototxt。本示例使用caffe框架,其他框架需要按照caffe的实现方式作出相应的修改。
  2. 模型转换成功后需要修改 Resource/Configuration.xml中YOLOV3网络结构参数,xml中对每个参数的含义作出了详细的解释。

4.3 YOLOV5模型

YOLOV5模型中的Focus模块使用到了步长为2的切片操作,MIGraphX暂时不支持该操作,在转换为onnx模型的时候对这部分做了修改,具体修改方法参考Resource/Models/Detector/YOLOV5/yolov5s.onnx模型。

注意事项

  1. 如果使用int8模式推理,为了保证模型精度,需要选择合适的量化校准数据,推荐使用测试集中的部分具有代表性的数据作为校准数据,如果校准数据为空,MIGraphX会使用默认的量化参数,可能会导致精度下降。
<think>好的,用户的问题是关于在Ubuntu系统上安装海光DCU驱动程序和软件。我需要根据提供的引用内容来整理出一个清晰的步骤指南。首先,用户提到的引用[1]提到了驱动安装的步骤,包括安装驱动、加载驱动模块以及配置文件的操作。引用[2]则详细说明了如何安装DTK,包括MPI支持和环境变量的配置。另外,引用[4]提到了安装Cupy的例子,可能需要先安装好驱动和相关工具。 接下来,我需要将这些信息整合成一个逻辑连贯的安装流程。首先应该处理驱动安装,因为这是基础。然后安装DTK,因为它是开发工具包的核心部分。之后可能需要配置AI框架,比如飞桨,以及相关的库如Cupy。同时,需要注意用户可能遇到的问题,比如驱动未加载或网络问题影响安装,如引用[3]中提到的无法上网导致的问题,可能需要提醒用户检查网络配置或使用离线包。 需要确保每一步的命令都正确无误,并且环境变量的设置正确。例如,在安装DTK时,需要解压到指定目录,并配置bashrc文件。此外,驱动安装后可能需要手动加载模块或重启,这也是关键步骤,不能遗漏。 另外,用户可能需要安装Python环境,特别是升级到特定版本,但引用[3]提到在调试任务中无法上网,可能需要指导用户如何离线安装Python或相关依赖。不过用户当前的问题主要是安装驱动和软件,可能暂时不需要深入讨论Python升级的问题,但可以作为注意事项提到。 最后,生成相关问题时要覆盖常见后续步骤,如验证安装、配置框架、解决常见错误等。需要确保回答结构清晰,分步骤说明,并引用正确的来源,比如引用[1]和[2]中的具体步骤。</think>### 在 Ubuntu 上安装海光 DCU 驱动程序和软件的步骤 #### 一、驱动安装与配置 1. **安装驱动** - 通过官方渠道获取海光 DCU 驱动安装包,执行安装步骤。若安装后无显示,需手动加载驱动模块: ```bash sudo modprobe hydcu # 手动加载驱动模块 sudo reboot # 重启机器 ``` - 若驱动仍未加载,检查配置文件是否存在: ```bash # 若/etc/modprobe.d/hydcu.conf不存在,手动创建并写入配置 echo "options hydcu hygon_vbios=0" | sudo tee /etc/modprobe.d/hydcu.conf ``` 引用[1]中明确说明此配置文件是驱动加载的关键[^1]。 #### 二、安装 DTK(Development Tool Kit) 1. **安装 MPI 支持库** ```bash sudo tar xvf mpi.tar.gz -C /opt # 解压MPI到系统目录 echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/mpi/lib' >> ~/.bashrc echo 'export PATH=$PATH:/opt/mpi/bin' >> ~/.bashrc # 配置环境变量 ``` 2. **解压 DTK 包并配置环境** ```bash sudo tar xvf DTK-23.10-Ubuntu20.04.1-x86_64.tar.gz -C /opt # 解压DTK echo 'source /opt/dtk-23.10/env.sh' >> ~/.bashrc # 添加环境变量 source ~/.bashrc # 立即生效 ``` 此步骤确保 DTK 工具链可用,引用[2]详细描述了 DTK 的核心作用[^2]。 #### 三、AI 框架与依赖库安装(以飞桨/PaddlePaddle 和 Cupy 为例) 1. **Python 环境准备** - 若需升级 Python 到 3.10,建议使用离线包或源码编译(注意引用[3]提到的网络问题需提前解决)[^3]。 - 安装虚拟环境工具: ```bash sudo apt install python3.10-venv python3.10 -m venv dcu-env source dcu-env/bin/activate ``` 2. **安装 Cupy(海光 DCU 适配版)** - 根据引用[4],需确保 DTK 和驱动已正确安装后,再编译安装 Cupy: ```bash pip install cupy # 若支持海光DCU的预编译包可用 ``` - 验证安装: ```python import cupy as cp x = cp.arange(6, dtype='f').reshape(2, 3) # 测试张量操作 ``` #### 四、常见问题处理 - **驱动加载失败**:检查`/etc/modprobe.d/hydcu.conf`配置,确认`hygon_vbios=0`参数是否生效[^1]。 - **网络问题影响安装**:若调试任务中无法联网(如引用[3]),需配置代理或使用离线依赖包。 - **环境变量未生效**:执行`source ~/.bashrc`或重新登录终端。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

技术瘾君子1573

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值