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

CANN/asc-devkit AddRelu算子API

AddRelu【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言原生支持C和C标准规范主要由类库和语言扩展层构成提供多层级API满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit产品支持情况产品是否支持Ascend 950PR/Ascend 950DT√Atlas A3 训练系列产品 / Atlas A3 推理系列产品√Atlas A2 训练系列产品 / Atlas A2 推理系列产品√功能说明按元素求和再进行Relu计算结果和0对比取较大值。计算公式如下函数原型tensor前n个数据计算template typename T __aicore__ inline void AddRelu(const LocalTensorT dst, const LocalTensorT src0, const LocalTensorT src1, const int32_t count)tensor高维切分计算mask逐bit模式template typename T, bool isSetMask true __aicore__ inline void AddRelu(const LocalTensorT dst, const LocalTensorT src0, const LocalTensorT src1, uint64_t mask[], const uint8_t repeatTime, const BinaryRepeatParams repeatParams)mask连续模式template typename T, bool isSetMask true __aicore__ inline void AddRelu(const LocalTensorT dst, const LocalTensorT src0, const LocalTensorT src1, uint64_t mask, const uint8_t repeatTime, const BinaryRepeatParams repeatParams)参数说明表 1模板参数说明参数名描述T操作数数据类型。Ascend 950PR/Ascend 950DT支持的数据类型为int16_t、half、float、int64_t、uint64_tAtlas A3 训练系列产品 / Atlas A3 推理系列产品支持的数据类型为int16_t、half、float。Atlas A2 训练系列产品 / Atlas A2 推理系列产品支持的数据类型为int16_t、half、float。isSetMask是否在接口内部设置mask。true表示在接口内部设置mask。false表示在接口外部设置mask开发者需要使用SetVectorMask接口设置mask值。这种模式下本接口入参中的mask值必须设置为占位符MASK_PLACEHOLDER。表 2接口参数说明参数名输入/输出描述dst输出目的操作数。类型为LocalTensor支持的TPosition为VECIN/VECCALC/VECOUT。LocalTensor的起始地址需要32字节对齐。src0、src1输入源操作数。类型为LocalTensor支持的TPosition为VECIN/VECCALC/VECOUT。LocalTensor的起始地址需要32字节对齐。mask[]/mask输入mask用于控制每次迭代内参与计算的元素。逐bit模式可以按位控制哪些元素参与计算bit位的值为1表示参与计算0表示不参与。mask为数组形式数组长度和数组元素的取值范围和操作数的数据类型有关。当操作数为16位时数组长度为2mask[0]、mask[1]∈[0, 264-1]并且不同时为0当操作数为32位时数组长度为1mask[0]∈(0, 264-1]当操作数为64位时数组长度为1mask[0]∈(0, 232-1]。例如mask[8, 0]80b1000表示仅第4个元素参与计算。连续模式表示前面连续的多少个元素参与计算。取值范围和操作数的数据类型有关数据类型不同每次迭代内能够处理的元素个数最大值不同。当操作数为16位时mask∈[1, 128]当操作数为32位时mask∈[1, 64]当操作数为64位时mask∈[1, 32]。repeatTime输入重复迭代次数。矢量计算单元每次读取连续的256Bytes数据进行计算为完成对输入数据的处理必须通过多次迭代repeat才能完成所有数据的读取与计算。repeatTime表示迭代的次数。repeatParams输入控制操作数地址步长的参数。BinaryRepeatParams类型包含操作数相邻迭代间相同datablock的地址步长操作数同一迭代内不同datablock的地址步长等参数。count输入参与计算的元素个数。返回值说明无约束说明操作数地址对齐要求请参见通用地址对齐约束。操作数地址重叠约束请参考通用地址重叠约束。针对Ascend 950PR/Ascend 950DTuint64_t/int64_t数据类型仅支持tensor前n个数据计算接口。调用示例tensor高维切分计算样例-mask连续模式uint64_t mask 128; // repeatTime 4一次迭代计算128个数共计算512个数 // dstBlkStride, src0BlkStride, src1BlkStride 1单次迭代内数据连续读取和写入 // dstRepStride, src0RepStride, src1RepStride 8相邻迭代间数据连续读取和写入 AscendC::AddRelu(dstLocal, src0Local, src1Local, mask, 4, { 1, 1, 1, 8, 8, 8 });tensor高维切分计算样例-mask逐bit模式uint64_t mask[2] { UINT64_MAX, UINT64_MAX }; // repeatTime 4一次迭代计算128个数共计算512个数 // dstBlkStride, src0BlkStride, src1BlkStride 1单次迭代内数据连续读取和写入 // dstRepStride, src0RepStride, src1RepStride 8相邻迭代间数据连续读取和写入 AscendC::AddRelu(dstLocal, src0Local, src1Local, mask, 4, { 1, 1, 1, 8, 8, 8 });tensor前n个数据计算样例AscendC::AddRelu(dstLocal, src0Local, src1Local, 512);结果示例如下输入数据src0Local[1 -2 3 ... -6] 输入数据src1Local[1 3 -4 ... 5] 输出数据dstLocal[2 1 0 ... 0]【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言原生支持C和C标准规范主要由类库和语言扩展层构成提供多层级API满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关文章:

CANN/asc-devkit AddRelu算子API

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

CANN/Ascend C调试工具集

Ascend C Tools 【免费下载链接】asc-tools Ascend C Tools仓是CANN基于Ascend C编程语言推出的配套调试工具仓。 项目地址: https://gitcode.com/cann/asc-tools 🚀概述 Ascend C Tools是CANN编程语言推出的配套调试工具。借助Ascend C Tools,开…...

无代码AI平台实战:从业务需求到模型部署的完整指南

1. 项目概述:当AI不再是程序员的专属玩具 “AI民主化”这个词最近听得耳朵都快起茧了,但真正落到实处的体验是什么?作为一个在技术和业务之间反复横跳了十多年的老手,我亲眼见证了从“只有博士才能玩转的算法黑箱”到“业务经理自…...

卷积运算:从数学原理到信号处理实战

1. 卷积基础与核心概念在数字信号处理领域,卷积运算堪称"瑞士军刀"般的存在。我第一次接触这个概念是在研究生时期的语音信号处理课上,当时教授用了一个生动的比喻:卷积就像把一杯墨水倒入一盆清水中,观察墨水如何随时间…...

动力锂离子电池SOC与热失控关键参数建模计算【附模型】

✨ 本团队擅长数据搜集与处理、建模仿真、程序设计、仿真代码、EI、SCI写作与指导,毕业论文、期刊论文经验交流。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流,点击《获取方式》 (1)基于RA-TLBO算法的电化学模型参数高效辨识&#xf…...

LNG船双燃料发电机组经济负荷分配与协调控制【附程序】

✨ 本团队擅长数据搜集与处理、建模仿真、程序设计、仿真代码、EI、SCI写作与指导,毕业论文、期刊论文经验交流。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流,点击《获取方式》 (1)基于改进遗传算法的双燃料发动机燃料优化分配&…...

Codex宠物模式上线后,程序员们开始了疯狂整活...(附使用教程)

Codex宠物模式上线后,程序员们开始了疯狂整活… 关键词:Codex宠物模式、petdex宠物网站、Codex自定义宠物、ikun-hoops、Codex pets安装教程 前几天我在更新 Codex 的时候,发现它悄悄上线了一个「宠物模式」。 一开始我以为只是那种简单的桌…...

Codex API登录切换导致会话丢失的解决方案(含工具实践)

Codex API登录切换导致会话丢失的解决方案(含工具实践) 关键词 Codex Desktop API登录、Codex会话丢失、Codex线程不见了、Codex Session Toolkit、ai-cli-kit、会话迁移工具、Codex账号切换、Claude Clean工具、AI CLI工具箱 codex客户端下载地址:htt…...

英雄联盟段位伪装终极指南:3分钟掌握LeaguePrank使用技巧

英雄联盟段位伪装终极指南:3分钟掌握LeaguePrank使用技巧 【免费下载链接】LeaguePrank 项目地址: https://gitcode.com/gh_mirrors/le/LeaguePrank 还在为英雄联盟好友列表上的段位显示而烦恼吗?想要在游戏中展示不一样的自己却不知道如何操作&…...

英雄联盟智能助手Seraphine:如何用5分钟提升你的游戏体验?

英雄联盟智能助手Seraphine:如何用5分钟提升你的游戏体验? 【免费下载链接】Seraphine 英雄联盟战绩查询工具 项目地址: https://gitcode.com/gh_mirrors/se/Seraphine 还在为BP阶段手忙脚乱而烦恼吗?还在手动查询队友对手战绩浪费宝贵…...

百度网盘下载限速终结者:3分钟掌握免费高速下载终极方案

百度网盘下载限速终结者:3分钟掌握免费高速下载终极方案 【免费下载链接】baidu-wangpan-parse 获取百度网盘分享文件的下载地址 项目地址: https://gitcode.com/gh_mirrors/ba/baidu-wangpan-parse 还在为百度网盘那令人抓狂的下载速度而烦恼吗?…...

5分钟深度解锁:ncmdump智能音频转换方案完全指南

5分钟深度解锁:ncmdump智能音频转换方案完全指南 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 你是否曾为下载的网易云音乐NCM格式文件无法在其他设备播放而烦恼?音频格式转换工具ncmdump为你提供了一套完整…...

百度网盘解析工具:3步实现高速下载,告别限速烦恼

百度网盘解析工具:3步实现高速下载,告别限速烦恼 【免费下载链接】baidu-wangpan-parse 获取百度网盘分享文件的下载地址 项目地址: https://gitcode.com/gh_mirrors/ba/baidu-wangpan-parse 你是否曾经为百度网盘的下载速度而烦恼?是…...

从Prompt到系统:揭秘Agent开发的核心与分层实战策略

文章深入探讨了智能体(Agent)开发的核心概念与实现策略。首先定义了Agent作为以大模型为核心,结合记忆、工具、工作流等能力的系统,强调了其任务闭环特性。文章进一步解析了Agent的三个层级(L0-L3)及其特点…...

AgenticVision:为AI智能体构建持久视觉记忆的开源系统

1. 项目概述:为AI智能体赋予持久的视觉记忆如果你用过Claude Desktop、Cursor或者Windsurf这类AI编程助手,肯定遇到过这样的场景:你让AI帮你分析一个网页布局,它截了张图,给出了分析,然后……就没有然后了。…...

36《STM32 标准库实现 CAN 总线收发实战例程》

STM32 标准库实现 CAN 总线收发实战例程(001):CAN总线基础与STM32 CAN外设概述 写在前面:一次深夜的CAN调试翻车 凌晨两点,示波器探头夹着CAN_H和CAN_L,屏幕上本该出现的显性隐性波形变成了一团乱麻。板子上的STM32F103已经连续发了三小时数据,对面电机驱动器就是不理…...

腾讯AppAgent:基于视觉的移动端AI自动化测试与智能交互实战

1. 项目概述:一个能“看”会“点”的智能体 最近在探索移动端自动化测试和智能交互时,我遇到了一个非常有意思的开源项目——来自腾讯QQGYLab的AppAgent。简单来说,这是一个能“看懂”手机屏幕,并像真人一样通过“点击”、“滑动…...

边缘AI能否跟上模型演进的步伐?

模型开发速度已超越芯片设计周期,边缘AI架构必须将适应性放在首位。模型更新的频率高度依赖具体应用场景,并与产品生命周期和运营风险密切相关。适应性往往与功耗、性能和面积目标相冲突,因此有效的异构架构和完善的软件/编译器工具链至关重要…...

Quaid:为AI智能体构建持久记忆层,解决上下文遗忘难题

1. 项目概述:为AI智能体构建持久记忆层如果你和我一样,深度依赖AI编程助手来完成日常开发工作,那么你一定遇到过这个令人头疼的场景:你花了大半个小时,向助手详细解释了当前项目的架构、你个人的编码偏好、刚刚修复的那…...

Blender 3MF插件完整指南:如何在Blender中直接处理3D打印文件

Blender 3MF插件完整指南:如何在Blender中直接处理3D打印文件 【免费下载链接】Blender3mfFormat Blender add-on to import/export 3MF files 项目地址: https://gitcode.com/gh_mirrors/bl/Blender3mfFormat 你是否厌倦了在Blender和3D打印软件之间来回切换…...

NeuroRebuild™神经重构技术白皮书——赋能港口动态目标全维度空间还原

NeuroRebuild™神经重构技术白皮书——赋能港口动态目标全维度空间还原 副标题:突破遮挡、弱光感知瓶颈,树立智慧港口复杂场景智能感知新标杆 前言 港口作为高动态、强遮挡、多干扰的复杂作业场景,人员、集卡、AGV、集装箱、船舶等目标…...

Windows右键菜单管理终极指南:ContextMenuManager高效解决方案

Windows右键菜单管理终极指南:ContextMenuManager高效解决方案 【免费下载链接】ContextMenuManager 🖱️ 纯粹的Windows右键菜单管理程序 项目地址: https://gitcode.com/gh_mirrors/co/ContextMenuManager 你是否曾被Windows右键菜单中数十个杂…...

DownKyi终极指南:5步掌握B站视频批量下载与高清保存技巧

DownKyi终极指南:5步掌握B站视频批量下载与高清保存技巧 【免费下载链接】downkyi 哔哩下载姬downkyi,哔哩哔哩网站视频下载工具,支持批量下载,支持8K、HDR、杜比视界,提供工具箱(音视频提取、去水印等&…...

3分钟上手G-Helper:释放华硕笔记本潜能的轻量级神器

3分钟上手G-Helper:释放华硕笔记本潜能的轻量级神器 【免费下载链接】g-helper Lightweight Armoury Crate alternative for Asus laptops with nearly the same functionality. Works with ROG Zephyrus, Flow, TUF, Strix, Scar, ProArt, Vivobook, Zenbook, Expe…...

AIDD开源框架harness:模块化设计加速AI药物发现全流程

1. 项目概述:当药物研发遇上AI,一个开源框架的诞生在生物医药领域,药物研发一直是一项周期漫长、成本高昂且充满不确定性的“探险”。从靶点发现到最终上市,平均需要超过10年时间和数十亿美元的投入,而失败率却高得惊人…...

基于Vue 3与File System API构建本地Markdown知识库管理器

1. 项目概述:一个Markdown文件管理器的诞生如果你和我一样,是一个重度依赖Markdown来记录工作、整理知识、撰写文档的开发者或内容创作者,那么你一定遇到过这样的困境:随着时间推移,电脑里散落着成百上千个.md文件。它…...

3步实现高效B站视频转文字的智能解决方案

3步实现高效B站视频转文字的智能解决方案 【免费下载链接】bili2text Bilibili视频转文字,一步到位,输入链接即可使用 项目地址: https://gitcode.com/gh_mirrors/bi/bili2text 在信息爆炸的时代,视频已成为知识传播的主流媒介。B站作…...

当音乐挣脱枷锁:用ncmToMp3重获你的音乐主权

当音乐挣脱枷锁:用ncmToMp3重获你的音乐主权 【免费下载链接】ncmToMp3 网易云vip的ncm文件转mp3/flac - ncm file to mp3 or flac 项目地址: https://gitcode.com/gh_mirrors/nc/ncmToMp3 你是否曾为网易云VIP下载的NCM加密音乐文件而烦恼?它们被…...

解决Conda环境创建中的下载超时问题

引言 在使用Bash脚本创建Conda环境时,经常会遇到下载超时的问题,特别是当你需要下载大量包或者网络连接不稳定时。这种问题不仅影响开发效率,还可能导致整个项目进展的延迟。今天,我们将探讨如何解决这种问题,并通过实…...

Ruby on Rails的魔法:理解redirect_to的奥秘

在Ruby on Rails框架中,redirect_to是开发者常用的一个方法,它能够实现页面重定向,帮助用户在操作后导航到新的页面或资源。然而,对于初学者来说,这个方法似乎带着一丝“魔法”,特别是当我们看到如redirect_to @article这样的代码时。这篇博客将详细探讨Rails中redirect_…...