海光DTK开发环境安装与Docker环境部署

部署运行你感兴趣的模型镜像


前言

公司目前在做国产化适配,设计包含华为昇腾系列、海光DCU等,本文记录下海光机器的部署过程。
简单介绍下,DCU指的是深度计算处理器(Deep-learning Computing Unit),是海光信息GPU架构的适用于计算密集型任务加速的协处理器产品。这个DCU产品的有趣在于,它基于海光DTK(DCU Toolkit计算平台库),全面兼容适配ROCm GPU计算生态,由此对齐CUDA生态、工具链和开发者环境等。可以简单的理解为海光DTK与DCU,对标英伟达的CUDA及GPU


一、基础环境

Ubuntu22.04操作系统
内核版本 5.15.0-157-generic
选取DTK版本 25.04

二、DTK开发环境安装

2.1 安装相关依赖

安装DCU加速卡驱动所需的依赖包命令::

sudo apt-get update 
sudo apt-get install -y cmake 
sudo apt-get install -y gcc 
sudo apt-get install -y g++ 
sudo apt-get install -y autoconf 
sudo apt-get install -y linux-kernel-headers  
sudo apt-get install -y kernel-package 

安装DTK-25.04所需要的依赖包命令:

sudo apt-get install -y make gcc g++ cmake git wget gfortran elfutils libdrm-dev 
sudo apt-get install -y kmod libtinfo5 sqlite3 libsqlite3-dev libelf-dev  
sudo apt-get install -y libnuma-dev libgl1-mesa-dev rpm rsync mesa-common-dev apt-utils 
sudo apt-get install -y cmake libpci-dev pciutils libpciaccess-dev libbabeltrace-dev pkg-config 
sudo apt-get install -y libfile-which-perl libfile-basedir-perl libfile-copy-recursiveperl libfile-listing-perl 
sudo apt-get install -y python3 python3-pip python3-dev python3-wheel 
sudo apt-get install -y gettext gettext-base libprotobuf-dev tcl 
sudo apt-get install -y libio-digest-perl libdigest-md5-file-perl libdata-dumper simple-perl vim curl libcurlpp-dev 
sudo apt-get install -y doxygen graphviz texlive libncurses5 msgpack* 

根据系统内核版本安装所需包:

# 查看内核
uname -r  
#(例如)uname -r 显示 5.15.0-157-generic 
# 查看可用内核
apt list linux-image-5.15.0-157-generic
# 安装指定版本
sudo apt-get install -y linux-image-5.15.0-157-generic

2.2 安装DCU加速卡驱动

下载驱动
https://download.sourcefind.cn:65024/6/main/ ->dtk-25.04驱动->rock-6.3.15-V1.0.1.run

安装DCU加速卡驱动

chmod 755 rock-6.3.15-V1.0.1.run
./rock-6.3.15-V1.0.1.run

在这里插入图片描述
重启机器

reboot

三、Docker环境部署

3.1 Docker基本环境安装

添加阿里云的GPG密钥

curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

设置存储库

sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

安装最新版本的Docker

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin

验证Docker是否安装成功

docker version

在这里插入图片描述
验证 Docker 服务是否在运行

systemctl status docker

启动Docker服务

sudo systemctl start docker

设置Docker服务在每次开机时自动启动

sudo systemctl enable docker

3.2 部署pytorch镜像

方式一:通过光源直接docker pull拉取镜像
https://sourcefind.cn/#/service-list

在这里插入图片描述
可以选用2.4.1-ubuntu22.04-dtk25.04-py3.10 版本镜像

docker pull image.sourcefind.cn:5000/dcu/admin/base/pytorch:2.4.1-ubuntu22.04-dtk25.04-py3.10

方式二:直接加载打包好的tar包镜像

docker load -i xxxxxx.tar.gz

3.3 部署pytorch镜像

查看目前的docker镜像

docker images

在这里插入图片描述
创建docker容器

docker run -it --name ai_dcu --network=host --privileged  --ipc=host --shm-size=1G --device=/dev/kfd --device=/dev/mkfd --device=/dev/dri -v /opt/hyhal:/opt/hyhal -v /home/suma/:/home/suma -v /etc/machine-id:/etc/machine-id -v /sbin/dmidecode:/sbin/dmidecode -v /dev/mem:/dev/mem -v /data_1/files:/data_1/files --group-add video  --cap-add=SYS_PTRACE  --security-opt seccomp=unconfined  dcu/admin/base/pytorch2.4.1-ubuntu22.04-dtk25.04-py3.10:v1 /bin/bash

其中dcu/admin/base/pytorch2.4.1-ubuntu22.04-dtk25.04-py3.10:v1改为自己的docker镜像信息即可

进入容器

docker exec -it xxxxx bash

docker查看DCU信息:

rocm-smi

在这里插入图片描述
至此就可以在Docker下可以正常使用DCU进行测试了。


总结

笔者在后续的代码移植过程中,涉及到pytorch部分的代码基本上没什么变动,可以实现无痛复制张贴,使得项目代码可以较快速的移植,由于没有进行加速推理优化,直接使用pytorch模型推理速度肯定是比不上使用nvidia的tensorrt模型推理速度的,只能说是能用。后续有时间可以再研究一波,海光自研的高性能深度学习推理引擎MIGraphX。

参考文献:
https://blog.youkuaiyun.com/u013185349/article/details/145605085
https://download.sourcefind.cn:65024/4/main
https://sourcefind.cn/#/service-list

2025年10月24日09:43:13
在这里插入图片描述

您可能感兴趣的与本文相关的镜像

PyTorch 2.6

PyTorch 2.6

PyTorch
Cuda

PyTorch 是一个开源的 Python 机器学习库,基于 Torch 库,底层由 C++ 实现,应用于人工智能领域,如计算机视觉和自然语言处理

评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

AI小笔记

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

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

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

打赏作者

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

抵扣说明:

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

余额充值