NVIDIA/nccl-tests

NCCL Tests

解决的问题

该项目提供了一套测试,用于验证 NVIDIA Collective Communications Library (NCCL) 的性能和正确性。它使开发人员和系统管理员能够确保多 GPU 和多节点通信以最佳效率运行,并且数据在网络中正确传输。

工作原理

该工具包由一系列二进制文件组成,用于执行各种 NCCL 集体操作(如 Allreduce、Broadcast 和 ReduceScatter)。它可配置为在单个节点上使用多个 GPU 运行,或通过 MPI(消息传递接口)管理进程,在多个节点之间运行。用户可以指定数据大小、GPU 数量和迭代次数,以测量延迟和带宽(特别是 "busbw")。

适用人群

专为从事高性能计算(HPC)和 AI 基础设施的工程师设计,特别是那些使用 NVIDIA GPU 进行大规模模型分布式训练或推理的人员。

主要亮点

  • 性能基准测试:测量各种数据大小和集体操作下的带宽和延迟。
  • 正确性检查:包含 -c 标志,用于验证集体操作结果在数学上是否正确。
  • 多节点支持:与 MPI 集成,可跨多个物理服务器扩展测试。
  • 灵活配置:支持自定义数据类型、归约操作(求和、乘积、最小值、最大值、平均值),以及 CUDA 图捕获以实现优化执行。

相关

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