TorchNeuron:PyTorch 代码改一行跑上 AWS Trainium
把 Trainium 注册成标准 PyTorch 设备,模型加一个 .to('neuron') 就能跑,不用重写也不用手工移植
工具界面
官方产品页见下方说明
功能特点
- ✓ 通过 PrivateUse1 官方扩展点注册 Trainium,torch.nn、torch.tensor、torch.autocast、torch.distributed、torch.profiler 全按原样工作
- ✓ 支持 Trainium2 与 Trainium3;eager、实验性 adaptive eager、torch.compile 与 NKI 自定义算子在同一条链上
- ✓ DDP、FSDP2 等标准分布式 API 不需要改写,直接跑
- ✓ Apache 2.0 开源,仓库在 github.com/aws-neuron/torch-neuronx,2026 年 10 月 20 日起公开 Beta
- ✓ Hugging Face 已把 Trainium 作为 Transformers 与 Diffusers 的原生后端
使用步骤
- 在 Trainium 实例上安装 torch-neuronx 公测版并按官方文档配置运行环境
- 用 torch.accelerator 写设备无关代码,或者直接把模型改成 .to('neuron')
- 需要编译优化时先调一次 torch.compiler.set_default_backend("neuron"),再 model.compile()
- 用熟悉的 torch.profiler 采集,再在 Neuron Explorer 里把每个事件回溯到源码行定位瓶颈
常见问题
迁移要把代码改多少?
最简情况只有一个改动:模型加 .to('neuron')。用 torch.accelerator API 写的现代代码无需修改;要走编译路径时额外指定一次 neuron backend,即 torch.compiler.set_default_backend("neuron")。
支持哪些芯片?
官方说明覆盖 Trainium2 与 Trainium3。它是通过 PyTorch 的 PrivateUse1 扩展点注册成标准设备的,不是另起一套框架。
许可证和获取方式?
Apache 2.0 开源,仓库为 github.com/aws-neuron/torch-neuronx,2026 年 10 月 20 日在 PyTorch Conference North America 期间以公开 Beta 形式发布。
能写自定义算子吗?
可以,走 Neuron Kernel Interface(NKI)。另外 eager 模式适合研究和调试,adaptive eager 是实验性的性能增强模式,生产性能则交给 torch.compile。
分布式训练要改写法吗?
不需要。DDP、FSDP2 这些标准分布式 API 按原样即可运行,profiler 也仍然是 torch.profiler,只是 trace 可以在 Neuron Explorer 里查看。
信息来源:PyTorch 官方博客《Introducing TorchNeuron: Native PyTorch backend for AWS Trainium》(2026-10-19 发布,2026-10-20 开源公测)。