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

CANN/runtime算子信息订阅API

# 19-03 订阅算子信息【免费下载链接】runtime本项目提供CANN运行时组件和维测功能组件。项目地址: https://gitcode.com/cann/runtime本章节描述算子信息订阅接口用于订阅模型中算子的执行信息类型、名称、耗时等。aclError aclprofModelSubscribe(uint32_t modelId, const aclprofSubscribeConfig *profSubscribeConfig)网络场景下订阅算子的基本信息包括算子名称、算子类型、算子执行耗时等。aclError aclprofModelUnSubscribe(uint32_t modelId)网络场景下取消订阅算子的基本信息包括算子名称、算子类型、算子执行耗时等。aclError aclprofGetOpDescSize(size_t *opDescSize)获取单个算子数据结构的大小单位为Byte。当前版本中约定每个算子数据结构的大小是一样的。aclError aclprofGetOpNum(const void *opInfo, size_t opInfoLen, uint32_t *opNumber)获取指定内存中算子的数量。aclError aclprofGetOpTypeLen(const void *opInfo, size_t opInfoLen, uint32_t index, size_t *opTypeLen)获取算子类型的字符串长度用于内存申请。aclError aclprofGetOpType(const void *opInfo, size_t opInfoLen, uint32_t index, char *opType, size_t opTypeLen)获取指定算子的算子类型名称。aclError aclprofGetOpNameLen(const void *opInfo, size_t opInfoLen, uint32_t index, size_t *opNameLen)获取算子名称的字符串长度用于内存申请。aclError aclprofGetOpName(const void *opInfo, size_t opInfoLen, uint32_t index, char *opName, size_t opNameLen)获取指定算子的算子名称。uint64_t aclprofGetOpStart(const void *opInfo, size_t opInfoLen, uint32_t index)获取算子执行的开始时间单位为ns。uint64_t aclprofGetOpEnd(const void *opInfo, size_t opInfoLen, uint32_t index)获取算子执行的结束时间单位为ns。uint64_t aclprofGetOpDuration(const void *opInfo, size_t opInfoLen, uint32_t index)获取算子执行的耗时时间单位为ns。size_t aclprofGetModelId(const void *opInfo, size_t opInfoLen, uint32_t index)获取指定算子所在模型的ID。订阅接口使用说明总体约束不能与Profiling数据采集接口的接口交叉调用aclprofModelSubscribe接口和aclprofModelUnSubscribe接口之间不能调用aclprofInit接口、aclprofStart接口、aclprofStop接口和aclprofFinalize接口。接口约束说明接口调用要求aclprofModelSubscribe接口在模型执行之前调用若在模型执行过程中调用aclprofModelSubscribe接口Profiling采集到的数据为调用aclprofModelSubscribe接口之后的数据可能导致数据不完整。aclprofModelSubscribe接口需与aclprofModelUnSubscribe接口配对使用不能在调用aclprofModelUnSubscribe接口前多次调用aclprofModelSubscribe接口重复订阅相同的模型。不能调用aclprofModelSubscribe接口订阅不存在的模型ID。不能调用aclprofModelUnSubscribe接口取消订阅不存在的模型ID或未订阅过的模型ID。如果在同一个Device上加载了多个模型只能对多个模型下发同样的订阅配置。接口调用顺序建议的接口调用顺序如下模型加载--aclprofModelSubscribe接口--aclprofGetOpDescSize接口--aclprofGetOpNum接口--aclprofGetOpType/aclprofGetOpName/aclprofGetOpStart/aclprofGetOpEnd/aclprofGetOpDuration/aclprofGetModelId接口--aclprofModelUnSubscribe接口错误的接口调用顺序示例如下以重复定义同一个模型为例模型1加载--aclprofModelSubscribe接口(指定模型1)--aclprofModelSubscribe接口(指定模型1)--aclprofModelUnSubscribe接口aclprofModelSubscribeaclError aclprofModelSubscribe(uint32_t modelId, const aclprofSubscribeConfig *profSubscribeConfig)产品支持情况产品是否支持Ascend 950PR/Ascend 950DT√Atlas A3 训练系列产品/Atlas A3 推理系列产品√Atlas A2 训练系列产品/Atlas A2 推理系列产品√功能说明网络场景下订阅算子的基本信息包括算子名称、算子类型、算子执行耗时等。参数说明参数名输入/输出说明modelId输入待订阅的网络模型的ID。调用aclmdlLoadFromFile接口/aclmdlLoadFromMem接口/aclmdlLoadFromFileWithMem接口/aclmdlLoadFromMemWithMem接口加载模型成功后会返回模型ID。类型定义请参见aclprofSubscribeConfig。profSubscribeConfig输入待订阅的配置信息。需提前调用aclprofCreateSubscribeConfig接口创建aclprofSubscribeConfig类型的数据。返回值说明返回0表示成功返回其他值表示失败请参见aclError。约束说明与aclprofModelUnSubscribe接口配对使用。aclprofModelUnSubscribeaclError aclprofModelUnSubscribe(uint32_t modelId)产品支持情况产品是否支持Ascend 950PR/Ascend 950DT√Atlas A3 训练系列产品/Atlas A3 推理系列产品√Atlas A2 训练系列产品/Atlas A2 推理系列产品√功能说明网络场景下取消订阅算子的基本信息包括算子名称、算子类型、算子执行耗时等。参数说明参数名输入/输出说明modelId输入已订阅的模型的ID。返回值说明返回0表示成功返回其他值表示失败请参见aclError。约束说明与aclprofModelSubscribe接口配对使用。aclprofGetOpDescSizeaclError aclprofGetOpDescSize(size_t *opDescSize)产品支持情况产品是否支持Ascend 950PR/Ascend 950DT√Atlas A3 训练系列产品/Atlas A3 推理系列产品√Atlas A2 训练系列产品/Atlas A2 推理系列产品√功能说明获取单个算子数据结构的大小单位为Byte。当前版本中约定每个算子数据结构的大小是一样的。建议用户新建一个线程在新线程内调用该接口否则可能阻塞主线程中的其它任务调度。参数说明参数名输入/输出说明opDescSize输出算子数据结构的大小。返回值说明返回0表示成功返回其他值表示失败请参见aclError。aclprofGetOpNumaclError aclprofGetOpNum(const void *opInfo, size_t opInfoLen, uint32_t *opNumber)产品支持情况产品是否支持Ascend 950PR/Ascend 950DT√Atlas A3 训练系列产品/Atlas A3 推理系列产品√Atlas A2 训练系列产品/Atlas A2 推理系列产品√功能说明获取指定内存中算子的数量。建议用户新建一个线程在新线程内调用该接口否则可能阻塞主线程中的其它任务调度。参数说明参数名输入/输出说明opInfo输入指定算子信息的内存地址。调用aclprofGetOpDescSize接口获取到单个算子数据结构的大小后用户需按照“单个算子数据结构的大小*整数系数”得到的数值申请内存用于存放Profiling采集到的算子信息数据作为本接口的输入。opInfoLen输入算子信息的长度。opNumber输出算子的数量。返回值说明返回0表示成功返回其他值表示失败请参见aclError。aclprofGetOpTypeLenaclError aclprofGetOpTypeLen(const void *opInfo, size_t opInfoLen, uint32_t index, size_t *opTypeLen)产品支持情况产品是否支持Ascend 950PR/Ascend 950DT√Atlas A3 训练系列产品/Atlas A3 推理系列产品√Atlas A2 训练系列产品/Atlas A2 推理系列产品√功能说明获取算子类型的字符串长度用于内存申请。建议用户新建一个线程在新线程内调用该接口否则可能阻塞主线程中的其它任务调度。参数说明参数名输入/输出说明opInfo输入包含算子信息的地址。opInfoLen输入算子信息的长度。index输入指定获取第几个算子的算子类型名称。用户调用aclprofGetOpNum接口获取算子数量后这个index的取值范围[0, (算子数量-1)]。opTypeLen输出opType的长度。返回值说明返回0表示成功返回其他值表示失败请参见aclError。aclprofGetOpTypeaclError aclprofGetOpType(const void *opInfo, size_t opInfoLen, uint32_t index, char *opType, size_t opTypeLen)产品支持情况产品是否支持Ascend 950PR/Ascend 950DT√Atlas A3 训练系列产品/Atlas A3 推理系列产品√Atlas A2 训练系列产品/Atlas A2 推理系列产品√功能说明获取指定算子的算子类型名称。建议用户新建一个线程在新线程内调用该接口否则可能阻塞主线程中的其它任务调度。参数说明参数名输入/输出说明opInfo输入包含算子信息的地址。opInfoLen输入算子信息的长度。index输入指定获取第几个算子的算子类型名称。用户调用aclprofGetOpNum接口获取算子数量后这个index的取值范围[0, (算子数量-1)]。opType输出算子类型名称。opTypeLen输入opType的实际内存申请长度。取值范围建议不小于aclprofGetOpTypeLen否则内容会有截断。返回值说明返回0表示成功返回其他值表示失败请参见aclError。aclprofGetOpNameLenaclError aclprofGetOpNameLen(const void *opInfo, size_t opInfoLen, uint32_t index, size_t *opNameLen)产品支持情况产品是否支持Ascend 950PR/Ascend 950DT√Atlas A3 训练系列产品/Atlas A3 推理系列产品√Atlas A2 训练系列产品/Atlas A2 推理系列产品√功能说明获取算子名称的字符串长度用于内存申请。建议用户新建一个线程在新线程内调用该接口否则可能阻塞主线程中的其它任务调度。参数说明参数名输入/输出说明opInfo输入包含算子信息的地址。opInfoLen输入算子信息的长度。index输入指定获取第几个算子的算子名称长度。用户调用aclprofGetOpNum接口获取算子数量后这个index的取值范围[0, (算子数量-1)]。opNameLen输出opName的实际内存申请长度。返回值说明返回0表示成功返回其他值表示失败请参见aclError。aclprofGetOpNameaclError aclprofGetOpName(const void *opInfo, size_t opInfoLen, uint32_t index, char *opName, size_t opNameLen)产品支持情况产品是否支持Ascend 950PR/Ascend 950DT√Atlas A3 训练系列产品/Atlas A3 推理系列产品√Atlas A2 训练系列产品/Atlas A2 推理系列产品√功能说明获取指定算子的算子名称。建议用户新建一个线程在新线程内调用该接口否则可能阻塞主线程中的其它任务调度。参数说明参数名输入/输出说明opInfo输入包含算子信息的地址。opInfoLen输入算子信息的长度。index输入指定获取第几个算子的算子名称。用户调用aclprofGetOpNum接口获取算子数量后这个index的取值范围[0, (算子数量-1)]。opName输出算子名称。opNameLen输入opName的实际内存申请长度。取值范围建议不小于aclprofGetOpNameLen否则内容会有截断。返回值说明返回0表示成功返回其他值表示失败请参见aclError。aclprofGetOpStartuint64_t aclprofGetOpStart(const void *opInfo, size_t opInfoLen, uint32_t index)产品支持情况产品是否支持Ascend 950PR/Ascend 950DT√Atlas A3 训练系列产品/Atlas A3 推理系列产品√Atlas A2 训练系列产品/Atlas A2 推理系列产品√功能说明获取算子执行的开始时间单位为ns。建议用户新建一个线程在新线程内调用该接口否则可能阻塞主线程中的其它任务调度。参数说明参数名输入/输出说明opInfo输入包含算子信息的地址。opInfoLen输入算子信息的长度。index输入指定获取第几个算子执行的开始时间。用户调用aclprofGetOpNum接口获取算子数量后这个index的取值范围[0, (算子数量-1)]。返回值说明算子执行的开始时间。aclprofGetOpEnduint64_t aclprofGetOpEnd(const void *opInfo, size_t opInfoLen, uint32_t index)产品支持情况产品是否支持Ascend 950PR/Ascend 950DT√Atlas A3 训练系列产品/Atlas A3 推理系列产品√Atlas A2 训练系列产品/Atlas A2 推理系列产品√功能说明获取算子执行的结束时间单位为ns。建议用户新建一个线程在新线程内调用该接口否则可能阻塞主线程中的其它任务调度。参数说明参数名输入/输出说明opInfo输入包含算子信息的地址。opInfoLen输入算子信息的长度。index输入指定获取第几个算子执行的结束时间。用户调用aclprofGetOpNum接口获取算子数量后这个index的取值范围[0, (算子数量-1)]。返回值说明算子执行结束时间。aclprofGetOpDurationuint64_t aclprofGetOpDuration(const void *opInfo, size_t opInfoLen, uint32_t index)产品支持情况产品是否支持Ascend 950PR/Ascend 950DT√Atlas A3 训练系列产品/Atlas A3 推理系列产品√Atlas A2 训练系列产品/Atlas A2 推理系列产品√功能说明获取算子执行的耗时时间单位为ns。建议用户新建一个线程在新线程内调用该接口否则可能阻塞主线程中的其它任务调度。参数说明参数名输入/输出说明opInfo输入包含算子信息的地址。opInfoLen输入算子信息的长度。index输入指定获取第几个算子执行的耗时时间。用户调用aclprofGetOpNum接口获取算子数量后这个index的取值范围[0, (算子数量-1)]。返回值说明算子执行的耗时时间。aclprofGetModelIdsize_t aclprofGetModelId(const void *opInfo, size_t opInfoLen, uint32_t index)产品支持情况产品是否支持Ascend 950PR/Ascend 950DT√Atlas A3 训练系列产品/Atlas A3 推理系列产品√Atlas A2 训练系列产品/Atlas A2 推理系列产品√功能说明获取指定算子所在模型的ID。建议用户新建一个线程在新线程内调用该接口否则可能阻塞主线程中的其它任务调度。参数说明参数名输入/输出说明opInfo输入包含算子信息的地址。opInfoLen输入算子信息的长度。index输入指定获取第几个算子所在模型的ID。用户调用aclprofGetOpNum接口获取算子数量后这个index的取值范围[0, (算子数量-1)]。返回值说明模型的ID。【免费下载链接】runtime本项目提供CANN运行时组件和维测功能组件。项目地址: https://gitcode.com/cann/runtime创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关文章:

CANN/runtime算子信息订阅API

# 19-03 订阅算子信息 【免费下载链接】runtime 本项目提供CANN运行时组件和维测功能组件。 项目地址: https://gitcode.com/cann/runtime 本章节描述算子信息订阅接口,用于订阅模型中算子的执行信息(类型、名称、耗时等)…...

CANN/runtime多Stream同步示例

2_multi_stream 【免费下载链接】runtime 本项目提供CANN运行时组件和维测功能组件。 项目地址: https://gitcode.com/cann/runtime 描述 本样例展示了多个Stream之间流间任务同步功能。 产品支持情况 本样例支持以下产品: 产品是否支持Atlas A3 训练系列…...

AI时代知识工作者的创造力重塑:从复用、随机性到形式与内容的边界

1. 项目概述:当知识工作遇上AI,创造力如何被重新定义?最近和不少做内容、做产品、做策略的朋友聊天,大家都有一个共同的感受:自从ChatGPT、Midjourney这些AI工具普及后,工作流程确实快了不少,但…...

CANN/ops-nn Gelu梯度算子

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

科学拉丁文献翻译评测:ChatGPT与Google Translate的深度对比

1. 项目缘起与核心价值作为一名长期在生物、医药和古典文献领域打交道的从业者,我几乎每天都要和拉丁文打交道。无论是解读一份18世纪的植物志手稿,还是理解一篇现代药理学论文中引用的经典术语,拉丁语都是横亘在面前的一道坎。过去&#xff…...

通过 Taotoken 管理控制台精细化设置 API Key 的访问权限与审计日志

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 通过 Taotoken 管理控制台精细化设置 API Key 的访问权限与审计日志 在团队协作或项目开发中,统一管理大模型 API 的调…...

CANN/opbase获取Tensor格式

aclGetFormat 【免费下载链接】opbase 本项目是CANN算子库的基础框架库,为算子提供公共依赖文件和基础调度能力。 项目地址: https://gitcode.com/cann/opbase 功能说明 获取aclTensor的format,aclTensor由aclCreateTensor接口创建。 函数原型 …...

ATVC AddWithBroadcast算子样例

【免费下载链接】atvc ATVC(Ascend C Templates for Vector Compute),是为基于Ascend C开发的典型Vector算子封装的一系列模板头文件的集合,可帮助用户快速开发典型Vector算子。 项目地址: https://gitcode.com/cann/atvc …...

泰山派3M-RK3576-系统功能-Debian12-MIPI屏幕显示

Debian12系统MIPI屏幕显示 下载对应镜像 使用 网盘🚀 在 系统镜像/Debian12/ 这个目录中下载我们提供的 .img 镜像文件。 本文档使用的镜像有两个(需要根据屏幕的型号选择): 【1】. TaishanPi-3M-RK3576_Debian12-Xfce_dsiC41…...

Graph-autofusion super_kernel极简示例

super_kernel极简sample 【免费下载链接】graph-autofusion Graph-autofusion 是一个面向昇腾(Ascend)芯片的轻量级、解耦式组件集合,旨在通过自动融合技术加速模型执行。 目前已开源 SuperKernel 组件,未来将持续开放更多自动融合…...

02.基础语法

第 2 章 C++ 基础语法 目录介绍 2.1 C++快速介绍 2.1.1 C++语言介绍 2.1.2 C++的特点 2.1.3 C++标准库 2.1.4 C++应用领域 2.1.5 C++的版本 2.1.6 综合案例与思考 2.2 C++编译器...

CANN TensorFlow调试配置

功能调试 【免费下载链接】tensorflow Ascend TensorFlow Adapter 项目地址: https://gitcode.com/cann/tensorflow enable_exception_dump 是否dump异常算子数据。 0:关闭异常算子数据dump功能。 1:开启普通ExceptionDump,dump异常…...

群论与张量积:构建等变神经网络的核心原理与实践

1. 项目概述:当AI遇见数学的优雅 如果你在深度学习的海洋里游过泳,大概率听过“卷积神经网络(CNN)在处理图像时具有平移不变性”这种说法。这听起来很酷,但你是否想过,这种“不变性”从何而来?它…...

CANN/hcomm pre-commit 使用指导

pre-commit 工具使用指导 【免费下载链接】hcomm HCOMM(Huawei Communication)是HCCL的通信基础库,提供通信域以及通信资源的管理能力。 项目地址: https://gitcode.com/cann/hcomm 概述 pre-commit 是一个 Git Hooks 框架&#xff0…...

第 2 章 C++ 基础语法

第 2 章 C++ 基础语法 目录介绍 2.1 C++快速介绍 2.1.1 C++语言介绍 2.1.2 C++的特点 2.1.3 C++标准库 2.1.4 C++应用领域 2.1.5 C++的版本 2.1.6 综合案例与思考 2.2 C++编译器...

口碑好的四川别墅电梯哪家专业

在选择别墅电梯时,许多业主都会把“口碑”作为重要的参考标准。毕竟电梯是日常频繁使用的家庭设备,它既要承载家人的安全,也要融入家的氛围。在四川本地,有一家深耕别墅电梯多年的企业——四川西子奥通电梯有限公司,凭…...

通过curl命令诊断大模型API连接与返回问题

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 通过curl命令诊断大模型API连接与返回问题 当你在集成大模型服务时遇到问题,无论是调用失败、返回异常还是响应缓慢&am…...

泰山派3M-RK3576-镜像烧录-成品镜像烧录

【立创泰山派3-RK3576开发板】成品镜像烧录 什么是成品镜像 简单来说就是一个 .img 就是完整的系统镜像,烧录这一个就可以完整的运行系统,这样的镜像叫做成品镜像。 这样的镜像体积都比较大,但胜在烧录方便。 例如:update.img…...

对比多个模型 API 供应商后我为何选择 Taotoken 作为主用平台

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 对比多个模型 API 供应商后我为何选择 Taotoken 作为主用平台 作为个人开发者,在构建需要集成大语言模型能力的应用时&…...

AI应用上线前必做的5项安全验证:基于SITS2026标准的CI/CD嵌入式检测清单

更多请点击: https://intelliparadigm.com 第一章:SITS2026标准的演进逻辑与AI原生安全范式转型 SITS2026并非对传统信息安全标准的简单迭代,而是以AI系统全生命周期为锚点,重构信任边界、责任归属与验证机制的范式跃迁。其核心驱…...

CANN/ops-fft快速安装指南

环境部署 【免费下载链接】ops-fft ops-fft 是 CANN (Compute Architecture for Neural Networks)算子库中提供 FFT 类计算的基础算子库,采用模块化设计,支持灵活的算子开发和管理。 项目地址: https://gitcode.com/cann/ops-ff…...

机电系统开发中的接口控制文档(ICD)与工具链构建

1. 接口控制文档(ICD)深度解析 接口控制文档(Interface Control Document, ICD)是机电系统开发中确保各组件协同工作的核心规范文件。与单纯定义单一组件功能的技术规格书不同,ICD专门规范不同系统单元之间的交互规则。…...

数据资源:中国极端高温热浪人口暴露数据集(2000、2010、2020)

中国极端高温热浪人口暴露数据集(2000、2010、2020) 为解决气象栅格数据与社会经济行政单元存在的尺度错位问题,本研究整合MERRA-2再分析资料与多源人口普查数据,研发了中国极端高温热浪人口暴露数据集(2000、2010、20…...

Arm Neoverse V2处理器指令异常与性能优化解析

1. Arm Neoverse V2处理器指令异常深度解析在现代处理器架构设计中,指令执行异常是工程师们必须面对的挑战之一。Arm Neoverse V2作为面向基础设施的高性能处理器,其微架构设计在追求极致性能的同时,也不可避免地会遇到各种边界条件下的执行异…...

Ollama+OpenClaw一键重启脚本使用说明

OllamaOpenClaw一键重启脚本使用说明 Windows 一键清理端口、杀死残留进程、重启 Ollama OpenClaw 服务,开箱即用 📥 配套文件 你可以搭配本说明文档,使用配套的一键重启脚本,无需手动操作,双击即可完成服务重启。 …...

CANN/cannbot-skills Attention-Only模板

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

CANN HIXL KV缓存池化传输

HIXL、Mooncake与vLLM的KV Cache池化与传输 【免费下载链接】cann-learning-hub CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。 项目地址: https://gitcode.com/cann/cann-learnin…...

CANN双三次抗锯齿上采样算子

aclnnUpsampleBicubic2dAA 【免费下载链接】ops-cv 本项目是CANN提供的图像处理、目标检测相关的算子库,实现网络在NPU上加速计算。 项目地址: https://gitcode.com/cann/ops-cv 📄 查看源码 产品支持情况 产品是否支持Ascend 950PR/Ascend 950…...

终极鼠标性能测试指南:3步精准评估您的设备表现

终极鼠标性能测试指南:3步精准评估您的设备表现 【免费下载链接】MouseTester 项目地址: https://gitcode.com/gh_mirrors/mo/MouseTester 想要知道您的鼠标是否真的物有所值?MouseTester——这款专业级鼠标性能测试工具,为您提供精确…...

CANN/ops-math填充算子文档

aclnnInplaceFillScalar 【免费下载链接】ops-math 本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。 项目地址: https://gitcode.com/cann/ops-math 📄 查看源码 产品支持情况 产品是否支持Ascend 950PR/Ascend 950DT√Atla…...