ops-nn:基于 CANN 技术的神经网络高阶算子库项目

本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。

分支11Tags11
文件最后提交记录最后更新时间
2 天前
1 天前
2 天前
1 天前
5 天前
14 小时前
1 天前
1 天前
3 天前
1 天前
4 天前
1 天前
1 天前
1 天前
14 小时前
1 天前
1 天前
1 天前
3 天前
1 天前
4 天前
1 天前
3 天前
3 天前
1 个月前
1 天前
4 天前
3 天前
18 天前
9 个月前
1 个月前
10 天前
3 个月前
4 个月前
4 个月前
4 天前
4 天前
29 天前
1 个月前
2 个月前
1 个月前

ops-nn

🔥Latest News

  • [2026/05] 优化kernel编译配置项,减少simplified_key和ascendc_config配置文件(!3330)。
  • [2026/05] 引入ops-tensor,基于分层结构优化Cube类算子,减少偏移量计算和简化指令参数(!5036)。
  • [2026/05] 发布生态算子的精度验收标准(!4572)。
  • [2026/03] 开源算子支持下一代芯片:Ascend950PR(!450)。
  • [2026/03] 新增<<<>>>的算子开发样例(!620)。
  • [2026/03] 低bit类算子和融合算子支持更多数据类型:fp8/mxfp8/hifp8/mxfp4等,并支持pertensor/perchannel/pertoken/pergroup/perblock等不同量化和组合方式:全量化融合算子:quant_batch_matmul_v4伪量化融合算子:weight_quant_batch_matmul_v2
  • [2026/03] 支持SIMD/SIMT新同构编程算子实现:[MapIndex](#660),[ScatterSub](#710)。
  • [2026/01] 新增QuickStart,指导新手零基础入门算子项目部署(支持Docker环境)、算子开发和贡献流程。
  • [2025/12] 开源算子支持Ascend 950PR/Ascend 950DT/KirinX90,可以通过CANN Simulator仿真工具开发调试;优化指南类文档,聚焦算子开发指南,明确最小交付件和关键示例代码,针对Ascend/samples仓算子提供迁移本项目的指导;新支持稀疏4:2量化matmul算子,针对稀疏矩阵开启硬件加速能力。
  • [2025/11] 新支持算子index_fillmasked_scatterscattertf_scatter_addfused_cross_entropy_loss_with_max_sum
  • [2025/10] 新增experimental目录,完善贡献指南,支持开发者调试并贡献自定义算子。
  • [2025/09] ops-nn项目首次上线,开源算子支持Atlas A2/A3系列产品。

🚀概述

ops-nn是CANN(Compute Architecture for Neural Networks)算子库中提供神经网络计算能力的高阶算子库,包括matmul类、activation类等算子,算子库架构图如下:

架构图

📌版本配套

本项目源码会跟随CANN软件版本发布,关于CANN软件版本与本项目标签的对应关系请参阅release仓库中的相应版本说明。 请注意,为确保您的源码定制开发顺利进行,请选择配套的CANN版本与Gitcode标签源码,使用master分支可能存在版本不匹配的风险。

🛠️环境准备

环境部署是体验本项目能力的前提,请先完成NPU驱动、CANN包安装等,确保环境正常。

⬇️源码下载

环境准备好后,下载与CANN版本配套的分支源码,通用命令如下,${tag_version}替换为分支标签名。以9.0.0分支源码下载为例:

# 通用命令:git clone -b ${tag_version} https://gitcode.com/cann/ops-nn.git
git clone -b 9.0.0 https://gitcode.com/cann/ops-nn.git

说明:若环境中已存在配套分支源码,可跳过本步骤,例如CANNLab默认已提供最新商发版CANN对应的源码。

📖学习教程

  • 快速入门:从零开始快速体验项目核心基础能力,涵盖源码编译、算子调用、开发与调试等操作。
  • 进阶教程:如需深入了解项目编译部署、算子调用、开发、调试调优等能力,请查阅文档中心获取详细指引。

💬相关信息


PS:本项目功能和文档正在持续更新和完善中,欢迎您关注最新版本。

  • 问题反馈:通过GitCode【Issues】提交问题。
  • 社区互动:通过GitCode【讨论】参与交流。
  • 技术专栏:通过GitCode【Wiki】获取技术文章,如系列化教程、优秀实践等。

项目介绍

本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。

定制我的领域