写点什么

PyTorch Monarch 通过单控制器模型简化了分布式 AI 工作流

作者:Tim Anderson

  • 2025-10-28
    北京
  • 本文字数:946 字

    阅读完需:约 3 分钟

大小:452.19K时长:02:34
PyTorch Monarch通过单控制器模型简化了分布式AI工作流

Meta 的 PyTorch 团队推出了Monarch,这是一个开源框架,旨在简化跨多个 GPU 和机器的分布式 AI 工作流。该系统引入了一个单控制器模型,允许一个脚本协调整个集群的计算,降低了大规模训练和强化学习任务的复杂性,而无需改变开发者编写标准 PyTorch 代码的方式。

 

Monarch 用单控制器模型取代了传统的多控制器方法,即同一脚本的多个副本在不同机器上独立运行。在这种架构中,一个脚本协调一切——从生成 GPU 进程到处理故障——给开发者一种在本地工作的感觉,而实际上却是在整个集群上运行。

 

PyTorch 团队将其描述为将“将单机 PyTorch 的简单性带到整个集群”。开发者可以使用熟悉的 Python 结构——函数、类、循环、future——来定义可以无缝扩展的分布式系统,而无需重写逻辑来手动处理同步或故障。

 

在核心层面,Monarch 引入了进程网格和角色网格,这些是可扩展的分布式资源数组,可以像 NumPy 中的张量一样进行切片和操作。这意味着开发者可以将任务广播到多个 GPU,将它们分成子组,或者使用直观的 Python 代码从节点故障中恢复。在底层,Monarch 将控制与数据分离,允许命令和大型 GPU 到 GPU 传输通过不同的优化通道移动,以提高效率。

 


来源:PyTorch 博客

 

开发者甚至可以使用标准的 Python try/except 块捕获来自远程角色的异常,逐步增加容错性。与此同时,分布式张量直接与 PyTorch 集成,因此即使在数千个 GPU 上运行,大规模计算仍然“感觉”是本地的。

 

系统的后端是用 Rust 编写的,由一个名为 hyperactor 的低级角色框架提供支持,该框架在集群中提供可扩展的消息传递和强大的监督。这种设计允许 Monarch 使用多播树和多部分消息传递高效地分发工作负载,而不会使任何一台主机过载。

 

该系统的发布已经引起了 AI 社区从业者的关注。高级应用 AI 工程师 Sai Sandeep Kantareddy写道

 

Monarch 是朝着以最小阻力扩展 PyTorch 的方向迈出的坚实一步。很好奇它在现实世界的分布式工作负载中的表现——尤其是与 Ray 或 Dask 相比。希望能看到更多关于调试支持和大规模容错性的信息。有希望的开始!

 

Monarch 现在是GitHub上的一个开源项目,包含文档、示例笔记本和 Lightning.ai 的集成指南。该框架旨在使集群规模的协调像本地开发一样直观,为研究人员和工程师从原型到大规模分布式训练提供更平滑的路径。

 

原文链接:

https://www.infoq.com/news/2025/10/pytorch-monarch/

2025-10-28 13:003688

评论

发布
暂无评论

横看Dubbo-微服务治理之无损上线

M

微服务 dubbo 无损

Kubernetes集群授权管理

穿过生命散发芬芳

Kubernetes 6 月 优质更文活动

架构实战营-模块1作业

link

分布式流处理组件-生产实战:Broker节点负载

谢先生F

kafka 负载均衡 broker

火山引擎Dataleap数据质量解决方案和最佳实践(一):数据质量挑战

字节跳动数据平台

数据治理 数据开发 数据质量 数据研发

cdc任务同步错误但不会触发告警问题记录

TiDB 社区干货传送门

故障排查/诊断

理论+实践:从原型链到继承模式,掌握 Object 的精髓(二)

Immerse

英特尔研究院发布全新AI扩散模型,可根据文本提示生成360度全景图

E科讯

OpenHarmony自定义组件

坚果

OpenHarmony 6 月 优质更文活动

时间戳与时区

ScratchLab

头一次见单例模式讲的如此透彻

越长大越悲伤

设计模式 单例模式

大规模 AI 高性能网络的设计与实践

Baidu AICLOUD

大模型训练 RDMA

AI血洗时尚圈!就连这些线上店家都开始用AI生成爆款商品了

Openlab_cosmoplat

人工智能 AI

复旦大学高校专区入驻飞桨AI Studio,优质教育资源等你来学!

飞桨PaddlePaddle

人工智能 百度 paddle 飞桨

自动驾驶发展依旧处于初步阶段

数据堂

敏捷项目管理工具大全

顿顿顿

敏捷项目管理 敏捷工具 scrum工具

Nautilus Chain:模块化Layer3的先行者

股市老人

2023-06-22:一所学校里有一些班级,每个班级里有一些学生,现在每个班都会进行一场期末考试 给你一个二维数组 classes ,其中 classes[i] = [passi, totali] 表

福大大架构师每日一题

算法 福大大架构师每日一题

自动驾驶的必要技术和等级

数据堂

Nautilus Chain:模块化Layer3的先行者

鳄鱼视界

符号接在 busybox 中的妙用

ScratchLab

在高度为h的堆中,元素个数最多和最少分别是多少?

福大大架构师每日一题

ChatGPT

Nautilus Chain:模块化Layer3的先行者

西柚子

Django笔记四十四之Nginx+uWSGI部署Django以及负载均衡操作

Hunter熊

Python nginx django 负载均衡 uwsgi

HAG宣布在INX平台进行STO发行

股市老人

Nautilus Chain:模块化Layer3的先行者

BlockChain先知

基于CC2530设计智慧农业控制系统

DS小龙哥

6 月 优质更文活动

CC2530+ESP8266与手机APP通信

DS小龙哥

6 月 优质更文活动

PyTorch Monarch通过单控制器模型简化了分布式AI工作流_AI&大模型_InfoQ精选文章