cann/ops-blas Sger算子实现
2026/6/1 3:30:55 网站建设 项目流程

Sger算子实现

【免费下载链接】ops-blas本项目是CANN提供的高性能线性代数计算以及轻量化GEMM调用算子库。项目地址: https://gitcode.com/cann/ops-blas

概述

本样例展示aclblasSger在 Ascend 平台上的基本使用流程。

Sger (Rank-1 Update) 实现矩阵的秩-1更新操作,数学表达式为:

A = A + alpha * x * y^T

其中:

  • x:长度为m的列向量
  • y:长度为n的行向量
  • alpha:标量
  • Am x n矩阵

支持的产品

  • Atlas A3 训练系列产品/Atlas A3 推理系列产品
  • Atlas A2 训练系列产品/Atlas A2 推理系列产品

目录结构介绍

├── sger │ ├── CMakeLists.txt // 编译工程文件 │ ├── README.md // 说明文档 │ └── sger_test.cpp // 算子调用样例

算子描述

  • 算子功能: Sger算子实现了秩-1更新操作,将alpha * x * y^T加到矩阵A上。

  • 算子规格:

    算子类型(OpType)Sger
    算子输入nameshapedata typeformat
    xmfloat32ND
    ynfloat32ND
    Am x nfloat32ND
    算子输出Am x nfloat32ND
    核函数名sger
  • 调用实现: 本样例为 Host API 调用示例,使用aclblasSger接口完成算子配置与执行。

编译运行

在本样例根目录下执行如下步骤,编译并执行算子。

  • 配置环境变量 请根据当前环境上 CANN 开发套件包的安装方式,选择对应配置环境变量的命令。

    • 默认路径,root 用户安装 CANN 软件包
source /usr/local/Ascend/cann/set_env.sh
  • 默认路径,非 root 用户安装 CANN 软件包
source $HOME/Ascend/cann/set_env.sh
  • 指定路径 install_path,安装 CANN 软件包
source ${install_path}/cann/set_env.sh
  • 样例执行
bash build.sh --ops=sger --soc=ascend950 --run

执行结果如下,说明精度对比成功。

[Success] Case accuracy verification passed.

【免费下载链接】ops-blas本项目是CANN提供的高性能线性代数计算以及轻量化GEMM调用算子库。项目地址: https://gitcode.com/cann/ops-blas

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

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询