Canary:基于动态树的拥塞感知网内Allreduce
分布式、并行与集群计算
2023-09-29 v1 网络与互联网体系结构
摘要
allreduce操作是许多分布式应用(从深度学习模型训练到科学计算)的基本构建块。在allreduce操作中,来自多个主机的数据被聚合在一起,然后广播给参与该操作的每个主机。通过在网络中直接聚合数据,allreduce性能可提升一倍。交换机在将部分聚合结果转发至下一跳前,先聚合来自多个端口的数据。在所有现有方案中,每个交换机都需知晓将从中接收待聚合数据的端口。然而,这迫使数据包遍历预定义的一组交换机,使这些方案易于发生拥塞。为此,我们设计了Canary,首个拥塞感知网内allreduce算法。Canary使用负载均衡算法将数据包转发至最不拥塞的路径。由于交换机不知将从哪些端口接收待聚合数据,它们采用超时机制以尽力而为方式聚合数据。我们开发了P4 Canary原型并在Tofino交换机上评估。随后通过大规模网络仿真验证Canary,相较最先进方案性能提升高达40%。
引用
@article{arxiv.2309.16214,
title = {Canary: Congestion-Aware In-Network Allreduce Using Dynamic Trees},
author = {Daniele De Sensi and Edgar Costa Molero and Salvatore Di Girolamo and Laurent Vanbever and Torsten Hoefler},
journal= {arXiv preprint arXiv:2309.16214},
year = {2023}
}