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

GE 图执行引擎:CANN 推理的计算图编排中心

在 CANN 的五层架构里GE 处在 AscendCL 和 Runtime 之间的枢纽位置。它不直接参与算子计算不管理 NPU 资源但它决定了这张计算图怎么跑——算子的执行顺序、哪些可以并发的、哪些可以融合的、中间 Tensor 放哪。GEGraph Engine是整个推理链路中最容易被忽视但影响最大的组件。没有 GE 的图优化Runtime 拿到的就是一张原始的 ONNX 算子列表——每个算子独立调度、独立分配内存、独立搬运数据。有了 GE 的优化同一张图的推理延迟可以快 2-3 倍。GE 为什么存在AI 推理跟普通程序执行最大的区别是计算图是已知的。普通程序有分支和循环编译器无法预知执行路径——变量 x 的值取决于用户的输入。AI 模型的计算图是固定的——模型训练结束后网络结构就锁死了每条数据进来走的计算路径完全一样。固定图这个特性给了 GE 巨大的优化空间。它可以在模型加载阶段花几十毫秒做全局分析——扫描整张图、找融合机会、做内存预分配——这些优化只需要做一次后续每次推理都能受益。图执行的全链路GE 的工作从 AscendCL 调用aclmdlLoadFromFile加载 OM 模型开始阶段 1图解析。GE 读取 OM 中的序列化计算图重建算子节点和数据边。每个算子节点记录了类型、输入输出 Tensor 的形状和数据类型、属性参数。阶段 2图编译。GE 内部有一个轻量级 Graph Compiler它把原始的计算图改造成更适合在昇腾上执行的形态。Graph Compiler 的优化不会一直触发。如果 GE 发现模型加载时 OM 中已经包含了优化后的执行计划即 ATC 编译时已经做过了完整优化就直接跳到阶段 4。如果 OM 中没有比如手动构建的计算图Graph Compiler 会执行完整的编译流程。Graph Compiler 的核心 Pass算子融合把多个连续算子合并成一个 Fusion 算子内存复用分析分析每个 Tensor 的生命周期让不同 Tensor 复用同一块显存Layout 优化为关键算子插入 ND↔NZ 转换常量折叠在编译期算出常量算子的结果阶段 3内存分配。基于 Tensor 生命周期分析为每个 Tensor 分配物理显存地址。// GE 的内存分配策略简化for(autotensor:graph.tensors){if(tensor.lifetime_overlaps_with(existing)){tensor.addrallocate_new();// 生命周期不重叠的 Tensor 复用地址}else{tensor.addrfind_reusable_addr(tensor.lifetime,tensor.size);}}阶段 4Task 生成。把优化后的图拆解成 Runtime 可执行的 Task 列表。阶段 5Task 下发。把 Task 提交到 Runtime 的 Stream 队列。GE 在这一步可以控制哪些 Task 走同一个 Stream、哪些走不同 Stream。Graph Compiler 如何优化图以 GE 对 Attention 子图的编译优化为例。GE 收到 GEMM → BiasAdd → Softmax → GEMM 这个子图后模式匹配。扫描到连续 4 个节点构成 Attention 的标准模式融合评估。检查 L1 容量——Softmax 的中间 Tensor 大小不超过 L1可以融合替换。把 4 个算子替换成一个 FlashAttention 融合算子内存分析。FlashAttention 内部的中间 TensorS_ij 分块在 L1 上流转不需要 DDR 分配编译后的执行图从 4 个算子变成 1 个融合算子。融合算子内部的循环和分块逻辑在 Kernel 编译期已经展开运行时不产生额外调度开销。GE 如何连接 RuntimeGraph Compiler 产出的 Task 列表需要通过 Runtime 才能真正执行。GE 和 Runtime 的接口很简单——GE 把 Task 推送到 Runtime 的 Stream 里。一个 Task 包含Kernel 句柄指向编译好的算子二进制输入 Tensor 的显存地址列表输出 Tensor 的显存地址列表Stream ID任务应该提交到哪个 StreamGE 把这些 Task 按依赖关系排序后逐个调用aclrtLaunchTask提交到 Runtime// GE 把 Task 提交到 Runtimefor(autotask:optimized_task_list){aclrtLaunchTask(task.kernel,task.input_addrs,task.output_addrs,task.stream_id);}Runtime 拿到 Task 后把 Task 推送到对应 Stream 的硬件队列。Stream 调度器根据 Task 的 Event 依赖关系决定执行顺序。Transformer 推理中的 GELLaMA-7B 加载时的 GE 优化统计优化项原始图GE 优化后减少算子节点数1,24728677%中间 Tensor 数89217480%显存分配大小3.8GB1.2GB68%Task 数1,24728677%77% 的算子被融合或消除。80% 的中间 Tensor 不需要显存分配在片上 L1 流转或复用已有显存。模型从 3.8GB 降到 1.2GB 的显存占用。GE 的优化收益在 Transformer 这类规整结构的模型上最明显——重复的 Decoder Block、固定的 Attention 模式、确定的 FFN 结构Graph Compiler 的模式匹配引擎对这类图的识别率很高。继续学习GE 做完图优化后输出的优化执行计划交给 Runtime 执行。理解了 GE 的图编译和优化机制就理解了模型从 ONNX 到真正在 NPU 上执行中间经过了哪些步骤。GE 图执行引擎graph-autofusion 自动融合框架GE 的轻量级 vs 全量编译GE 的 Graph Compiler 有两种工作模式。全量编译在 ATC 模型转换时触发——完整跑一遍所有优化 Pass产出最终的执行计划。轻量级编译在 OM 模型加载时触发——如果 OM 中已经包含 ATC 编好的执行计划GE 只做必要的最小量优化如动态 Shape 的内存重分配。轻量级编译的典型场景模型已在 ATC 阶段优化过加载 OM 时 GE 不需要重新做算子融合和内存分析。加载时间从几秒降到几十毫秒。GE 在多模型场景中的角色同时部署多个模型时GE 为每个模型维护独立的图执行环境。模型 A 的优化决策不影响模型 B。但 GE 可以在 Runtime 层共享公共资源——比如算子 Kernel 的二进制缓存。模型 A 和模型 B 共用相同形状的 GEMM 时Runtim 不会重复编译 Kernel。多模型场景下 GE 的监控接口输出每个模型的图优化统计——融合率、内存复用率、Task 数量。这些指标可以帮助判断某个模型的部署配置是否需要调整。GE 在图编译阶段的调试方法GE 的 Graph Compiler 支持导出中间图用于调试# 导出 GE 优化后的计算图exportDUMP_GE_GRAPH2# 图以 pbtxt 格式输出到 /tmp/ge_graph/导出的文件可以用 Netron 或脚本可视化。对比融合前后的图结构检查哪些算子被 GE 融合了、哪些没被融合。如果发现预期应该融合的算子没有被融合检查该模式是否在 GE 的融合规则表中——或者检查中间 Tensor 的 L1 容量是否足够。常用检查点融合前的图有多少节点融合后的图有多少节点没有被融合的算子链中哪些因为 L1 限制、哪些因为执行单元冲突总结GE 是 CANN 推理链路中最容易被低估的组件。它不直接产出性能数字但没有 GE 的图编译和优化Runtime 拿到的就是一张原始的 ONNX 算子列表——每个算子独立调度、独立分配内存。GE 的图优化做得好不好直接决定了模型推理性能的上限。理解 GE 的图编译和优化机制是深入 CANN 推理性能优化的必经之路。从 Graph Compiler 的融合 Pass到内存分析的复用策略再到 Task 生成和下发——每一步都决定了计算图最终在 NPU 上的执行效率。GE 在大型模型上的表现在 LLaMA-70B 的张量并行场景中GE 需要同时管理多张卡的图执行计划。每张卡的 GE 实例独立执行——卡 0 的 GE 优化 Block 1-20 的计算图卡 1 的 GE 优化 Block 21-40——不跨卡同步。跨卡的图优化由训练框架DeepSpeed、Megatron-LM在模型切分阶段完成GE 只负责单卡部分的图执行优化。这种分工让 GE 在大模型场景中保持了图编译的独立性——每张卡的算子融合和内存分配不需要知道其他卡的图结构。GE 的优化复杂度不随卡数增加而增长。参考仓库GE 图执行引擎graph-autofusion 自动融合框架

相关文章:

GE 图执行引擎:CANN 推理的计算图编排中心

在 CANN 的五层架构里,GE 处在 AscendCL 和 Runtime 之间的枢纽位置。它不直接参与算子计算,不管理 NPU 资源,但它决定了"这张计算图怎么跑"——算子的执行顺序、哪些可以并发的、哪些可以融合的、中间 Tensor 放哪。 GE&#xff…...

以灵活测试方案打造共享实验室,强化槟城IC设计生态系统

益莱储(Electro Rent) InvestPenang|IC 设计验证与特性表征共享实验室马来西亚槟城正积极推进其成为亚洲领先的半导体枢纽。在 InvestPenang 主导的「Penang Silicon Design 5KM(PSD5KM)」计划下,全新的 I…...

ops-rand:AI 训练中的随机数生成

AI 训练离不开随机数。权重初始化要随机、Dropout 要随机、数据打乱要随机、噪声注入要随机。每一次随机操作的背后,都有一组随机数生成器在工作。 CANN 的 ops-rand 仓库提供了 NPU 上的随机数生成算子——Dropout、随机 Shuffle、随机初始化、正态分布采样等。这…...

AzurLaneAutoScript深度解析:如何构建智能化的碧蓝航线自动化解决方案

AzurLaneAutoScript深度解析:如何构建智能化的碧蓝航线自动化解决方案 【免费下载链接】AzurLaneAutoScript Azur Lane bot (CN/EN/JP/TW) 碧蓝航线脚本 | 无缝委托科研,全自动大世界 项目地址: https://gitcode.com/gh_mirrors/az/AzurLaneAutoScript…...

戴尔G15散热终极控制:开源TCC-G15高效替代方案完全指南

戴尔G15散热终极控制:开源TCC-G15高效替代方案完全指南 【免费下载链接】tcc-g15 Thermal Control Center for Dell G15 - open source alternative to AWCC 项目地址: https://gitcode.com/gh_mirrors/tc/tcc-g15 对于戴尔G15笔记本用户而言,过热…...

[qemu+kvm]: vfio调用流程

透传pcie设备全流程: QEMU测:vfio_realize->-> vfio_get_group->open("/dev/vfio/group id")-> 进入内核态->vfio_group_fops_open //分配group, filep->private_data group;注意:/dev/vfio/group …...

2026数字营销岗位需要具备的能力有哪些

数字营销这几年变化很快,到了2026年,岗位要求已经不再只是“会投放、会写文案、会做表格”这么简单了。很多职场人都能明显感觉到:过去靠经验拍脑袋做营销,越来越难;未来真正有竞争力的人,往往是那些既懂业…...

终极QRazyBox指南:免费在线修复损坏二维码的完整教程

终极QRazyBox指南:免费在线修复损坏二维码的完整教程 【免费下载链接】qrazybox QR Code Analysis and Recovery Toolkit 项目地址: https://gitcode.com/gh_mirrors/qr/qrazybox 你是否遇到过重要二维码因为打印模糊、水渍污损或物理磨损而无法扫描的困扰&a…...

AI大模型推理并行策略:DP、TP、PP、SP、EP的基本原理

在做大模型推理部署的时候,经常会碰到模型参数量太大,一块GPU的显存装不下,或者单块GPU的算力跟不上推理速度的情况,这时候就需要用并行策略来解决这些问题。 因为计算的流程不一样,推理和训练用到的并行策略在实现上也不一样。 这篇文章就是帮大家快速搞懂常见并行策略…...

美联储加息降息,如何牵动美黄金价格?

在国际金融市场中,美联储的加息、降息政策,是影响美黄金价格最核心的因素之一。很多普通投资者看不懂复杂术语,小编将从机会成本、美元强弱、市场预期三个关键点,让大家轻松看懂金价涨跌逻辑。黄金本身是无息资产,不会…...

终极解决方案:在Chrome浏览器中实现密码无缝同步

终极解决方案:在Chrome浏览器中实现密码无缝同步 【免费下载链接】ChromeKeePass Chrome extensions for automatically filling credentials from KeePass 项目地址: https://gitcode.com/gh_mirrors/ch/ChromeKeePass 你是否厌倦了每次登录网站时都要手动从…...

OpenRPA完全指南:免费开源的企业级RPA自动化终极方案

OpenRPA完全指南:免费开源的企业级RPA自动化终极方案 【免费下载链接】openrpa Free Open Source Enterprise Grade RPA 项目地址: https://gitcode.com/gh_mirrors/op/openrpa OpenRPA是一款免费开源的企业级RPA(机器人流程自动化)软…...

13个 AI Agent 的基础概念

1、AgentAgent依靠大语言模型作为核心,同时拥有任务规划、信息记忆以及工具调用三大能力,能够自行拆分繁杂任务,反复执行操作,接收实时反馈并一步步推进流程直至任务收尾。它跳出了单纯输出文字的局限,不再只会被动听从…...

计算机网络知识点全面总结(有这一篇就够了!!!)

计算机网络知识点全面总结(有这一篇就够了!!!) 一、计算机网络概述 1.1 计算机网络的分类 按照网络的作用范围:广域网(WAN)、城域网(MAN)、局域网&#xff…...

为OpenClaw智能体工作流配置Taotoken作为统一模型服务源

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 为OpenClaw智能体工作流配置Taotoken作为统一模型服务源 在构建基于智能体(Agent)的自动化工作流时&#x…...

从 AI 工具到音乐生态:可酷加速布局,构建数字音乐全新基础设施

当数字音乐行业从流量竞争迈入生态竞争的新阶段,单一产品的功能边界已难以支撑企业长期增长,完善的生态协同能力逐渐成为企业突围的核心竞争力,也成为定义行业未来格局的关键变量。在此背景下,可酷公司近日对外披露其全新发展战略…...

Robo 3T:原生跨平台MongoDB管理工具的架构解析与技术实践

Robo 3T:原生跨平台MongoDB管理工具的架构解析与技术实践 【免费下载链接】robomongo Native cross-platform MongoDB management tool 项目地址: https://gitcode.com/gh_mirrors/ro/robomongo Robo 3T作为一款原生跨平台的MongoDB管理工具,为开…...

收藏 | LangChain vs LlamaIndex:大模型应用开发框架深度解析,小白也能轻松入门!

本文深入对比了LangChain和LlamaIndex两大框架的核心定位、功能模块及适用场景。LangChain是一个通用的LLM应用编排框架,通过LangGraph支持复杂Agent流程;LlamaIndex则专注于数据索引和检索,提供丰富的数据连接器和索引类型。文章还介绍了如何…...

以 AIGC 贯通设计 — 生产 — 营销:集之互动推动服装电商供应链进入全域协同新阶段

在快时尚主导、高频上新成为标配、流量窗口以周甚至以天计算的今天,服装电商的核心竞争力早已从单一的产品力、营销力,转向全链路供应链效率的竞争。当前行业普遍面临的痛点不再是某一环节的短板,而是全链路割裂:设计端与市场需求…...

2026年主流一键生成论文工具全攻略(含免费额度说明)

以下是当前学术圈口碑 TOP 的6 款 AI 写论文工具,覆盖从选题、开题到降重、答辩的论文全流程,剔除冗余工具,每款均附分步骤实操指南场景适配技巧,重点突出中文论文适配性,新手也能快速上手,效率翻倍。一、全…...

AIoT网关50+AI算法硬核加持,AIoT边缘计算赋能千行百业

在物联网与人工智能深度融合的时代,边缘侧的智能感知与决策能力成为行业数字化转型的核心。计讯物联TG465系列5G AIoT边缘计算机,以50成熟视觉AI算法为核心,搭载工业级强悍硬件,打造"AIIoT深度融合"的多模态智能体&…...

Diablo Edit2:5分钟掌握暗黑破坏神2终极角色编辑器

Diablo Edit2:5分钟掌握暗黑破坏神2终极角色编辑器 【免费下载链接】diablo_edit Diablo II Character editor. 项目地址: https://gitcode.com/gh_mirrors/di/diablo_edit 你是否厌倦了在暗黑破坏神2中反复刷装备的无尽循环?是否因为技能点分配失…...

Sunshine游戏串流终极指南:5大优化策略实现300%性能提升

Sunshine游戏串流终极指南:5大优化策略实现300%性能提升 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine Sunshine作为一款开源自托管的游戏串流服务器,为Mo…...

通过TaotokenCLI工具一键配置多开发环境提升团队协作效率

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 通过Taotoken CLI工具一键配置多开发环境提升团队协作效率 在团队协作开发中,一个常见的挑战是确保所有成员都能快速、…...

备考执业兽医考试哪里有免费资料可以领?

备战执业兽医考试,是不是还在四处搜罗备考资料?网上资源杂乱老旧、版本参差不齐,要么内容不全,要么找不到重点,浪费大把时间还没头绪。不用再盲目翻找、费心整理了!给大家推荐一个能免费领执业兽医全科资料…...

荷兰电商/教育/客服三大场景语音部署手册,含NL方言变体(Flemish Randstad)适配清单

更多请点击: https://codechina.net 第一章:荷兰语音技术生态与NL方言变体战略定位 荷兰语音技术生态正经历从标准荷兰语(Algemeen Nederlands, AN)向多维方言适应能力演进的关键阶段。NL方言变体——包括弗里斯兰语(…...

告别本科论文 “从零焦虑”:okbiye AI 写作如何用 “全流程定制” 终结熬夜改稿循环

okbiye-免费查重复率aigc检测/开题报告/毕业论文/智能排版/文献综述/AI PPT毕业论文 - Okbiye智能写作https://www.okbiye.com/ai/bylw 本科论文写到崩溃,是每个毕业生都懂的痛。 我见过凌晨三点的宿舍走廊,有人对着 Word 文档掉眼泪;也见过…...

二年级下册语文看图写话作文:长大以后做什么

二年级下册语文《长大以后做什么》看图写话,重点是:长大想做什么职业为什么想做以后会怎么努力老师最喜欢“有梦想 有原因 有行动”的内容。我用夸克网盘分享了「二年级下册语文作文」,链接:https://pan.quark.cn/s/3ee38f2d976…...

FLUX.1-dev-Controlnet-Union:一站式多模态图像控制解决方案,让AI生成更精准可控

FLUX.1-dev-Controlnet-Union:一站式多模态图像控制解决方案,让AI生成更精准可控 【免费下载链接】FLUX.1-dev-Controlnet-Union 项目地址: https://ai.gitcode.com/hf_mirrors/InstantX/FLUX.1-dev-Controlnet-Union 你是否曾经在AI图像生成中遇…...

5分钟打造你的桌面股票看板:TrafficMonitor股票插件完整指南

5分钟打造你的桌面股票看板:TrafficMonitor股票插件完整指南 【免费下载链接】TrafficMonitorPlugins 用于TrafficMonitor的插件 项目地址: https://gitcode.com/gh_mirrors/tr/TrafficMonitorPlugins 还在为错过重要股票行情而烦恼吗?想在工作时…...