【分布式】NCCL部署与测试 - 01

摆烂了整整一年。
工作的事情,真的影响心情。

目录

  • NCCL
    • 简述
    • 背景
    • COMMUNICATION AMONG TASKS
      • P2P,点对点通信
      • CC, 集合通信
      • Broadcast, 广播
        • Scatter,单发多收
        • Gather,多发单收
        • All Gather
        • Reduce
        • All Reduce
        • Reduce-Scatter
        • All to All
    • 可能存在的问题
  • 代码结构
    • 编译
    • 测试
    • 其他
      • 1、Group
      • 2、Sendrecv

NCCL

简述

NCCL(NVIDIA Collective Communications Library)是一种由NVIDIA开发的高性能通信库,专门用于加速多GPU系统中的并行计算工作负载。NCCL旨在优化多GPU之间的数据传输和通信,以实现更快的并行计算速度。

也就是说NCCL可以加速GPU通信,降低通信开销

NCCL具备以下通信模式(后文有详细介绍):
点对点通信:允许两个特定的GPU之间直接交换数据。
群集通信:NCCL还支持集体通信,这些操作涉及多个GPU之间的数据交换

NCCL还具有的其他功能
拓扑感知通信:识别多GPU系统的拓扑结构,并优化通信以最大程度地减少通信延迟和带宽消耗。
异步通信:允许计算操作与通信操作并行执行,从而提高了系统的效率。

背景

是什么限制了并行计算应用?
1 并行计算任务的效率

  • 可供使用的并行数量
  • 分配给每个处理器的任务

2 各个任务之间的通信开销

  • 通信量
  • 计算与通信的重叠程度

COMMUNICATION AMONG TASKS

任务之间有哪些通讯模式
Point-to-point communication (P2P, 也就是点对点)

  • 单一发送方,单一接收方
  • 高效通信相对好实现

Collective c

你可能感兴趣的:(分布式,分布式,NCCL,c++)