18 Star 45 Fork 105

Ascend/ascendc-api-adv

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

概述

本样例基于Kernel直调算子工程,介绍了调用AscendQuant高阶API实现QuantCustom单算子,本样例输入inputGm为固定shape[1024],主要演示AscendQuant高阶API在Kernel直调工程中的调用。

目录结构介绍

目录及文件 描述
cmake 编译工程文件
scripts 包含输入数据和真值数据生成脚本文件
main.cpp 主函数,调用算子的应用程序,含CPU域及NPU域调用
quant_custom.cpp 算子kernel实现
quant_custom_tiling.cpp 算子tiling实现
run.sh 编译执行脚本
CMakeLists.txt 编译工程文件

编译运行样例

  • 配置环境变量

    这里的$ASCEND_CANN_PACKAGE_PATH需要替换为CANN开发套件包安装后文件存储路径。例如:/usr/local/Ascend/ascend-toolkit/latest

    export ASCEND_HOME_DIR=$ASCEND_CANN_PACKAGE_PATH
    

    若执行sim仿真,可自行配置仿真日志文件目录,默认仿真日志会在build目录下生成。若需要详细了解sim仿真相关内容,请参考《算子开发工具msProf》中的 工具使用 章节。

    # 设置仿真模式日志生成目录(可选),需要自行确保设置的目录已存在。若设置为相对路径下的目录,则以程序执行时的目录作为当前目录。例如,执行如下设置时,需要确保./目录下存在xxx目录
    export CAMODEL_LOG_PATH=./xxx
    
  • 生成输入和真值

    python3 scripts/gen_data.py
    
  • 编译执行

    bash run.sh -r [RUN_MODE] -v [SOC_VERSION]
    

    其中脚本参数说明如下:

    • RUN_MODE :编译执行方式,可选择CPU调试,NPU仿真,NPU上板,对应参数分别为[cpu / sim / npu]
    • SOC_VERSION :昇腾AI处理器型号,如果无法确定具体的[SOC_VERSION],则在安装昇腾AI处理器的服务器执行npu-smi info命令进行查询,在查询到的“Name”前增加Ascend信息,例如“Name”对应取值为xxxyy,实际配置的[SOC_VERSION]值为Ascendxxxyy。支持以下产品型号:
      • Atlas 推理系列产品
      • Atlas A2训练系列产品/Atlas 800I A2推理产品

    示例如下,Ascendxxxyy请替换为实际的AI处理器型号。

    bash run.sh -r cpu -v Ascendxxxyy
    
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/ascend/ascendc-api-adv.git
git@gitee.com:ascend/ascendc-api-adv.git
ascend
ascendc-api-adv
ascendc-api-adv
v0.8-8.0.0.beta1

搜索帮助