https://www.hiascend.com/zh/developer/activities/details/118b868aa5fe4b759d9e407e914db905

Ascend C算子开发

Ascend C暑期优才班获奖规则&笔记提交专用贴_Ascend C_昇腾论坛 (hiascend.com)

香橙派实验手册_Ascend C_昇腾论坛 (hiascend.com)

任务要求

修改add算子功能为sinh函数功能

操作步骤

1. Orange Pi AI PRO的连接

参考文档:以太网口远程登录(SSH方式)

  • 网线连接电脑和香橙派,香橙派ip一般为192.168.137.100,将电脑设为同一网段ip,如:192.167.137.101
  • 使用MobaXterm连接香橙派,用户root,密码Mind@123
2. Orange Pi AI PRO中Add算子的检验(Kernel直调工程体验)

代码:samples: CANN Samples (gitee.com)

cd ~/samples/operator/AddCustomSample/KernelLaunch/
cp -r AddKernelInvocationNeo/ test
cd test/
bash run.sh -r cpu -v Ascend310P1
# 上述命令中cpu参数指定了执行命令的设备,-v Ascend310P1则是香橙派的npu版本型号
# 在不涉及npu的情况下,版本型号不会对结果造成影响。
3. 将Add算子修改为Sinh并检验
  • 修改/root/samples/operator/AddCustomSample/KernelLaunch/test/scripts/gen_data.py
input_x = np.random.uniform(1,10,[8,2048]).astype(np.float16)
golden = np.sinh(input_x).astype(np.float16)

Exp(xLocal, xLocal, TILE_LENGTH);
Reciprocal(zLocal, xLocal, TILE_LENGTH); // 倒数
Sub(zLocal, xLocal, zLocal, TILE_LENGTH);
Muls(zLocal, zLocal, scalar, TILE_LENGTH);

  • 测试,同第2步
cd /root/samples/operator/AddCustomSample/KernelLaunch/test
bash run.sh -r cpu -v Ascend310P1

Ascend C算子开发认证考试

[Ascend C算子开发能力认证考试(中级)](https://www.hiascend.com/zh/exams/1697055344003670018?isCertification=false&breadcrumbSecond=Ascend C算子开发能力认证(中级)&source=/edu/certification&sourceDetail=/edu/certification/detail/34bf904cb410497cb9c582be6c047ff7)

参考笔记:https://bbs.huaweicloud.com/blogs/418400

初始化环境:

bash exam_system_init.sh

比赛补充

Ascend C算子开发(进阶)-昇腾社区 (hiascend.com)

往年比赛优秀代码(算子调优):operator_contrib · Ascend/samples - 码云 - 开源中国 (gitee.com)

Logo

鲲鹏昇腾开发者社区是面向全社会开放的“联接全球计算开发者,聚合华为+生态”的社区,内容涵盖鲲鹏、昇腾资源,帮助开发者快速获取所需的知识、经验、软件、工具、算力,支撑开发者易学、好用、成功,成为核心开发者。

更多推荐