news 2026/5/9 15:51:33

CANN/ops-tensor贡献指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CANN/ops-tensor贡献指南

贡献指南

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

本项目欢迎广大开发者体验并参与贡献,在参与社区贡献之前。请参见cann-community了解行为准则,进行CLA协议签署,了解源码仓的贡献流程。

开发者准备本地代码与提交PR时需要重点关注如下几点:

  1. 提交PR时,请按照PR模板仔细填写本次PR的业务背景、目的、方案等信息。
  2. 若您的修改不是简单的bug修复,而是涉及到新增特性、新增接口、新增配置参数或者修改代码流程等,请务必先通过Issue进行方案讨论,以避免您的代码被拒绝合入。若您不确定本次修改是否可被归为"简单的bug修复",亦可通过提交Issue进行方案讨论。

开发者贡献场景主要包括:

一、贡献新算子

如果您有全新的算子希望基于 NPU 进行设计与实现,欢迎在 Issue 中提出您的想法与设计方案。完整的贡献流程如下:

1. 新增 Issue,创建需求

新建Requirement|需求建议类 Issue,并在其中说明新增算子的设计方案。

Issue 需包含以下内容:

  • 背景信息
  • 价值/作用
  • 设计方案

同时,请在提交的 Issue 中评论/assign @yourself认领该任务。

2. 需求评审

Sig组将指派Committer对您提交的 Issue 进行评审并给出修改意见。请在完成修改后,于 Issue 中@对应Committer。

若需求被接纳,sig成员将为您分配合适的算子分类路径,以便您将贡献的算子提交至对应目录。

3. 提交 PR

算子交付件如下:

src # 算子源码目录 ├── ${op_name} # 算子名 │ ├── ${op_name}_kernel.cpp # 算子实现文件 │ ├── ${op_name}_host.cpp # Host侧代码 │ ├── arch35/ # Ascend950特有实现 │ │ └── ${op_name}_struct.h # 算子结构定义 │ └── tests │ ├── test_${op_name}.cpp # 算子测试文件 ├── CMakeLists.txt # 算子编译配置文件 ├── README.md # 算子README文档

代码上库要求:

  • 代码交付件:需包含算子实现、算子测试文件、算子README文档(文档中说明算子提交人、功能、参数说明)
  • 是否签署 CLA
  • PR 是否已关联对应 Issue
  • 代码是否符合《C++ 编程规范》
  • 代码是否编译通过

4. CI门禁

通过评论compile指令触发开源仓门禁,并依据 CI 检测结果进行修改,目前CI门禁包含以下检查项:

  • 代码编译
  • 静态检查(如涉及codecheck误报,请提交给sig成员屏蔽)
  • UT测试
  • 冒烟测试

门禁通过后,请在关联的 Issue 中@指派的Committer。

5. Committer检视

Committer检视后将反馈检视意见,请完成所有修改后@指派的Committer。

6. Maintainer检视合入

Committer 检视通过后,标注/lgtm标签。Maintainer 将在1天内进行最终审核,确认无问题后,将标注/approve标签合入PR。

二、算子Bug修复

如果您在本项目中发现了某些算子Bug,希望对其进行修复,欢迎您新建Issue进行反馈和跟踪处理。

您可以按照提交Issue/处理Issue任务指引新建Bug-Report|缺陷反馈类Issue对Bug进行描述,然后在评论框中输入"/assign"或"/assign @yourself",将该Issue分配给您进行处理。

三、算子优化

如果您对本项目中某些算子实现有泛化性增强/性能优化思路,希望着手实现这些优化点,欢迎您对算子进行优化贡献。

您可以按照提交Issue/处理Issue任务指引新建Requirement|需求建议类Issue对优化点进行说明,并提供您的设计方案, 然后在评论框中输入"/assign"或"/assign @yourself",将该Issue分配给您进行跟踪优化。

四、文档纠错

如果您在本项目中发现某些算子文档描述错误,欢迎您新建Issue进行反馈和修复。

您可以按照提交Issue/处理Issue任务指引新建Documentation|文档反馈类Issue指出对应文档的问题,然后在评论框中输入"/assign"或"/assign @yourself",将该Issue分配给您纠正对应文档描述。

五、帮助解决他人Issue

如果社区中他人遇到的问题您有合适的解决方法,欢迎您在Issue中发表评论交流,帮助他人解决问题和痛点,共同优化易用性。

如果对应Issue需要进行代码修改,您可以在Issue评论框中输入"/assign"或"/assign @yourself",将该Issue分配给您,跟踪协助解决问题。

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

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

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

CANN ops-nn Relu激活函数算子

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

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

基于Better Auth的全栈SaaS UI组件库:快速构建认证与支付系统

1. 项目概述:一个为现代SaaS应用量身定制的全栈UI组件库如果你正在构建一个需要用户认证、团队管理、订阅付费的B2B SaaS应用,并且厌倦了在不同UI库、认证方案和支付集成之间反复横跳,那么你很可能已经遇到了bettercone/ui。这不是又一个普通…

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

AI赋能系统综述自动化:从SVM与NLP技术原理到工程实践指南

1. 从“体力活”到“智力活”:AI如何重塑系统综述的工程实践如果你做过一次完整的系统综述,你大概会理解那种被海量文献淹没的窒息感。从确定研究问题、制定检索策略,到动辄数千篇文献的初筛、全文筛选,再到最后的数据提取与综合&…

作者头像 李华