前途科技前途科技
  • 服务
  • 关于
  • AI
    • AI 大模型
    • 具身智能
    • 算力芯片
  • 科技
    • 智能终端
    • 软件·互联网
    • 汽车·出行
    • 科学前沿
  • 资源中心
    • 深度研究
      • AI 前沿
      • 教程
      • AI 知识库
      • 案例研究
    • 行业报告
      • 白皮书
      • 行业报告
      • 研究报告
      • 技术分享
      • 专题报告
    • 精选案例
      • 金融行业
      • 医疗行业
      • 教育行业
      • 零售行业
      • 制造行业
  • 服务
  • 关于
联系我们
算力芯片/10.22 · 00:04/4 MIN/编译自 Hugging Face/0 阅读

AWS Trainium系统级性能分析:TorchNeuron实操指南

多数开发者了解如何优化模型推理速度,却较少掌握定位性能瓶颈的系统化方法。本文基于AWS专有AI芯片Trainium及其开源PyTorch后端TorchNeuron,详解系统级性能分析流程,并通过RMSNorm优化展示达6倍的延迟降低。

在机器学习工程中,许多开发者了解让模型快速运行的基本直觉,但面对推理变慢时,往往缺乏系统化的排查手段。本文将以 AWS 专有深度学习芯片 Trainium 为基础,结合其开源原生 PyTorch 后端 TorchNeuron,从零介绍如何分析推理性能瓶颈并定位耗时分布。

TorchNeuron 支持在 Trainium 芯片上执行标准 PyTorch 工作流(包括即时模式、torch.compile 及原生 API),且集成了 Neuron Kernel Interface (NKI) 用于自定义算子开发。

Neuron 与 PyTorch 的底层集成

在开始分析前,需要了解 Neuron 的接入机制。Neuron 后端基于 PyTorch 的 PrivateUse1 扩展接口运行。该机制允许外部加速硬件接入框架,而无需像 CUDA 那样侵入框架核心引入独立的调度键。

配置性能分析器与可视化工具

采集 Neuron 上的性能数据主要依赖两个核心对象:

  • NeuronConfig:指定采集的 Neuron 数据流和 NeuronCore 核心,并设置输出目录。配置 correlate_device_time=True 可以将芯片侧的执行时间同步映射到 PyTorch 性能统计表中。
  • NeuronProfiler:接收配置并提供导出回调,将框架层轨迹文件 trace.json 与底层系统轨迹一并保存。

配套的可视化工具 Neuron Explorer 是基于 Web 的时间线查看器。分析完成后,产物目录会生成系统轨迹以及成对的 .neff(编译后的可执行文件)与 .ntff(底层硬件指令执行轨迹)文件。将这些数据导入 Neuron Explorer 即可清晰查看硬件指令序列。

RMSNorm 算子对比测试

为了直观展示性能差异,测试选用大模型中常见的 RMSNorm 结构,分别测试三种实现:

  1. 原生 PyTorch 基础算子组合:依次执行乘法、均值、加法、平方根倒数和缩放。
  2. 调用官方内置算子 torch.rms_norm():在后端融合成单一 Neuron 内核。
  3. 使用 torch.compile 编译的基础组合。

方案一:基础算子逐个执行

在代码中使用独立的 PyTorch 算子进行计算。调用 torch.profiler 时,必须传入 ProfilerActivity.PrivateUse1 并在循环内执行 torch.neuron.synchronize(),确保芯片执行完毕后再导出数据。

分析导出的 key_averages() 表格并按设备耗时排序,结果如下:

算子名称调用次数CPU 自身耗时Neuron 设备耗时耗时占比
aten::mul360.9 μs1,164.5 μs49.5%
aten::add126.6 μs434.6 μs18.5%
aten::rsqrt115.6 μs415.0 μs17.6%
aten::mean121.1 μs340.8 μs14.5%

设备端总耗时:2.355 ms

性能统计表显示 aten::mul 占用了最大份额的设备耗时

在 Neuron Explorer 的时间线中,事件从上到下依次穿过框架调度、运行时(Runtime)队列,最后到达硬件执行通道(NeuronCore)。未融合的代码中,每个算子都经历了完整的调度链路,在各个操作之间留下了明显的硬件空闲间隙。

标签:AWSTrainiumPyTorch推理优化

想了解 AI 如何助力您的企业?

免费获取企业 AI 成熟度诊断报告,发现转型机会

置顶文章

自己动手做模型:ML Intern 低成本定制小模型实战
置顶

自己动手做模型:ML Intern 低成本定制小模型实战

谷歌Playground的账本:做游戏的人付钱,玩游戏的人免费
置顶

谷歌Playground的账本:做游戏的人付钱,玩游戏的人免费

前途科技前途科技
服务关于快讯技术商业报告
微信咨询二维码

咨询微信

扫码添加微信咨询

前途科技微信公众号

微信公众号

扫码关注

Copyright © 2026 AccessPath.com, 前途国际科技咨询(北京)有限公司,版权所有。|京ICP备17045010号-1|京公网安备 11010502033860号|隐私政策|服务条款

Neuron Explorer 追踪算子从框架层到硬件层的执行过程

依赖链视图高亮显示单个算子的完整生命周期

方案二:使用内置融合算子

将算子替换为 PyTorch 原生的 torch.rms_norm,后端直接下发单一融合内核:

算子名称调用次数CPU 自身耗时Neuron 设备耗时耗时占比
aten::_fused_rms_norm147.6 μs403.3 μs100%

设备端总耗时:403.3 μs

融合后的 RMSNorm 在时间线上呈现为单次设备调用

融合算子避免了多个细粒度算子带来的调度开销

整段计算仅触发一次框架到硬件的调度,硬件连续执行,消除了中间小算子的调度开销。

方案三:通过 torch.compile 自动融合

在原始拆解代码上添加 @torch.compile(backend='neuron', fullgraph=True) 修饰器。TorchDynamo 提取 FX 图并传递给 Neuron 编译器,编译器自动识别算子并进行融合编译:

算子名称调用次数CPU 自身耗时Neuron 设备耗时耗时占比
Torch-Compiled Region198.4 μs375.5 μs100%

设备端总耗时:375.5 μs

编译后图以单一区域形式在性能表中体现

编译图从运行时到硬件同样走单一执行路径

编译器自动完成了内核融合与显存访问优化,Neuron 执行耗时进一步压缩至 375.5 μs。

对比与总结

实现方案Neuron 设备耗时CPU 耗时算子调度次数
基础分散算子2,355 µs约 125 µs6
torch.rms_norm403 µs约 48 µs1
基础算子 + torch.compile376 µs约 98 µs1

测试数据显示,无论是采用内置融合算子还是通过 torch.compile 编译,设备耗时均降至基础实现的六分之一左右。算子融合不仅消除了多次硬件调度之间的间隙,还避免了中间张量在显存与片上缓存间的重复读写。

这套“表格发现热点、轨迹验证瓶颈、融合消除开销”的方法同样适用于大规模模型的调优过程。

微软和Meta收紧Claude:被削掉的是入口,不是模型
置顶

微软和Meta收紧Claude:被削掉的是入口,不是模型

//

24小时热榜

OpenAI携手谷歌云:前沿模型入驻三大云巨头
TOP1

OpenAI携手谷歌云:前沿模型入驻三大云巨头

OpenAI更新使用政策:跨渠道统一安全标准,引入SafetyIDs
TOP2

OpenAI更新使用政策:跨渠道统一安全标准,引入SafetyIDs

3

快狗打车1元甩卖内地业务,更名GOGO科技撤守海外

22小时前
快狗打车1元甩卖内地业务,更名GOGO科技撤守海外
4

苹果折叠屏iPhone Duo首发限量发售

2小时前
苹果折叠屏iPhone Duo首发限量发售
5

美野生动物首现螺旋蝇蛆病例

2小时前
美野生动物首现螺旋蝇蛆病例
6

特斯拉无人出租车11月进军达拉斯

2小时前
特斯拉无人出租车11月进军达拉斯
7

PHP基金会承认决策失误延误修复严重漏洞

2小时前
PHP基金会承认决策失误延误修复严重漏洞
8

英伟达联手六大封测与载板厂商

6小时前
英伟达联手六大封测与载板厂商
热门标签
大模型AgentRAG微调私有化部署Prompt EngineeringChatGPTClaudeDeepSeek智能客服知识管理内容生成代码辅助数据分析金融零售制造医疗教育AI 战略数字化转型ROI 分析OpenAIAnthropicGoogle

关注公众号

前途科技微信公众号

扫码关注,获取最新 AI 资讯

免费获取 AI 落地指南

3 步完成企业诊断,获取专属转型建议

已有 200+ 企业完成诊断