openucx/ucc
Unified Collective Communication Library
解決的問題
UCC 提供統一的 API 和程式庫,用於集體通訊操作,確保在不同硬體與程式設計模型之間,AI/ML、高階運算(HPC)與 I/O 工作負載的高效率與可擴展性。
作用方式
作為一個靈活的通訊層,支援非阻塞操作與鬆散排序模型。整合多種傳輸機制與硬體集體運算,將硬體加速的集體運算視為一等公民。建構於 UCX 之上,支援多種 GPU 後端,包括 CUDA 與 HIP(AMD)。
適用對象
需要在多個處理單元(CPU、GPU 與 DPU)之間高效交換資料的大規模 AI/ML 訓練與 HPC 應用開發人員。
主要特色
- 廣泛的硬體支援:相容 InfiniBand、ROCE、CUDA、NCCL、RCCL 與 SHARP。
- 可擴展的效能:專為高規模 AI/ML 與 HPC 工作負載設計。
- 彈性程式設計:支援重複的集體運算操作(初始化一次,呼叫多次)與非阻塞操作。
- 多執行時整合:支援 Open MPI 與 OpenSHMEM。
相關
- 專案
- 專案
- 專案
- 專案
- 專案