当前位置: 首页 > news >正文

CANN/Ascend C Axpy API文档

Axpy

【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言,原生支持C和C++标准规范,主要由类库和语言扩展层构成,提供多层级API,满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit

产品支持情况

产品

是否支持

Ascend 950PR/Ascend 950DT

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

x

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

x

功能说明

根据mask对输入数据dstReg、srcReg、scalarValue按元素做乘加操作,将结果写入dstReg。计算公式如下:

函数原型

template <typename T = DefaultType, typename U, MaskMergeMode mode = MaskMergeMode::ZEROING, typename S> __simd_callee__ inline void Axpy(S& dstReg, S& srcReg, const U scalarValue, MaskReg& mask)

参数说明

表 1模板参数说明

参数名

描述

T

操作数数据类型。

Ascend 950PR/Ascend 950DT,支持的数据类型为:half/float/uint64_t/int64_t

U

标量源操作数的数据类型。

Ascend 950PR/Ascend 950DT,支持的数据类型为:half/float/uint64_t/int64_t

mode

选择MERGING模式或ZEROING模式。当前仅支持ZEROING模式。

  • ZEROING,mask未筛选的元素在dst中置零。仅支持该模式。

S

目的操作数的RegTensor类型,例如RegTensor<half>,由编译器自动推导,用户不需要填写。

表 2参数说明

参数名

输入/输出

描述

dstReg

输出

目的操作数和源操作数。

类型为RegTensor。

srcReg

输入

源操作数。

类型为RegTensor。

两个源操作数的数据类型需要与目的操作数保持一致。

scalarValue

输入

源操作数。

类型为标量。

两个源操作数的数据类型需要与目的操作数保持一致。

mask

输入

源操作数元素操作的有效指示,详细说明请参考MaskReg。

返回值说明

约束说明

dstReg和srcReg可以为同一个RegTensor。

调用示例

template<typename T, typename U> static __simd_vf__ inline void AxpyVF(__ubuf__ T* dstAddr, __ubuf__ T* srcAddr, U scalarValue, uint32_t count, uint32_t oneRepeatSize, uint16_t repeatTimes) { AscendC::Reg::RegTensor<T> srcReg; AscendC::Reg::RegTensor<T> dstReg; AscendC::Reg::MaskReg mask; for (uint16_t i = 0; i < repeatTimes; i++) { mask = AscendC::Reg::UpdateMask<T>(count); AscendC::Reg::LoadAlign(srcReg, srcAddr + i * oneRepeatSize); AscendC::Reg::LoadAlign(dstReg, dstAddr + i * oneRepeatSize); AscendC::Reg::Axpy(dstReg, srcReg, scalarValue, mask); AscendC::Reg::StoreAlign(dstAddr + i * oneRepeatSize, dstReg, mask); } }

【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言,原生支持C和C++标准规范,主要由类库和语言扩展层构成,提供多层级API,满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit

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

http://www.jsqmd.com/news/782833/

相关文章:

  • CANN堆叠算子接口文档
  • CANN/metadef算子简化键生成
  • PowerShell命令获取电脑sn序列号
  • Taoify 跨境独立站系统:开发者视角下的零代码出海解决方案​
  • Cloudflare Agent Setup:一行指令让 AI Agent 帮你配好整个开发环境
  • JavaScript网盘直链解析技术:跨平台文件传输协议逆向工程实践
  • AI赋能教育:从个性化学习到伦理挑战的实践与思考
  • 2026年新疆票据印刷与热敏收银纸一站式采购完全指南 - 优质企业观察收录
  • 2026年新疆复印纸批发与办公用纸采购完全指南 - 优质企业观察收录
  • CANN/cann-bench:AddRmsNormDynamicQuant算子API描述
  • 在.NET MAUI Blazor中显示本地视频的Android解决方案
  • 长春彩钢围挡公司排行:合规性与周转效率实测对比 - 奔跑123
  • 生成式引擎的“引用黑箱”:AI如何决定你的内容值不值得被推荐?
  • CANN/GE添加图API
  • 爱米优品6年整机全保:以品质与诚信,重塑智能马桶售后新标杆 - 博客万
  • PHOENI2X框架:AI与自动化如何构建下一代网络弹性安全体系
  • 长春地区集装箱安装厂家综合实力排行及实测对比 - 奔跑123
  • 极简生活第一步,先处理掉闲置的沃尔玛购物卡 - 团团收购物卡回收
  • 2026年生成式AI技术前瞻:架构、训练与多模态融合的演进路径
  • 2026年新疆热敏收银纸印刷定制与不干胶标签采购完全指南 - 优质企业观察收录
  • 恒盛通中美物流专线的签收率数据真实可靠吗? - 恒盛通物流
  • 2026年新疆票据印刷与办公用纸采购完全指南:五大品牌深度横评 - 优质企业观察收录
  • CANN/ops-solver安全声明
  • BI 报表覆盖不到的 80% 长尾需求,如何通过 AI 对话解决?
  • 我在上海的奋斗6
  • DownKyi终极教程:3步掌握B站视频下载神器,免费获取高清资源
  • 基于.NET的Windows窗体编程之WinForms列表控件
  • 2026年南京留学中介机构top5零差评深度测评 - 速递信息
  • 2026年新疆不干胶标签印刷及复印纸一站式采购完全指南 - 优质企业观察收录
  • YouTube/长视频都能用!AutoClip AI自动剪视频工具实测:一键生成短视频(免费+完整教程)