写点什么

CANN 版本升级及 Add 算子调试

作者:x
  • 2024-06-25
    山东
  • 本文字数:1655 字

    阅读完需:约 5 分钟

本篇文章是将 CANN 版本升级到最新的 8.0.0C1.alpha003,并成功运行 Add 算子。因为我们没有物理设备,是在服务器上运行,所以是无法安装固件的,只需要升级驱动和 CANN 就可以了。

在升级前,要先查看版本是否支持。参考下面的文档,当时这个文档并没有表明如何查看当前的 CANN 版本。

https://www.hiascend.com/document/detail/zh/CANNCommunityEdition/80RC1alpha003/softwareinst/instg/instg_0102.html

环境升级

远程登录工具下载

在购买服务器并绑定 IP 后,登陆方式是多种的,可以考虑 cloudshell 和 VNC 登陆方式,我们这里采用第三方远程登录工具登录,使用的工具是 mobaxterm,之所以选择该工具是因为它支持上传文件到服务器。

Mobaxterm 下载链接可以自行百度,在这里就不做介绍了。

解压后,我们可以直接运行,不用安装。



打开后,点击 session,输入 IP 地址,就可以登录了。



驱动和 CANN 下载


服务器 Ascend 310 本身安装的驱动是 20 版本,我们要先将驱动升级到 23 版本。

驱动下载链接:

https://www.hiascend.com/hardware/firmware-drivers/community?product=2&model=3&cann=8.0.RC1.alpha003&driver=1.0.22.alpha

选择相对应的版本:



CANN 下载链接:

https://www.hiascend.com/developer/download/community/result?module=cann

选择需要的版本进行下载:



下载完成后,我们可以直接将对应的文件拖拽到相关的文件夹内。



驱动和 CANN 升级


首先要确定用户是 root,然后给下载的驱动包和 CANN 开发套件分别加上执行权限并安装。

切换到文件所在的文件夹,执行 chmod +x ./A300-3010-npu-driver_23.0.0_linux-x86_64.run,



权限加上以后,在升级前,要先校验下文件。

./A300-3010-npu-driver_23.0.0_linux-x86_64.run --check

没问题的话,在执行升级命令:

./A300-3010-npu-driver_23.0.0_linux-x86_64.run --upgrade



执行后,会提示要重启设备,执行 reboot 命令重启服务器即可。执行 npu-smi info 命令查看是否升级成功:



驱动成功安装后,我们可以考虑升级 CANN 了,和驱动相似,我们也要先加权限。

切换到 CANN 开发套件所在文件夹,加权限:

chmod +x ./Ascend-cann-toolkit_8.0.RC1.alpha003_linux-x86_64.run

校验文件:

./Ascend-cann-toolkit_8.0.RC1.alpha003_linux-x86_64.run --check

升级 CANN:

./Ascend-cann-toolkit_8.0.RC1.alpha003_linux-x86_64.run --upgrade

如下图,就说明升级成功了!



Add 算子下载及 CPU 侧调试


通过下方的样例链接进行下载,因为服务器没有安装 git,因此要下载 zip 压缩包,然后在上传到服务器,如果是第一次访问 gitee 平台,需要注册账户。

https://gitee.com/ascend/samples/tree/master/operator/AddCustomSample

上传完成后,执行解压命令:unzip ./samples-master.zip

切换到样例所在目录,开始执行样例:bash run.sh -r cpu -v Ascend310P1

报如下错误,提示 cmake 版本太低。



参考了网上好多的 cmake 版本升级方式,最终如下方法搞定:

在 cmake 官网下载对应操作的最新版本,下载成功后,上传到服务器,执行解压命令:tar -xzvf cmake-3.XX.X.tar.gz

进入文件夹,创建用于构建的目录,并进入。

运行 bootstrap 脚本:

../bootstrap

执行如下命令进行编译和安装:

make;sudo make install

需要注意的是编译可能花费时间比较久,要耐心等待。

安装成功后,查看版本是否成功安装:



再次执行样例,发现这次又又又报错了:



发现是 gcc 版本过低,下面是解决方案:


安装 centos-release-scl:

yum install centos-release-scl

安装 gcc11:

yum install devtoolset-11-gcc*

执行如下命令,替换软连接:

mv /usr/bin/gcc /usr/bin/gcc.bak

ln -s /opt/rh/devtoolset-11/root/bin/gcc /usr/bin/gcc

mv /usr/bin/g++ /usr/bin/g++.bak

ln -s /opt/rh/devtoolset-11/root/bin/g++ /usr/bin/g++

mv /usr/bin/c++ /usr/bin/c++.bak

ln -s /opt/rh/devtoolset-11/root/bin/c++ /usr/bin/c++

mv /usr/bin/cpp /usr/bin/cpp.bak

ln -s /opt/rh/devtoolset-11/root/bin/cpp /usr/bin/cpp

mv /usr/bin/cc /usr/bin/cc.bak

ln -s /opt/rh/devtoolset-11/root/bin/cc /usr/bin/cc

执行完成后,再次运行样例:



至此,环境总算搭建完成,样例也调试成功了!

用户头像

x

关注

还未添加个人签名 2020-03-27 加入

还未添加个人简介

评论

发布
暂无评论
CANN版本升级及Add算子调试_x_InfoQ写作社区