【2024CANN训练营第二季】使用华为云体验AscendC_Sample仓算子运行

环境介绍

NPU:Ascend910B2

环境准备

创建Notebook

华为云选择:【控制台】-【ModelArts】

ModelArts主页选择【开发生产】-【开发空间】-【Notebook】

页面右上角选择【创建Notebook】

选择资源


主要参数

规格:Ascend: 1*ascend-snt9b2|ARM: 24核 192GB

镜像:pytorch_2.1.0-cann_8.0.rc1-py_3.9-euler_2.10.7-aarch64-snt9b

存储空间:100 GB

全都填写完成后点提交即可
注意一下华为云的费用,是否有足够的代金券或者余额扣分,不然欠费是一个很麻烦的事情

创建完成等待状态显示为【运行中】,点右面的【打开】就可以开始体验了

使用npu-smi info命令查看NPU信息

开始体验(以曾经写的SinhCustom为例)

克隆代码仓

bash 复制代码
git clone https://gitee.com/ascend/samples

创建工作目录work_dir

bash 复制代码
mkdir work_dir
cd work_dir

复制文件到work_dir

bash 复制代码
cp -r ../samples/operator/AddCustomSample/ ./
cd AddCustomSample

目录下面有两个文件夹
FrameworkLaunch:使用框架调用Add自定义算子。

按照工程创建->算子实现->编译部署>算子调用的流程完成算子开发。整个过程都依赖于算子工程:基于工程代码框架完成算子核函数的开发和Tiling实现,通过工程编译脚本完成算子的编译部署,继而实现单算子调用或第三方框架中的算子调用。
KernelLaunch:使用核函数直调Add自定义算子。

核函数的基础调用(Kernel Launch)方式,开发者完成算子核函数的开发和Tiling实现后,即可通过AscendCL运行时接口,完成算子的调用。

体验FrameworkLaunch调用自定义算子

进入文件夹

复制代码
cd FrameworkLaunch/AddCustom

执行编译算子

bash 复制代码
bash build.sh

部署算子

bash 复制代码
cd build_out
./custom_opp_euleros_aarch64.run

aclnn调用算子

bash 复制代码
cd ../../AclNNInvocation
bash run.sh

成功运行的截图

体验KernelLaunch调用自定义算子

进入文件夹

bash 复制代码
cd KernelLaunch/AddKernelInvocationNeo

执行CPU调试

bash 复制代码
bash run.sh -r cpu -v Ascend910B2

执行NPU调试

bash 复制代码
bash run.sh -r npu -v Ascend910B2

如果遇到报错的话,安装一下CANN最新版的试试

安装方法:

设置环境变量

复制代码
export no_proxy=127.0.0.1,localhost,172.16.*,iam.cn-southwest-2.huaweicloud.com,pip.modelarts.private.com
export NO_PROXY=127.0.0.1,localhost,172.16.*,iam.cn-southwest-2.huaweicloud.com,pip.modelarts.private.com

下载

复制代码
wget 'https://ascend-repo.obs.cn-east-2.myhuaweicloud.com/Milan-ASL/Milan-ASL V100R001C19SPC703/Ascend-cann-toolkit_8.0.RC3.alpha003_linux-aarch64.run'

安装

bash 复制代码
bash Ascend-cann-toolkit_8.0.RC3.alpha003_linux-aarch64.run --full

设置环境变量

bash 复制代码
source /home/ma-user/Ascend/ascend-toolkit/set_env.sh

然后就可以运行了

相关推荐
2601_9620725516 天前
李梦娇常识4600问|题库|打印版
sql·华为od·华为·c#·华为云·.net·harmonyos
烂白菜16 天前
智码美形:华为云码道 × UI-UX-Pro-Max 高品质界面智能生成实践
ui·华为云·ux
容器魔方20 天前
Karmada v1.18 版本发布!新增混合云溢出式调度能力
人工智能·云原生·容器·华为云·云计算
DS小龙哥22 天前
基于ESP32设计的智能养蜂监测系统
stm32·单片机·嵌入式硬件·物联网·华为云
江华森23 天前
JumpServer v4.10.16-ce 华为云 ECS 实战部署全记录
华为云
云智慧AIOps社区23 天前
云智慧Cloudwise 亮相华为云 × 霞光社中企私享会,Qreel 重构 AI 短剧出海新范式
人工智能·华为云·ai短剧·短剧创作
码农翻身23 天前
英伟达向左,华为云向右:AI数据中心该走哪条路?
人工智能·华为云
PPIO派欧云23 天前
PPIO亮相华为云创想者大会:以Agentic Cloud加速中国AI走向全球
人工智能·华为云
DS小龙哥24 天前
基于STM32与华为云的智能康养木屋环境监测与控制系统
stm32·嵌入式硬件·华为云
halazi1001 个月前
如何在华为云上开通MaaS服务并创建API Key,并在CodeArts Agent中配置使用API Key
华为云·api·tokens