news 2026/5/9 12:11:51

CANN/opbase设置输出张量地址API

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CANN/opbase设置输出张量地址API

aclSetOutputTensorAddr

【免费下载链接】opbase本项目是CANN算子库的基础框架库,为算子提供公共依赖文件和基础调度能力。项目地址: https://gitcode.com/cann/opbase

功能说明

通过aclSetAclOpExecutorRepeatable使能aclOpExecutor可复用后,若输出Device内存地址变更,需要刷新输出aclTensor中记录的Device内存地址。

函数原型

aclnnStatus aclSetOutputTensorAddr(aclOpExecutor *executor, const size_t index, aclTensor *tensor, void *addr)

参数说明

参数名输入/输出说明
executor输入设置为复用状态的aclOpExecutor。
index输入待刷新的输出aclTensor的索引,取值范围是[0, 所有输出tensor的总数-1]。
tensor输入待刷新的aclTensor指针。
addr输入需要刷新到指定aclTensor中记录的Device存储地址,该地址必须32字节对齐,否则可能会出现未定义错误。

返回值说明

返回0表示成功,返回其他值表示失败,返回码列表参见公共接口返回码。

可能失败的原因:

  • 返回561103:executor或tensor是空指针。
  • 返回161002:index取值越界。
  • 返回161002:第一次执行一阶段接口aclxxXxxGetWorkspaceSize时传入的aclTensor是nullptr,不再支持刷新地址。

约束说明

调用示例

关键代码示例如下,仅供参考,不支持直接拷贝运行。

// 创建输入和输出的aclTensor和aclTensorList std::vector<int64_t> shape = {1, 2, 3}; aclTensor tensor1 = aclCreateTensor(shape.data(), shape.size(), aclDataType::ACL_FLOAT, nullptr, 0, aclFormat::ACL_FORMAT_ND, shape.data(), shape.size(), nullptr); aclTensor tensor2 = aclCreateTensor(shape.data(), shape.size(), aclDataType::ACL_FLOAT, nullptr, 0, aclFormat::ACL_FORMAT_ND, shape.data(), shape.size(), nullptr); aclTensor tensor3 = aclCreateTensor(shape.data(), shape.size(), aclDataType::ACL_FLOAT, nullptr, 0, aclFormat::ACL_FORMAT_ND, shape.data(), shape.size(), nullptr); aclTensor tensor4= aclCreateTensor(shape.data(), shape.size(), aclDataType::ACL_FLOAT, nullptr, 0, aclFormat::ACL_FORMAT_ND, shape.data(), shape.size(), nullptr); aclTensor output= aclCreateTensor(shape.data(), shape.size(), aclDataType::ACL_FLOAT, nullptr, 0, aclFormat::ACL_FORMAT_ND, shape.data(), shape.size(), nullptr); aclTensor *list[] = {tensor3, tensor4}; auto tensorList = aclCreateTensorList(list, 2); uint64_t workspaceSize = 0; aclOpExecutor *executor; // AddCustom算子有两个输入(aclTensor),两个输出(aclTensor和aclTensorList) // 调用第1段接口 aclnnAddCustomGetWorkspaceSize(tensor1, tensor2, output, tensorList, &workspaceSize, &executor); // 设置executor为可复用 aclSetAclOpExecutorRepeatable(executor); void *addr; aclSetOutputTensorAddr(executor, 0, output, addr); // 刷新输出aclTensor的device地址 aclSetOutputTensorAddr(executor, 1, output, addr); // 刷新输出tensorList中第一个aclTensor的device地址 aclSetOutputTensorAddr(executor, 2, output, addr); // 刷新输出tensorList中第二个aclTensor的device地址 ... // 调用第2段接口 aclnnAddCustom(workspace, workspaceSize, executor, stream); // 清理executor aclDestroyAclOpExecutor(executor);

【免费下载链接】opbase本项目是CANN算子库的基础框架库,为算子提供公共依赖文件和基础调度能力。项目地址: https://gitcode.com/cann/opbase

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

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

CANN/cannbot-skills工具编写指南

Tool Authoring Playbook 【免费下载链接】cannbot-skills CANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体&#xff0c;本仓库为其提供可复用的 Skills 模块。 项目地址: https://gitcode.com/cann/cannbot-skills Use this playbook when adding or modifyin…

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

CANN/ops-nn LogSigmoid梯度算子

LogSigmoidGrad 【免费下载链接】ops-nn 本项目是CANN提供的神经网络类计算算子库&#xff0c;实现网络在NPU上加速计算。 项目地址: https://gitcode.com/cann/ops-nn 产品支持情况 产品是否支持Ascend 950PR/Ascend 950DT√Atlas A3 训练系列产品/Atlas A3 推理系列产…

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

CANN/cannbot-skills Attention-Only模板

Attention-Only Scope 模板 【免费下载链接】cannbot-skills CANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体&#xff0c;本仓库为其提供可复用的 Skills 模块。 项目地址: https://gitcode.com/cann/cannbot-skills 本模板提供仅将 Attention 模块纳入 Super…

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

指针学习笔记

一、指针的定义1.本质指针&#xff0c;就是存储地址值的变量。&#xff08;我们设计一个地址类型的变量&#xff0c;用来存放其他变量的内存地址&#xff09;2.指针的大小1.指针占多少字节取决于CPU架构&#xff1a;x86架构&#xff08;32位&#xff09;&#xff1a;指针大小为…

作者头像 李华
网站建设 2026/5/9 11:58:33

无车位线智能车辆泊车路径规划与跟踪控制方法【附仿真】

✨ 本团队擅长数据搜集与处理、建模仿真、程序设计、仿真代码、EI、SCI写作与指导&#xff0c;毕业论文、期刊论文经验交流。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流&#xff0c;可以私信&#xff0c;或者点击《获取方式》 &#xff08;1&#xff09;自适应椭圆采样域与势场引…

作者头像 李华
网站建设 2026/5/9 11:58:32

交通信号灯配时指数交叉差分进化优化算法【附代码】

✨ 本团队擅长数据搜集与处理、建模仿真、程序设计、仿真代码、EI、SCI写作与指导&#xff0c;毕业论文、期刊论文经验交流。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流&#xff0c;可以私信&#xff0c;或者点击《获取方式》 &#xff08;1&#xff09;分段指数交叉机制与交叉率…

作者头像 李华