PyTorch 将 ExecuTorch 扩展至 Arm Cortex-M:实现边缘端模型原生部署

ADK PyTorch官方 / ADK编译 2026-10-15 4 分钟 45 次浏览
速览导读 / Summary

PyTorch 官方宣布将 ExecuTorch 扩展至 Arm Cortex-M CPU,彻底消除微控制器(MCU)部署时跨框架转换的痛点。新后端支持从 Scalar 到 Helium 的全能力层级,利用 CMSIS-NN 库实现 INT8 量化加速。实测显示,在 Alif Ensemble E8 上,MLPerf Tiny 套件中的模型运行时间均低于 21.5ms,内存占用控制在 90 KiB 以内,且无需额外工具链即可直接运行 PyTorch 训练模型。

核心运行时大小 < 20 KiB ExecuTorch 核心运行时 Flash 占用
模型运行时间 < 21.5 ms MLPerf Tiny 套件模型在 Cortex-M55 上的运行时间
内存占用 < 90 KiB 单核 Cortex-M55 上的内存占用
支持架构 Cortex-M0 至 M85 覆盖从超低成本到高性能的完整 MCU 谱系

Key Insights / 核心看点

  • 1 彻底消除 MCU 部署时的跨框架转换步骤,实现 PyTorch 模型的原生运行。
  • 2 支持 Cortex-M 全能力层级(Scalar/DSP/MVE/Helium),利用 CMSIS-NN 库实现 INT8 量化加速。
  • 3 极致轻量:核心运行时仅 20 KiB Flash,实测模型运行时间<21.5ms,内存占用<90 KiB。
  • 4 编译时深度优化:包括图级计算消除、量化参数折叠及静态内存规划,无运行时开销。

PyTorch 将 ExecuTorch 扩展至 Arm Cortex-M:实现边缘端模型原生部署

背景:打破 MCU 上的 PyTorch 部署壁垒

微控制器(MCU)作为物联网、可穿戴设备和工业传感器的核心,正面临日益增长的机器学习推理需求。然而,由于资源极度受限(通常小于 1 MB SRAM 和数兆字节 Flash),在 Cortex-M 架构上部署模型曾是一个难题。

过去,开发者若使用 PyTorch 进行训练,必须将模型转换为其他框架格式(如 TensorFlow Lite 或 ONNX),并维护独立的工具链。这不仅引入了跨框架的数值不匹配风险,还增加了迭代周期中的摩擦成本。对于在顶级 ML 会议上发布超过 90% 研究代码的 PyTorch 团队而言,这种转换步骤是巨大的障碍。

核心突破:Cortex-M 后端与原生支持

PyTorch 推出的 ExecuTorch Cortex-M 后端 彻底改变了这一局面。它允许 PyTorch 模型直接在 Arm Cortex-M CPU 上运行,并无缝利用 CMSIS-NN(Arm 开源优化的神经网络内核库)进行加速。

1. 全能力层级覆盖

新后端支持 Cortex-M 处理器的所有能力层级,通过单一工作流覆盖不同硬件特性:

  • Scalar 层级:适用于 M0, M0+, M3 等超低成本芯片。
  • DSP 层级:利用 SIMD 乘累加指令,适用于 M4, M7 等中端 MCU。
  • MVE (Helium) 层级:利用 128 位向量操作和基于拍(beat)的执行模型,在 M55, M85 等高性能芯片上提供最大性能增益。

2. 极致轻量与编译优化

ExecuTorch 的核心运行时仅占 20 KiB Flash,且采用按需编译(Selective Build)策略,仅链接模型所需的算子,代码规模随模型而非框架线性增长。

在编译阶段,ExecuTorch 执行了一系列针对 Cortex-M 的优化:

  • 图级计算消除:移除冗余的数据类型转换、量化/反量化对以及内存格式转置。
  • 量化参数折叠:将缩放和零点算术预计算为整数乘法和移位,确保量化核推理完全在定点数域内完成。
  • 权重布局转置:在导出时将 PyTorch 的 OIHW 布局转换为 CMSIS-NN 期望的 OHWI 布局,避免运行时开销。
  • 静态内存规划:支持跨异构内存(如 TCM 和 SRAM)分配,无堆分配器,无碎片,无运行时内存管理。

实测数据:性能与效率双优

团队在 Alif Ensemble E8(搭载 Cortex-M55 核心)上对 MLPerf Tiny 套件中的四个模型进行了基准测试,结果令人印象深刻:

  • 运行时间:所有模型运行时间均 ≤ 21.5 ms。
  • 内存占用:单核 Cortex-M55 内存占用 < 90 KiB。
  • 异构 SoC 支持:对于包含 Ethos-U NPU 的异构 SoC,该后端提供了 CPU 执行路径与 NPU 委托的无缝切换。

价值总结

ExecuTorch 的 Cortex-M 后端不仅填补了 PyTorch 在边缘端的空白,更通过“一次训练,多处部署”的理念,大幅降低了边缘 AI 开发的门槛。开发者现在可以在同一工具链中完成从云端训练到微控制器推理的全流程,无需担心格式转换带来的数值误差或工具链割裂。

“ExecuTorch 消除了这一转换步骤,使 PyTorch 模型能够直接在 Arm Cortex-M CPU 上运行,并利用 CMSIS-NN 加速。它支持从 Scalar 到 Helium 的所有能力层级,并在单一工作流中完成。” —— PyTorch 官方团队

“ExecuTorch eliminates this conversion step entirely.”

— PyTorch 官方团队

同主题深度资讯

查看更多 →
AI 工具 2026-10-16

WonderCV 发布“超级职场攻略”:AI 驱动简历优化与全周期求职赋能

WonderCV(超级简历)于 2026 年 10 月 16 日重磅推出“超级职场攻略”系列,整合 AI 生成、专家点评与行业案例,构建从简历撰写到面试实战的全周期求职体系。通过 AI 简历生成、HR 视角的分数评估及大牛案例库,帮助求职者提升通过率,实现从“白开水”简历到“心动 Offer”的蜕变。

超级简历官方 / ADK编译 4 分钟
模型发布 2026-10-15

OpenAI 宣布 GPT-4o 系列 API 停服:迁移至 GPT-6 Luna 与迁移检查指南

OpenAI 正式宣布 GPT-4o 及 GPT-4.1 系列特定快照将于 2027 年 1 月 14 日停止服务,并推荐迁移至 GPT-6 Luna。开发者需立即盘点代码中的模型 ID,区分新旧截止日期,并通过自动化脚本验证替换后的行为兼容性。本文提供详细的迁移清单与代码检查示例,助开发者规避服务中断风险。

Atoms官方 / ADK编译 5 分钟
AI 工具 2026-10-15

Atoms 发布 Claude Motion:基于代码的动画生成与 MP4 导出功能详解

Atoms 平台正式推出 Claude Motion 的 Beta 版本,支持团队与企业用户创建基于代码的动画。该工具利用文本、图表和图像生成可编辑的 MP4 视频,强调内容准确性而非生成式视频。文章详细阐述了从组织权限配置、提示词编写到最终视频导出的完整工作流,并提供了针对内部演示文稿和定价说明的实战案例。

Atoms官方 / ADK编译 4 分钟
模型发布 2026-10-15

Gemini 3.7 Flash 正式弃用:迁移至 3.8 Flash 及 Deep Research 代理更新指南

Google 宣布 Gemini 3.7 Flash 模型已正式弃用,所有 API 请求自动重定向至 Gemini 3.8 Flash。开发者需显式更新配置,并同步处理 Deep Research 代理的迁移。本文详解参数变更(如 thinking_budget 替换为 thinking_level)、旧版参数废弃清单及自动化迁移检查脚本,确保应用平滑过渡至新架构。

Atoms官方 / ADK编译 5 分钟
code · 免费+付费
★ 5.0 · 120评测
P

PyTorch

开源的机器学习库

PyTorch 是开源的机器学习库,主要用在深度学习研究和应用开发,以灵活性、易用性和强大的 GPU 加速功能而闻名。PyTorch 提供动态计算图,支持开发者在运行时动态修改模型结构,非常适合快速开发和实验。PyTorch 支持张量计算、自动微分(torch.autograd)和模块化的神经网络构建(torch.nn)。PyTorch 拥有丰富的社区支持和大量的预训练模型及教程,是学术界和工业界的首选深度学习框架之一。

查看 PyTorch 使用教程与功能