ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

CANN ge SIG 深度解析:昇腾图编译器与图执行引擎的架构、仓库治理与社区运作

CANN ge SIG 深度解析:昇腾图编译器与图执行引擎的架构、仓库治理与社区运作 CANN ge SIG 深度解析昇腾图编译器与图执行引擎的架构、仓库治理与社区运作【免费下载链接】community本项目是CANN开源社区的核心管理仓库包含社区的治理章程、治理组织、通用操作指引及流程规范等基础信息项目地址: https://gitcode.com/cann/communityge SIG 是 CANN 社区聚焦图模式研发的技术兴趣小组围绕图编译器与图执行引擎的设计、演进与工程实践展开工作是昇腾 NPU 图模式能力的核心治理组织。本文以 ge SIG 官方 README 为主体结合 SIG 信息配置文件、社区治理章程与公开技术分享材料系统梳理其职责范围、五个核心仓库ge / metadef / graph-autofusion / torchair / triton-inference-server-ge-backend的技术定位、GE 在 CANN 架构中的位置以及例会、议题申报、邮件订阅等社区参与方式帮助开发者快速了解并接入昇腾图模式生态。一、ge SIG 是什么CANN 图模式研发的技术兴趣小组根据 ge SIG README 的定义ge SIG 是 CANN 图模式研发的技术兴趣小组聚焦于图编译器与图执行引擎的设计、演进与工程实践。其使命是打造开放、易用、性能领先的图编译基础设施并持续推动它与主流 AI 框架和开源生态的深度融合使开发者能够在昇腾 NPU 上获得稳定、高效、可持续演进的图模式体验。这里的图模式Graph Mode指的是将用户通过框架如 PyTorch、TensorFlow表达的模型计算过程先构造成一张完整的计算图再由图引擎统一完成编译、优化与执行调度的运行方式与逐算子下发执行的 Eager 模式相对。ge SIG 所维护的 GEGraph Engine正是这一模式在 CANN 中的核心实现载体。在 CANN 社区的治理体系中SIG 是专注特定技术领域或公共能力建设的组织单元见 社区总览 README 与 SIG 列表其设立与运作遵循 CANN 社区 SIG 治理章程。ge SIG 即属于这一体系下的图编译方向专业小组。二、工作目标与运作机制ge SIG 在 README 中明确了三项核心工作目标推动技术演进推动图编译与图执行相关技术路线的讨论、沉淀与演进形成设计共识通过例会、设计评审与技术分享形成可复用的设计共识与最佳实践保障工程质量维护 SIG 范围内核心仓库的 Issue、Bug 与用户反馈保障社区的响应效率与工程质量。从公开的 SIG 技术分享日程见 events/meetup/slides/sig-ge可以看出这些目标正被持续落地例如图融合 SuperKernel 技术解读2025-10-31对应 graph-autofusion 的 SuperKernel 组件graph-engine 开源介绍与优秀实践2025-12-26轻量化图模式后端 npugraph_ex 介绍2026-02-10graph-autofusion 自动融合技术解读2026-07-22GE 静态 shape 多流并行增强技术2026-08-17。这些议题覆盖设计评审与技术分享和技术路线的讨论与沉淀两个层面是社区成员了解 GE 演进方向的第一手材料。三、职责范围与核心仓库全景ge SIG 主要负责五个核心仓库的开发与维护覆盖图引擎本体—元数据定义—自动融合—框架桥接—推理服务后端的完整链路3.1 ge图编译与运行的控制中心定位GE 是图编译与运行的控制中心负责计算图的编译、优化与执行调度是昇腾图模式的核心引擎。功能提供图编译与图执行能力支持静态 / 动态 shape包含图融合优化、内存与资源管理、下沉调度等关键机制并通过统一的 Graph API 支撑用户自主构图与运行。从 sig-info.yaml 中 ge 仓库的路径级代码治理配置可以清晰看到其内部引擎结构仓库按compiler/engines/下划分出nn_engineNN 图引擎、ffts_engine算子融合调度、cpu_engineCPU 算子引擎、dvpp_engine媒体预处理引擎、rts_engine运行时调度引擎、hccl_engine集合通信引擎等多个引擎目录并配套compiler/opcompiler算子编译与tests/engines/下的对应测试目录。此外inc/external、inc/graph_metadef/external、inc/parser/external、dflow/udf/inc/external等路径共同构成对外暴露的接口层base/common/error_registry/error_registry.cc则承载错误码注册等基础能力。这些目录划分与 README 所述编译、优化、执行调度的能力定位相互印证。3.2 metadef图与算子的元数据定义定位昇腾图与算子相关的元数据定义仓库提供跨组件共享的数据结构与接口规范。功能提供算子与图共用的基础数据结构与接口支持 eager 模式与图模式的统一调用。在 CANN 中ge 与算子侧如 CANN 算子库需要共享统一的数据结构与接口约定metadef 正是这一共同语言的载体。其配置同样在 sig-info.yaml 中体现inc/external与pkg_inc为其核心对外接口路径。正因为图与算子共用一套元数据定义eager 模式与图模式才能在接口层面保持统一。3.3 graph-autofusion面向昇腾 NPU 的轻量级自动融合组件定位面向昇腾 NPU 的轻量级、解耦式自动融合组件集合聚焦通过自动融合提升模型执行效率。功能基于 codegen 的 JIT 编译机制实现高效融合与加速包含SuperKernel和Autofuse两个组件。自动融合是图优化中最具性能收益的手段之一它将计算图中多个相邻算子合并为一个融合算子执行减少算子下发次数与中间张量的内存搬运。graph-autofusion 采用轻量级、解耦式的设计理念并以 codegen JIT 编译方式生成融合实现。其 SuperKernel 组件的入口路径super_kernel/src/superkernel/__init__.py也出现在 sig-info.yaml 的路径级配置中与社区分享材料《图融合 SuperKernel 技术大揭秘》《graph-autofusion 自动融合技术解读》相互对应。3.4 torchairPyTorch 与 GE 的图模式桥接组件定位TorchAirTorch Ascend Intermediate Representation是 PyTorch 与 GE 之间的图模式桥接组件使 PyTorch 用户能够在昇腾 NPU 上使用图模式进行推理。功能TorchAir 基于 PyTorch Dynamo 机制工作将 PyTorch FX 图转换为 GE 计算图并提供 GE 图在昇腾 NPU 上的编译与执行能力。随着 PyTorch 2.x 全面引入 Dynamo 与 FX 图捕获机制TorchAir 承担了把 PyTorch 模型高效转换为 GE 可编译执行的计算图这一关键桥接职责是 CANN 融入 PyTorch 开源生态的重要一环。3.5 triton-inference-server-ge-backendTriton 的 GE 推理后端定位Triton Inference Server 中面向昇腾 NPU 的 GE 推理后端。功能通过 Triton Backend 接口基于 GE 实现模型在昇腾 NPU 上的图编译与推理执行。该仓库让业界广泛使用的 NVIDIA Triton Inference Server 推理框架能够通过标准 Backend 接口接入昇腾 NPU模型推理链路为Triton → GE 图编译 → 昇腾 NPU 执行。四、仓库权限与代码路径治理从 sig-info.yaml 看工程组织方式ge SIG 的工程治理体现在 sig-info.yaml 的结构化配置中其中repositories字段定义了每个仓库的 Committer 列表entry_configs则实现了按代码路径划分的细粒度权限管理指定路径下的代码修改需要对应路径专责 Committer 检视。以 ge 仓库为例对外接口路径inc/external、dflow/udf/inc/external、inc/graph_metadef/external、inc/parser/external由盛楠、王涛等维护核心引擎路径compiler/engines/nn_engine、compiler/engines/ffts_engine、compiler/opcompiler及对应tests/engines/目录由袁野、李培杰、李俊谕、詹隽、张德鹏等维护CPU / DVPP 引擎compiler/engines/cpu_engine、compiler/engines/dvpp_engine分别配置了独立 Committer 集合运行时与通信引擎compiler/engines/rts_engine、compiler/engines/hccl_engine及测试目录各有专项负责人基础能力base/common/helper/mobile、base/common/error_registry/error_registry.cc单独配置维护者。类似地graph-autofusion 对super_kernel/src/superkernel/__init__.py配置了专门 Committermetadef 对inc/external、pkg_inc配置了接口路径维护者。这种目录级 ownership机制让核心接口与各引擎均有明确的责任人是 SIG 保障代码质量与响应效率的具体落地。五、GE 在 CANN 架构中的位置ge SIG README 明确指出本 SIG 负责的 GE 仓在 CANN 架构中的位置如上图所示其核心地位可以概括为连接上层框架与底层硬件的桥梁输入层多框架PyTorch、TensorFlow、MindSpore、ONNX Runtime 等主流框架的模型作为输入适配层通过 torchair、TF Adapter 等适配组件将不同框架的模型转换为 GE 可处理的图结构Graph Engine 核心层GE API 作为统一对外接口向下调度图编译器完成框架图到中间表示 IR 的转换、图优化器算子融合、精度校准等优化、图执行器生成执行计划并驱动图执行运行时层Runtime 负责将图引擎产出的优化后计算图部署到硬件并调度执行硬件层昇腾 NPU 实际承载计算。这一分层结构说明GE 不直接面向用户框架编程而是通过适配器统一接入 图编译优化 下沉执行的路径向上屏蔽硬件差异、向下承接框架语义最终实现多框架模型在昇腾 NPU 上的高效执行。六、SIG 成员与角色按照 CANN 社区 SIG 治理章程SIG 由 Maintainer负责人与 Committer核心贡献者构成Maintainer 负责技术愿景、例会组织与社区协调Committer 深度参与技术方案设计与代码审查。ge SIG 的成员配置如下摘自 ge SIG README组织级信息可在 org-info.yaml 交叉核对。Maintainer 列表姓名GitCode邮箱王涛wqtshg_wtwangtao123huawei.com盛楠shengnan666titan.shenghuawei.com詹隽zhanjzhanjun6hisilicon.comCommitter 列表摘要ge SIG 拥有规模可观的 Committer 队伍覆盖图引擎、元数据、自动融合、桥接与推理后端各仓库包括唐群章、许亚非、王笑天、储星、赵智慧、李沛洋、李宁、耿超、黄桂军、薛鹏、赵鑫鑫、张帆、朱晶晶、丁炜秦、劳大钊、袁野、李培杰、李俊谕、刘伟、杨学斌、廖晓辉、郭一伟、于海涛、张德鹏、杨永强、夏国正、许亚飞、张盛杰、牛玉虎、李玥玮等。具体联系方式以 ge SIG README 的成员列表为准。七、社区运作与参与方式7.1 例会与议题申报ge SIG 采用公开、定期的例会机制会议时间北京时间每两周一次例会单周周五下午 14:00–16:00议题申报通过 CANN 社区会议白板etherpad-cann.meeting.osinfra.cn 的 sig-ge 页面提交议题范围欢迎社区成员提交技术讨论、设计提案、问题反馈或经验分享等作为会议议题会议纪要会议地址与纪要归档于 CANN 社区会议看板meeting.osinfra.cn/cann与 sig-ge 白板页面会后发布至邮件列表供社区查阅。根据 SIG 治理章程 的要求SIG 例会需要提前公布议程、会议纪要定期归档至邮件列表并保持信息公开透明ge SIG 的运作与此保持一致。7.2 邮件列表订阅ge SIG 的官方沟通渠道为邮件列表gecann.osinfra.cn社区成员可通过 CANN 社区邮件列表系统订阅该列表获取会议通知、会议纪要、议题讨论与决策归档等信息并通过邮件参与讨论与求助。7.3 如何参与对图编译、图执行引擎方向感兴趣的开发者可以通过以下路径加入 ge SIG订阅 SIG 邮件列表关注例会通知与纪要在例会白板上申报议题参与技术讨论、设计评审或分享实践经验为 SIG 范围内仓库提交 Issue、Bug 反馈或代码 PR提交 PR 前需按社区要求签署 CLA详见 社区总览 README对核心接口与引擎路径的代码贡献将由 sig-info.yaml 中对应的路径专责 Committer 进行检视。八、仓库清单ge SIG 负责维护的仓库托管于 GitCode 平台如下与前述职责范围一一对应仓库定位cann/ge图编译与运行的控制中心昇腾图模式核心引擎cann/metadef图与算子元数据定义跨组件共享的数据结构与接口规范cann/graph-autofusion轻量级自动融合组件集合SuperKernel / AutofuseAscend/torchairPyTorch 与 GE 的图模式桥接组件cann/triton-inference-server-ge-backendTriton Inference Server 的 GE 推理后端小结ge SIG 是 CANN 图模式能力的核心治理组织它以 GE 图引擎为中枢以 metadef 统一数据定义、graph-autofusion 增强自动融合、torchair 与 Triton 后端打通主流框架与推理服务生态构成了多框架接入 → 图编译优化 → 运行时下沉 → NPU 执行的完整链路。通过双周例会、公开议题评审、邮件列表与路径级代码治理社区成员可以在清晰的规则下深度参与图编译基础设施的演进。要快速入门建议从阅读 ge SIG README 与 sig-info.yaml 开始并结合 sig-ge 技术分享材料 跟踪最新的图融合、SuperKernel、静态 shape 多流并行等关键技术进展。【免费下载链接】community本项目是CANN开源社区的核心管理仓库包含社区的治理章程、治理组织、通用操作指引及流程规范等基础信息项目地址: https://gitcode.com/cann/community创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表