华为cann 算子开发他们提供的云端环境 cannlab hidevlab的webide使用教程
华为cann 算子开发他们提供的云端环境 cannlab hidevlab的webide使用教程
https://gitcode.com/opdevtools/plugin_release#
一站式算子开发插件使用操作文档
本文档将引导你从零开始,完成算子的创建、开发、验证到性能分析的完整流程。
前置准备
从CANN社区的任意仓进入->点“CANNLab”,即可进入CANN社区一站式开发平台(CANNLab): 例如:https://gitcode.com/cann/ops-math
image.png
进入开发者空间->选择WebIDE
image.png
连接workspace后:选择IDE右侧工具栏中的Ascend C算子开发插件
image.png
第一步:创建算子工程
新建算子工程
可以通过点击插件工具栏 -> "+"按钮
image.png
或者通过在资源管理器中右键点击创建
image.png
注:
在标准自定义算子工程目录下,只支持创建标准自定义算子:
image.png
注:算子标记功能
针对标准自定义算子,插件会帮助用户自动识别当前工程下都有哪些算子。为了防止工具自动识别错漏,插件提供了让用户自己标记的功能:
右键点击目录,可标记为算子工程集合,会把文件夹下的目录都标记为算子目录;
或者右键标记为算子工程目录,会把当前目录标记为单个算子目录
image.png
如果要创建算子直调工程(<<<>>>)、pyasc算子工程,则需关闭当前ops-math项目,然后创建算子:
image.png
填写工程配置
配置项说明:
算子工程名称:在指定位置创建同名目录,并在其中生成算子文件 算子工程位置:保存算子工程的目录(必须已存在) 环境变量配置脚本:设置编译运行环境的脚本路径,当前云开发环境已经设置好了CANN包的env,可使用默认值/etc/profile即可。
点击在当前窗口中打开,完成创建后,工作区将自动打开新建的算子工程。
第二步:算子开发(以上面创建的<<<>>>算子为例)
编写算子代码 在生成的算子代码工程中编写你的 Ascend C 代码,完成算子开发,插件提供了预防高亮和代码跳转等功能。
image.png
编译算子 点击操作面板中的“编译部署算子”按钮:
image.png
编译成功后,会在 build 目录下生成与算子工程名称一致的可执行文件。
运行算子 点击操作面板中的“运行”按钮,可以运行编译出来的算子可执行文件(对于标准自定义算子来说,会先编译算子的example,然后再执行example的可执行文件):
image.png
第三步:调试算子
NPU调试:点击操作面板中的“NPU调试”按钮,插件会自动拉起所需编译过程,可在有NPU的环境中进行上板打断点单步调试,并查看相关变量等信息:
image.png
CPU调试:点击“CPU调试”按钮,可在CPU环境中进行孪生调试,以解决缺少NPU资源的调试场景:
image.png
第四步:异常检测
使用 msSanitizer 工具检测算子潜在问题(内存、竞争、未初始化、同步等),需在有NPU的环境中执行。
点击操作面板中的“异常检测”按钮,插件会提示用户选择所需检测内容,如果每次检测的内容不需改变,可以选择“不再显示”按钮:
image.png
-点击“立即开始”后,插件自动拉起所需编译过程,并进行检测,点击面板中的“异常检测结果”菜单中的执行记录,可查看异常检测报告,支持查看详情和代码行跳转:
image.png
根据检测结果修复代码中的问题。
第五步:性能分析
上板性能分析 适用于实际运行环境,定位内存和性能瓶颈。
点击操作面板中的“性能调优”下的“上板分析”按钮,工程配置中可配置需要收集的数据指标,默认全部收集,如果每次收集的内容不需改变,可以选择“不再显示”按钮:
image.png
点击面板中的“性能调优结果可视化”菜单,可查看并分析性能调优相关数据:
image.png
仿真性能分析 适用于开发阶段,进行详细的指令级和代码热点分析。
点击操作面板中的“性能调优”下的“仿真分析”按钮,工程配置中可配置需要收集的数据指标,默认全部收集,如果每次收集的内容不需改变,可以选择“不再显示”按钮:
image.png
点击面板中的“性能调优结果可视化”菜单,可查看并分析性能调优相关数据:
image.png
鲲鹏昇腾开发者社区是面向全社会开放的“联接全球计算开发者,聚合华为+生态”的社区,内容涵盖鲲鹏、昇腾资源,帮助开发者快速获取所需的知识、经验、软件、工具、算力,支撑开发者易学、好用、成功,成为核心开发者。
更多推荐


所有评论(0)