news 2026/5/9 12:38:48

CANN/atvoss加法运算符API文档

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CANN/atvoss加法运算符API文档

Add

【免费下载链接】atvossATVOSS(Ascend C Templates for Vector Operator Subroutines)是一套基于Ascend C开发的Vector算子库,致力于为昇腾硬件上的Vector类融合算子提供极简、高效、高性能、高拓展的编程方式。项目地址: https://gitcode.com/cann/atvoss

功能说明

加法运算,支持张量+张量,张量+标量,标量+张量。

所属头文件链接

/include/operators/math_expression.h

函数原型

template<typename T, typename U> struct OpAdd : BinaryOp<T, U> template<typename T, typename U> __host_aicore__ constexpr auto operator+(Expression<T> lhs, Expression<U> rhs) template<typename T, typename U> __host_aicore__ constexpr auto operator+(Expression<T> lhs, U &&rhs) template<typename T, typename U> __host_aicore__ constexpr auto operator+(T &&lhs, Expression<U> rhs)

参数说明

参数名称参数类型输入/输出数据类型参数说明默认值
T模板参数输入NA加法左操作数数据类型NA
U模板参数输入NA加法右操作数数据类型NA
lhs函数形参输入NA加法左操作数,当类型是Expression<T>时,是张量,当类型是T时,是标量NA
rhs函数形参输入NA加法右操作数,当类型是Expression<U>时,是张量,当类型是U时,是标量NA

返回值说明

返回值数据类型返回值说明
Expression >返回一个OpAdd的表达式

约束说明

不支持广播

使用示例

template <typename InputDtype, typename OutputDtype> struct Config { struct Compute { template <template <typename> class Tensor> __host_aicore__ constexpr auto Compute() const { auto in1 = Atvoss::PlaceHolder<1, Tensor<InputDtype>, Atvoss::ParamUsage::IN>(); auto in2 = Atvoss::PlaceHolder<2, Tensor<InputDtype>, Atvoss::ParamUsage::IN>(); auto out = Atvoss::PlaceHolder<3, Tensor<OutputDtype>, Atvoss::ParamUsage::OUT>(); // 🔥🔥🔥 使用示例 🔥🔥🔥 return (out = in1 + in2); // 🔥🔥🔥 使用示例 🔥🔥🔥 }; }; }; template <typename InputDtype, typename OutputDtype> struct Config { struct Compute { template <template <typename> class Tensor> __host_aicore__ constexpr auto Compute() const { auto in = Atvoss::PlaceHolder<1, Tensor<InputDtype>, Atvoss::ParamUsage::IN>(); auto scalar = Atvoss::PlaceHolder<2, InputDtype, Atvoss::ParamUsage::IN>(); auto out = Atvoss::PlaceHolder<3, Tensor<OutputDtype>, Atvoss::ParamUsage::OUT>(); // 🔥🔥🔥 使用示例 🔥🔥🔥 return (out = in + scalar); // 🔥🔥🔥 使用示例 🔥🔥🔥 }; }; }; template <typename InputDtype, typename OutputDtype> struct Config { struct Compute { template <template <typename> class Tensor> __host_aicore__ constexpr auto Compute() const { auto in = Atvoss::PlaceHolder<1, Tensor<InputDtype>, Atvoss::ParamUsage::IN>(); auto scalar = Atvoss::PlaceHolder<2, InputDtype, Atvoss::ParamUsage::IN>(); auto out = Atvoss::PlaceHolder<3, Tensor<OutputDtype>, Atvoss::ParamUsage::OUT>(); // 🔥🔥🔥 使用示例 🔥🔥🔥 return (out = scalar + in); // 🔥🔥🔥 使用示例 🔥🔥🔥 }; }; };

【免费下载链接】atvossATVOSS(Ascend C Templates for Vector Operator Subroutines)是一套基于Ascend C开发的Vector算子库,致力于为昇腾硬件上的Vector类融合算子提供极简、高效、高性能、高拓展的编程方式。项目地址: https://gitcode.com/cann/atvoss

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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/9 12:37:54

Obsidian 同步插件推荐:Nutstore Sync 使用详解

1. 你为什么需要 Nutstore Sync&#xff1f; Obsidian 的笔记本质是“本地文件夹&#xff08;Vault&#xff09;”&#xff0c;优点是自由、可控&#xff1b;难点是&#xff1a;多设备同步。很多新手会遇到&#xff1a; 官方同步订阅成本较高自己配 WebDAV 容易出错&#xff…

作者头像 李华
网站建设 2026/5/9 12:30:27

别把 SFT 里的 `packing` 当成白捡吞吐的开关:TRL 里 `bfd`、`bfd_split`、`wrapped` 真正卖掉的不是同一种东西

别把 SFT 里的 packing 当成白捡吞吐的开关:TRL 里 bfd、bfd_split、wrapped 真正卖掉的不是同一种东西 很多人做 SFT 时,一看到 packing=True 就会把它理解成“把 padding 浪费收回来,几乎没有副作用”。但我把 TRL 现在的实现、警告和一个最小模拟实验放在一起看后,结论…

作者头像 李华
网站建设 2026/5/9 12:29:16

CANN元数据定义执行结果生成上下文API

ExeResGenerationContext 【免费下载链接】metadef Ascend Metadata Definition 项目地址: https://gitcode.com/cann/metadef 简介 GetExecuteMode IsConstInput GetInputShape GetOutputShape SetAttachedStreamInfos GetAttachedStreamInfos GetStreamId SetS…

作者头像 李华
网站建设 2026/5/9 12:24:35

完整指南:在macOS上快速解锁QQ音乐加密文件的终极解决方案

完整指南&#xff1a;在macOS上快速解锁QQ音乐加密文件的终极解决方案 【免费下载链接】QMCDecode QQ音乐QMC格式转换为普通格式(qmcflac转flac&#xff0c;qmc0,qmc3转mp3, mflac,mflac0等转flac)&#xff0c;仅支持macOS&#xff0c;可自动识别到QQ音乐下载目录&#xff0c;默…

作者头像 李华
网站建设 2026/5/9 12:13:22

基于SHAP与XAI的3D打印工艺参数优化:从黑箱预测到可解释洞察

1. 项目概述&#xff1a;从“试错”到“可解释”的3D打印工艺优化在3D打印领域&#xff0c;尤其是熔融沉积成型&#xff08;FDM&#xff09;这类普及型技术中&#xff0c;工艺参数的调整一直是个“玄学”与“科学”并存的环节。打印温度、层高、填充密度、打印速度……这些参数…

作者头像 李华
网站建设 2026/5/9 12:12:47

CANN/PTO-ISA 信号同步指令详解

信号同步指令详解&#xff08;TNOTIFY / TWAIT / TTEST&#xff09; 【免费下载链接】pto-isa Parallel Tile Operation (PTO) is a virtual instruction set architecture designed by Ascend CANN, focusing on tile-level operations. This repository offers high-performa…

作者头像 李华