Ascend C算子开发(入门)—— 算子开发环境搭建

举报
Byyyi耀 发表于 2024/09/23 17:46:47 2024/09/23
【摘要】 Ascend C算子开发(入门)—— 算子开发环境搭建安装包解读 Ascend-cann-功能-版本-平台.tar/runnnrt 推理amct 模型小型化工具communitysdk 社区算子开发工具包kernels 二进制安装包toolkit 开发套件 在CPU上部署开发环境 准备工作一台安装ubuntu22.04桌面版(双系统/虚拟机均可)的PC机(或笔记本) 步骤修改Ubuntu源...

image.png

Ascend C算子开发(入门)—— 算子开发环境搭建

image.png
image.png

安装包解读 Ascend-cann-功能-版本-平台.tar/run

  • nnrt 推理
  • amct 模型小型化工具
  • communitysdk 社区算子开发工具包
  • kernels 二进制安装包
  • toolkit 开发套件

在CPU上部署开发环境

准备工作

一台安装ubuntu22.04桌面版(双系统/虚拟机均可)的PC机(或笔记本)

步骤
  1. 修改Ubuntu源
sudo passwd root # 修改root用户密码

su # 登录root用户
# Password:... 输入密码

cd /etc/apt
cp sources.list sources.list.bak
>sources.list
vim sources.list # 修改sources.list文件内容
------------------------------------------------
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
------------------------------------------------
exit # 退出root用户

进入官网的CANN部分,点击立即下载中的社区版本。

image.png

找到最新版本的toolkit的软件安装包。具体的安装流程可以在文档中查看

image.png

进入文档后 ,点击CANN软件安装指南。

image.png

因为我们是Ubuntu系统,因此我们应该选择(Debian系列)的安装步骤指南。

image.png

sudo apt-get install -y gcc g++ make cmake libsqlite3-dev zlib1g-dev libssl-dev libffi-dev net-tools # 安装系统依赖
wget https://www.python.org/ftp/python/3.7.5/Python-3.7.5.tgz # 安装Python依赖

image.png

tar -zxvf Python-3.7.5.tgz
./configure --prefix=/usr/local/python3.7.5 --enable-loadable-sqlite-extensions --enable-shared
make -j16
sudo make install
配置环境变量
vim ~/.bashrc
-----------------------------------------------------------
export LD_LIBRARY_PATH=/usr/local/python3.7.5/lib:$LD_LIBRARY_PATH
export PATH=/usr/local/python3.7.5/bin:$PATH  
-----------------------------------------------------------
source ~/.bashrc
配置pip源
cd # 切换到根目录
mkdir .pip
cd .pip
vim pip.conf
-----------------------------------------------------------
[global]
#以华为源为例,请根据实际情况进行替换。
index-url = https://mirrors.huaweicloud.com/repository/pypi/simple
trusted-host = mirrors.huaweicloud.com
timeout = 120
-----------------------------------------------------------
pip安装依赖包
pip3 install attrs cython numpy decorator sympy cffi pyyaml pathlib2 psutil protobuf scipy requests absl-py --user
安装开发套件包
cd
cd Downloads/
chmod +x Ascend-cann-toolkit_8.0.RC3.alpha002_linux-x86_64.run 
./Ascend-cann-toolkit_8.0.RC3.alpha002_linux-x86_64.run --install
添加配置
vim ~/.bashrc
-----------------------------------------------------------
source /home/lby/Ascend/ascend-toolkit/set_env.sh
-----------------------------------------------------------
source ~/.bashrc
验证是否安装成功
下载samples代码包

Gitee昇腾官网中的克隆/下载模块中找到命令

git clone https://gitee.com/ascend/samples.git
测试算子
cd samples/operator/AddCustomSample/KernelLaunch/AddKernelInvocationNeo/
bash run.sh -r cpu -v Ascend310P1
  • bash run.sh -r cpu -v Ascend310P1的含义是:用bash执行run.sh脚本,使用CPU和Ascend310P1的芯片。
    如果最终的测试结果是test pass,说明算子能够正常执行,环境配置成功。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。