找回密码
 立即注册
查看: 280|回复: 0

极智开发 | 从基础镜像开始构建昇腾atlas docker开发环境

[复制链接]
发表于 2024-7-15 18:24 | 显示全部楼层 |阅读模式
欢迎存眷我的公众号 [极智视界],获取我的更多经验分享
大师好,我是极智视界,本文介绍一下 从基础镜像开始构建昇腾atlas docker开发环境。
邀您插手我的常识星球「极智视界」,星球内有超多好玩的项目实战源码下载,链接:https://t.zsxq.com/0aiNxERDq
先在宿主机安装昇腾的驱动,可以参考我的这篇《昇腾开发环境搭建》。
在宿主机上确保 npu-smi info 能正常输出卡的信息。
下面开始从基础镜像开始构建昇腾atlas docker开发环境。
  1. # 来取ubuntu18.04基础镜像
  2. docker pull ubuntu:18.04
  3. # 重定名一下镜像 ==> 不做也行
  4. docker tag ubuntu:18.04 ubuntu/18.04:v0
  5. # 创建容器 ==> port9999和挂载目录workspace可以按照你的实际情况填写
  6. docker run --name=atlas_infer -p 9999:22 -u root --privileged -it --device=/dev/davinci0 --device=/dev/davinci_manager --device=/dev/devmm_svm --device=/dev/hisi_hdc -v /usr/local/Ascend/driver:/usr/local/Ascend/driver -v /workspace:/workspace ubuntu/18.04:v0 /bin/bash
  7. exit
  8. # 从头进入容器
  9. docker start atlas_infer
  10. docker attach atlas_infer
复制代码
这样基础容器已经创建完成,下面进行容器开发环境的构建。
  1. # 首先确保你在容器中能够正常调用加速卡驱动
  2. npu-smi info
  3. # 如果没有找到npu-smi,则在宿主机find一下,然后拷到容器放到容器的系统环境就行
复制代码
然后进行cann-toolkit的安装。
创建 HwHiAiUser 用户,cann的一些安装依赖于 HwHiAiUser 用户。
  1. # 创建 HwHiAiUser 用户组
  2. groupadd HwHiAiUser
  3. # 创建 HwHiAiUser 用户
  4. useradd -g HwHiAiUser -r -m -s /bin/bash HwHiAiUser
复制代码
这个时候你 ls /home 已经能够发现有了 HwHiAiUser 用户目录了。
昇腾的开发环境强依赖于 python3.7.5,所以我们得先装上它。安装 python3.7.5 一般有两种方式,即采用源码编译 和 采用anaconda的conda来创建python3.7.5的环境,然后软链python和pip可执行法式到系统环境。为了便利起见,这里采用anaconda的方式,先安装上 Anaconda3,然后用 conda 安装 python3.7.5 环境。这里安装 Anaconda3 斗劲简单,略过,附上不限速下载源:anaconda。
  1. # 使用conda打点python3.7.5环境
  2. # 创建 python3.7.5 环境
  3. conda create -n atlas_py375 python=3.7.5
  4. # 安装 python 依赖
  5. conda activate atlas_py375
  6. pip install -i https://pypi.douban.com/simple attrs psutil decorator numpy protobuf==3.11.3 scipy sympy cffi grpcio grpcio-tools requests
  7.             
  8. # 安装sdk依赖
  9. apt -y update
  10. apt install -y gcc g++ make cmake zlib1g zlib1g-dev libsqlite3-dev openssl libssl-dev libffi-dev unzip pciutils net-tools dkms
复制代码
然后开始安装sdk。
  1. # 已经有驱动了,就不用再安装了
  2. # 直接进行cann的安装
  3. # python环境构建
  4. # 软链python
  5. ln -s /root/anaconda3/envs/atlas_py375/bin/python /usr/bin
  6. ln -s /root/anaconda3/envs/atlas_py375/bin/python /usr/bin/python3.7
  7. # 软链pip
  8. ln -s /root/anaconda3/envs/atlas_py375/bin/pip /usr/bin
  9. ln -s /rooot/anaconda3/envs/atlas_py375/bin/pip3 /usr/bin
  10. # 安装CANN
  11. chmod +x ./Ascend-cann-nnrt_6.0.0.alpha002_linux-x86_64.run
  12. ./Ascend-cann-nnrt_6.0.0.alpha002_linux-x86_64.run --install
  13. chmod +x ./Ascend-cann-nnae_6.0.0.alpha002_linux-x86_64.run
  14. ./Ascend-cann-nnae_6.0.0.alpha002_linux-x86_64.run --install
  15. chmod +x ./Ascend-cann-toolkit_6.0.0.alpha002_linux-x86_64.run
  16. ./Ascend-cann-toolkit_6.0.0.alpha002_linux-x86_64.run --install
复制代码
这些安装好之后,配置一份 source_env.sh 激活环境的脚本,当然你也可以直接写进 ~/.bashrc 或 /etc/profile。
  1. # source_env.sh
  2. source /usr/local/Ascend/ascend-toolkit/set_env.sh
复制代码
最后可以测试一下环境是否已经配置好,可以测试一下atc环境:
  1. atc
复制代码

这样就大功告成了。

好了,以上分享了 从基础镜像开始构建昇腾atlas docker开发环境,但愿我的分享能对你的学习有一点辅佐。
<hr/>【公众号传送】

畅享人工智能的科技魅力,让好玩的AI项目不难玩。邀请您插手我的常识星球,星球内我精心整备了大量好玩的AI项目,皆以工程源码形式开放使用,涵盖人脸、检测、分割、多模态、AIGC、自动驾驶、工业等。不敢说会对你学习有所辅佐,但必然非常好玩,并持续更新更加有趣的项目。https://t.zsxq.com/0aiNxERDq

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-12-27 07:41 , Processed in 0.147821 second(s), 28 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表