cann/sip AsumOperation示例

📅 2026/7/4 15:56:04 👁️ 阅读次数 📝 编程学习
cann/sip AsumOperation示例

信号处理加速库AsumOperation C++ Demo

【免费下载链接】sip本项目是CANN提供的一款高效、可靠的高性能信号处理算子加速库,基于华为Ascend AI处理器,专门为信号处理领域而设计。项目地址: https://gitcode.com/cann/sip

介绍

该目录下为信号处理加速库AsumOperation C++调用示例。

功能说明

  • 算子功能:对输入的所有元素取绝对值后求和。
  • 计算公式:
    • Sasum(单精度绝对值求和)的计算公式 $$\text{result} = \sum_{i=0}^{n-1} |x_i|$$
    • Scasum(复数绝对值求和)的计算公式 $$\text{result} = \sum_{i=0}^{n-1} (|\text{Re}(x_i)| + |\text{Im}(x_i)|)$$

使用说明

环境配置

  • 配置CANN环境变量

    source [CANN安装路径]/set_env.sh

    默认:source /usr/local/Ascend/ascend-toolkit/set_env.sh

SiP编译

  • 用户应进入SiP根目录,执行如下指令进行信号处理加速库的编译,并设置加速库环境变量。

    cd ${SiP_root_path} bash build.sh source output/set_env.sh

    特别说明:

    • 上述编译方式仅支持编译通过git下载的加速库,以zip压缩包方式下载的加速库不支持该编译方式;
    • 由于编译过程需要联网下载依赖库,因此编译环境需要联网;
    • 该编译过程包括获取ascend-boost-comm(昇腾分布式通信加速库)组件并编译该组件,和编译信号加速库两个步骤。更多命令介绍可查看SiP仓库build.sh文件。
  • 更多编译命令说明请参考编译与构建

运行demo

  • 进入example目录并执行构建脚本。

    cd ${示例所在目录} bash build.sh

额外说明

示例中生成的数据不代表实际场景,可根据具体使用场景进行数据修改。

产品支持情况

适用于Atlas A2/A3 训练系列产品、Atlas 800I A2 推理产品、Atlas A3 推理系列产品。

场景说明

提供示例代码分别对应不同场景,编译运行时需要根据具体场景对应更改build脚本:

  • example_sasum.cpp

    【注】:默认编译脚本可编译运行该示例。

    输入

    TensorNameDataTypeDataFormatShape
    xfloat32nd[n]

  • example_scasum.cpp

    【注】:将编译脚本中的 example_sasum.cpp 替换为 example_scasum.cpp 后,替换后的编译脚本可编译运行。

    输入

    TensorNameDataTypeDataFormatShape
    xcomplex64nd[n]

【免费下载链接】sip本项目是CANN提供的一款高效、可靠的高性能信号处理算子加速库,基于华为Ascend AI处理器,专门为信号处理领域而设计。项目地址: https://gitcode.com/cann/sip

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考