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

CANN ops-cv图模式适配指南

图模式适配指南【免费下载链接】ops-cv本项目是CANN提供的图像处理、目标检测相关的算子库实现网络在NPU上加速计算。项目地址: https://gitcode.com/cann/ops-cv概述本文档介绍自定义算子的图模式适配方法整体流程与算子开发指南AI Core算子开发指南/AI CPU算子开发指南一致。值得注意的是不需要进行aclnn适配只需做如下交付件适配即可实现图模式调用算子。${op_name} # 替换为实际算子名的小写下划线形式 ├── op_host # Host侧实现 │ └── ${op_name}_infershape.cpp # InferShape实现实现算子形状推导在运行时推导输出shape ├── op_graph # 图融合相关实现 │ ├── CMakeLists.txt # op_graph侧CMakeLists.txt文件 │ ├── ${op_name}_graph_infer.cpp # InferDataType文件实现算子类型推导在运行时推导输出dataType └── └── ${op_name}_proto.h # 算子原型定义用于图优化和融合阶段识别算子本文将以AddExample算子假设为AI Core算子入图为例介绍入图交付件的实现AI CPU算子入图实现基本类似完整代码详见examples目录下add_example和add_example_aicpu。Shape与DataType推导图模式需要完成两个交付件${op_name}_graph_infer.cpp${op_name}_infershape.cpp交付件1${op_name}_infershape.cppInferShape函数的作用是根据输入的shape推导输出的shape。示例如下AddExample算子完整代码请参考examples/add_example_aicpu/op_host下add_example_infershape.cpp。// AddExample算子逻辑是两个数相加因此输出shape与输入shape一致 static ge::graphStatus InferShapeAddExample(gert::InferShapeContext* context) { .... // 获取输入shape const gert::Shape* xShape context-GetInputShape(IDX_0); // 获取输出shape gert::Shape* yShape context-GetOutputShape(IDX_0); // 获取输入DimNum auto xShapeSize xShape-GetDimNum(); // 设置输出的DimNum yShape-SetDimNum(xShapeSize); // 依次将输入Dim值设置给输出 for (size_t i 0; i xShapeSize; i) { int64_t dim xShape-GetDim(i); yShape-SetDim(i, dim); } .... } // inferShape注册 IMPL_OP_INFERSHAPE(AddExample).InferShape(InferShapeAddExample);交付件2${op_name}_graph_infer.cppInferDataType函数的作用是根据输入的DataType推导输出的DataType。示例如下AddExample算子完整代码请参考examples/add_example_aicpu/op_graph下add_example_graph_infer.cpp。// AddExample算子逻辑是两个数相加因此输出dataType与输入dataType一致 static ge::graphStatus InferDataTypeAddExample(gert::InferDataTypeContext* context) { .... // 获取输入的dataType ge::DataType sizeDtype context-GetInputDataType(IDX_0); // 将输入dataType设置到输出 context-SetOutputDataType(IDX_0, sizeDtype); .... } // 注册InferDataType IMPL_OP(AddExample).InferDataType(InferDataTypeAddExample);算子原型配置图模式调用需要将算子原型注册到Graph Engine简称GE中以便GE能够识别该类算子的输入、输出及属性信息。注册通过REG_OP接口完成开发者需定义算子输入、输出张量类型及数量等基本信息。常用张量/属性数据类型示例如下张量类型属性类型示例int64/DT_INT64int32/DT_INT32int16/DT_INT16int8/DT_INT8double/DT_DOUBLEfloat32/DT_FLOATfloat16/DT_FLOAT16bfloat16/DT_BF16complex128/DT_COMPLEX128complex64/DT_COMPLEX64complex32/DT_COMPLEX32/intInt/boolBool/stringString/floatFloat/listListInt基本信息如下输入/输出关键字示例必选输入INPUT.INPUT(${name}, TensorType({input_dtype}))可选输入OPTIONAL_INPUT.OPTIONAL_INPUT(${name}, TensorType({optional_input_dtype}))必选属性REQUIRED_ATTR.REQUIRED_ATTR(${name}, ${dtype})可选属性ATTR.ATTR(${name}, ${dtype}, ${default_value})输出OUTPUT.OUTPUT(${name}, TensorType({output_dtype}))示例代码如下展示了如何注册AddExample算子REG_OP(AddExample) .INPUT(x1, TensorType({DT_FLOAT})) .INPUT(x2, TensorType({DT_FLOAT})) .OUTPUT(y, TensorType({DT_FLOAT})) .OP_END_FACTORY_REG(AddExample)完整代码请参考examples/add_example/op_graph目录下add_example_proto.h。【免费下载链接】ops-cv本项目是CANN提供的图像处理、目标检测相关的算子库实现网络在NPU上加速计算。项目地址: https://gitcode.com/cann/ops-cv创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关文章:

CANN ops-cv图模式适配指南

图模式适配指南 【免费下载链接】ops-cv 本项目是CANN提供的图像处理、目标检测相关的算子库,实现网络在NPU上加速计算。 项目地址: https://gitcode.com/cann/ops-cv 概述 本文档介绍自定义算子的图模式适配方法,整体流程与算子开发指南&#x…...

CANN运行时Stream管理

Stream管理 【免费下载链接】runtime 本项目提供CANN运行时组件和维测功能组件。 项目地址: https://gitcode.com/cann/runtime Stream概念 Stream描述了一个在Host下发并在Device上执行的任务队列。 在同一个Stream中,任务按照进入队列的顺序依次执行。当…...

RankSpot 全自动 AI 智能体技术架构与核心机制深度解析

摘要 RankSpot 作为面向 SEO 内容生产的全自动 AI 智能体,构建了 “关键词研究 - 内容生成 - SEO 优化 - 自动发布 - 数据监控” 的端到端技术闭环。本文从技术底层出发,系统拆解 RankSpot 的整体架构、核心技术模块、智能体工作流、算法模型选型、数据…...

2026年程序员必看:6条AI独立开发实战路径,从0到月入3万+(收藏版)

本文分享了6条程序员转型AI独立开发的实战路径,包括AI工具开发、开源项目变现、外包接单、内容创作、AI Agent产品和垂直行业解决方案。每条路径都包含核心逻辑、真实案例、工具推荐、收入预估和避坑要点,旨在帮助程序员在6个月内实现月入3万的目标。文章…...

CANN/ops-transformer贡献指南

贡献指南 【免费下载链接】ops-transformer 本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。 项目地址: https://gitcode.com/cann/ops-transformer 本项目欢迎广大开发者体验并参与贡献,在参与社区贡献之前。请参见cann…...

CANN/asc-devkit Arange索引生成函数

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

从引文指标到AI评估:构建科研影响力量化评估的完整方法论

1. 项目概述:当“影响力”变得可计算在学术圈和科研管理领域,我们每天都在谈论“影响力”。一篇论文的影响力有多大?一个学者的贡献如何衡量?一个研究机构的实力怎么评估?过去,这更多是一种基于同行声誉的模…...

CANN/atvoss Sqrt开平方运算API文档

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

CANN/pyasc矩阵乘法迭代方法

asc.language.adv.Matmul.iterate 【免费下载链接】pyasc 本项目为Python用户提供算子编程接口,支持在昇腾AI处理器上加速计算,接口与Ascend C一一对应并遵守Python原生语法。 项目地址: https://gitcode.com/cann/pyasc Matmul.iterate(en_parti…...

CANN/pypto concat操作

pypto.concat 【免费下载链接】pypto PyPTO(发音: pai p-t-o):Parallel Tensor/Tile Operation编程范式。 项目地址: https://gitcode.com/cann/pypto 产品支持情况 产品是否支持Ascend 950PR/Ascend 950DT√Atlas A3 训练系列产品/A…...

Phi-4-mini-flash-reasoning一文详解:轻量级开源模型在教育SaaS中的降本提效实践

Phi-4-mini-flash-reasoning一文详解:轻量级开源模型在教育SaaS中的降本提效实践 1. 模型概述与教育场景价值 Phi-4-mini-flash-reasoning是一款专为复杂推理任务优化的轻量级语言模型,在教育科技领域展现出独特的应用价值。相比传统大模型&#xff0c…...

人工智能的社会技术定义:从理性主义到人文主义的融合

1. 人工智能定义的迷思:为什么我们总在“盲人摸象”? 干了这么多年技术,也写了不少关于人工智能的科普和行业分析,我发现一个挺有意思的现象:无论是技术圈内的开发者,还是圈外的普通用户,甚至是…...

CANN/catlass aclnn接口算子接入示例

basic_matmul_aclnn example 【免费下载链接】catlass 本项目是CANN的算子模板库,提供NPU上高性能矩阵乘及其相关融合类算子模板样例。 项目地址: https://gitcode.com/cann/catlass aclnn接口是CANN软件栈一直沿用的接口,msOpGen工具是CANN提供可…...

CANN驱动获取算力组aicore利用率

dcmi_get_capability_group_aicore_usage 【免费下载链接】driver 本项目是CANN提供的驱动模块,实现基础驱动和资源管理及调度等功能,使能昇腾芯片。 项目地址: https://gitcode.com/cann/driver 函数原型 int dcmi_get_capability_group_aicore…...

CANN驱动风扇转速查询API

dcmi_get_device_fan_speed 【免费下载链接】driver 本项目是CANN提供的驱动模块,实现基础驱动和资源管理及调度等功能,使能昇腾芯片。 项目地址: https://gitcode.com/cann/driver 函数原型 int dcmi_get_device_fan_speed(int card_id, int de…...

竟然还在手动转写录音逐字稿?2026年这4款把录音转文字的app帮你月省25小时加班时间

很多人选录音转文字工具,第一个坑就是只看表面订阅价,觉得越便宜甚至免费越好,其实根本不算算你改稿子花的时间值多少钱。我自己做了3年效率工具测评,亲测过十几款转写工具,今天直接给结论:听脑AI是目前同类…...

老照片修复神器:AI超清画质增强实测,一键让模糊照片变高清

老照片修复神器:AI超清画质增强实测,一键让模糊照片变高清 1. 引言:老照片修复的AI解决方案 1.1 老照片修复的普遍需求 翻开相册,那些泛黄的老照片承载着珍贵的记忆,却常常因为年代久远而变得模糊不清。无论是家庭相…...

CANN/pypto按位异或操作API文档

# pypto.bitwise_xor 【免费下载链接】pypto PyPTO(发音: pai p-t-o):Parallel Tensor/Tile Operation编程范式。 项目地址: https://gitcode.com/cann/pypto 产品支持情况 产品是否支持Ascend 950PR/Ascend 950DT√Atla…...

用了半年只留下这1个!2026会议纪要录音转文字工具我真心安利给所有打工人

上周开了3小时季度总结会,散会leader甩了一句“下班前把纪要发我”,换做半年前我得抱着录音逐句听,熬到九点还错漏一堆;上个月跑广州见客户,对方全程粤语,之前用的工具识别出来一半都是乱码;做博…...

CANN/pyasc数据拷贝API文档

asc.language.basic.data_copy 【免费下载链接】pyasc 本项目为Python用户提供算子编程接口,支持在昇腾AI处理器上加速计算,接口与Ascend C一一对应并遵守Python原生语法。 项目地址: https://gitcode.com/cann/pyasc asc.language.basic.data_co…...

CANN/sip BLAS Ssyr2算子文档

Ssyr2 【免费下载链接】sip 本项目是CANN提供的一款高效、可靠的高性能信号处理算子加速库,基于华为Ascend AI处理器,专门为信号处理领域而设计。 项目地址: https://gitcode.com/cann/sip 产品支持情况 产品是否支持Atlas 200I/500 A2 推理产品…...

别再只会 pip install 了!Win11上管理Python包的5个高效技巧(含更新/降级/换源)

Win11上Python包管理的5个高阶技巧:从基础安装到专业配置 每次看到同事在终端里反复输入pip install时,我都忍不住想分享几个改变我工作效率的习惯。作为在Windows 11上管理过数十个Python项目的开发者,我深刻体会到:包管理不是安…...

阴阳师百鬼夜行AI自动化脚本:5分钟轻松收集式神碎片终极指南

阴阳师百鬼夜行AI自动化脚本:5分钟轻松收集式神碎片终极指南 【免费下载链接】OnmyojiAutoScript Onmyoji Auto Script | 阴阳师脚本 项目地址: https://gitcode.com/gh_mirrors/on/OnmyojiAutoScript 还在为阴阳师百鬼夜行中繁琐的撒豆操作而烦恼吗&#xf…...

CANN/AMCT量化感知训练配置创建

create_quant_retrain_config 【免费下载链接】amct AMCT是CANN提供的昇腾AI处理器亲和的模型压缩工具仓。 项目地址: https://gitcode.com/cann/amct 产品支持情况 产品 是否支持 Ascend 950PR/Ascend 950DT √ Atlas A3 训练系列产品 / Atlas A3 推理系列产品 √ At…...

第12章 后土化轮回:安装垃圾回收机制?六道是六个分类对象池,亡魂不再内存泄漏

第12章 后土化轮回:安装垃圾回收机制?六道是六个分类对象池,亡魂不再内存泄漏 系列导读:这是《洪荒操作系统》第12章。巫妖大战后,天地间飘满了亡魂,造成严重的内存泄漏。后土以身化轮回,建立了…...

AI驱动优化算法选择与设计:从元学习到自动化求解

1. 项目概述:当优化遇见智能在工业排产、物流调度、金融风控这些硬核领域里,我们每天都在和“优化”打交道。简单说,就是在一堆限制条件下,找到一个最好的方案。过去十几年,我的工具箱里塞满了各种算法:梯度…...

从预测到响应:构建基于状态识别的量化交易系统

1. 项目概述与核心价值最近在GitHub上看到一个挺有意思的项目,叫“Ctrl-Alt-DefeatTheMarket”。光看这个名字,一股浓浓的极客风和挑战精神就扑面而来了。这显然不是一个传统的量化交易策略库,它更像是一个技术宣言,或者说&#x…...

ClawZ:桌面AI助手革命,零门槛部署OpenClaw智能体

1. 项目概述:从命令行到桌面的AI助手革命如果你和我一样,对AI Agent(智能体)的潜力感到兴奋,但又对在终端里敲命令、配置环境、调试YAML文件感到头疼,那么ClawZ的出现,绝对是一个值得你停下手中…...

Hyperf 默认使用 Nikic/FastRoute 作为路由器。

它的本质是:FastRoute 是一个基于 正则表达式编译 和 前缀树/分派树 (Dispatch Tree) 的轻量级 HTTP 路由器。它不依赖传统的线性遍历或简单的字符串匹配,而是在启动阶段将所有路由规则编译成一个高效的 数据结构(通常是嵌套数组或状态机&…...

基于MCP协议构建AI助手与Google Drive的安全连接方案

1. 项目概述:一个连接Google生态与AI的桥梁 如果你正在尝试让AI助手(比如Claude、Cursor等)直接操作你的Google Drive、Gmail或者Google Calendar,而不是仅仅通过网页搜索获取信息,那么你很可能已经遇到了“MCP”&…...