ROCm/rccl

[DEPRECATED] Moved to ROCm/rocm-systems repo

解决的问题

RCCL(ROCm 通信集体库)提供了一套 GPU 的标准化通信例程。它解决了在单个节点内或集群中分布在多个节点上的多个 GPU 之间高效传输和同步数据的问题。

工作原理

RCCL 实现了 all-reduce、all-gather、reduce、broadcast、reduce-scatter、gather、scatter 和 all-to-all 等标准集体通信模式,以及 GPU 到 GPU 的直接发送和接收操作。它使用经过优化的环形和树形算法,以最大化吞吐量并最小化延迟。该库针对 PCIe、xGMI、InfiniBand Verbs 和 TCP/IP 套接字等多种硬件接口进行了高带宽优化。

适用对象

专为使用 AMD GPU 上的 ROCm 软件栈开发高性能计算(HPC)和 AI 应用的开发者设计,这些应用通常需要多 GPU 扩展和同步。

主要亮点

  • 全面的集体操作:支持 all-reduce、all-gather 等多种标准通信例程。
  • 高带宽优化:针对 PCIe、xGMI、InfiniBand 和 TCP/IP 进行优化。
  • 灵活部署:支持单节点或跨多个节点的任意数量 GPU。
  • 多进程支持:兼容单进程或多进程(如 MPI)应用程序。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目