NCCL基本介绍-程序员宅基地

技术标签: deep learning  机器学习  深度学习  pytorch  分布式  

前言

调研一下NCCL,所以在这里记录一下。

参考:

NCCL DOCUMENTATION
NCCL Slide
浅谈GPU通信和PCIe P2P DMA

简介

NCCL是NVIDIA的集合通信库,能实现Collective通信和点对点通信,关注与GPU间的通信,而不是一个并行编程框架。

collective communication
  • AllReduce
  • Broadcast
  • Reduce
  • AllGather
  • ReduceScatter
    此外,因为支持点对点通信,所以也允许scatter(one-to-all)、gather(all-to-one)和all-to-all通信。
支持多种GPU并行
  • 单机多卡
  • 多机多卡
  • 单线程控制多GPU
  • 多线程控制多GPU
  • 多进程控制多GPU
使用C语言的api

可被方便的调用。

底层通信

通信

  • 单机多卡:通过NVLink、PCIe进行通信。
  • 多机多卡:通过socket也就是以太网或者Infiniband进行通信。
PCIe

PCIe
在GPU之间的通信中,有两种:

  • CPU控制的GPU通信:
    GPU通信1
    GPU运算完成后,将数据同步给CPU,由CPU执行MPI通信。都需要通过PCIe。
  • GPU控制的GPU通信:
    GPU通信2
    GPU独立发起通信,并和网络设备进行同步。但是要消耗部分GPU计算资源来完成通信,并且GPU控制通信的效率可能并不高。同样需要经过PCIe。

以上两种情况应该都需要GPU的数据复制到CPU上作为中转。由于PCIe,GPU之间的通信限制到了几十Gb/s

NVLink:

能够提供比PCIe能快的传输速度,可通过桥接器连接两块NVIDIA显卡,实现上百GB/s的传输速度。而NVSwitch可将多个 NVLink 加以整合,实现多NVIDIA显卡互联。
NVLink

Infiniband:

是为大规模数据中心设计的网络架构,主要用在高性能计算领域。可以绕过操作系统内核创建应用程序间通信的直接通道,为应用程序提供延迟极低的消息传输服务。带宽高,延时低。带宽已经发展到400Gb/s

GPU Direct

参考:
P2P peer-to-peer on NVIDIA RTX 2080Ti vs GTX 1080Ti GPUs
浅析GPU通信技术

  • P2P:
    是解决一个节点内的GPU通信。
    • 简单来说就是实现GPU之间的相互通信,而不需要GPU的数据复制到CPU host memory上作为中转。
    • 如果将NVLink取代PCIe,其延迟更低,带宽更高。但是只在内存访问或GPU之间的传输。除非是IBM Power才能连接CPU。
      P2P
  • RDMA(Remote Direct Memory Access):
    GPU和网卡可以直接通过PCIe进行数据交互,避免了跨节点通信过程中内存和CPU的参与。从而实现GPU可以直接访问其他节点的GPU内存。
    RDMA
    实现既可以通过以太网也可以使用InfiniBand。
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_43219379/article/details/123436895

智能推荐

Ceph运维手册!免费下载_ceph 维护命令 pdf下载-程序员宅基地

文章浏览阅读198次。Ceph是当前非常流行的开源分布式存储系统,具有高扩展性、高性能、高可靠性等优点,作为主流的分布式存储技术之一,ceph越来越成为运维工程师技能树的必备要件。今天分享的ceph运维手册可谓含金量十足,汇总了Ceph在使用中常见的运维和操作问题,主要用于指导运维人员的相关工作。存储方面的新手,在对Ceph有了基础了解之后,也可以通过本手册进一步深入Ceph 的使用和运维。【领取方式戳这里】由于内容过多,在此只以截图展示部分内容,详细完整版的文档免费领取方式请见文末。目录详情:资料整理自网络_ceph 维护命令 pdf下载

GitHub 标星 11000+,阿里开源微服务如何连续 10 年扛住双十一大促_github 标星 11000 ,阿里开源的微服务组件如何连续 10 年扛住双十一大促?-程序员宅基地

文章浏览阅读1.7k次。云栖号资讯:【点击查看更多行业资讯】在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来!作者 | 宿何,阿里云高级开发工程师责编 | 唐小引封图 | CSDN 下载自东方 IC出品 | CSDN(ID:CSDNnews)疫情期间,“卡”成了很多人线上体验的关键词。线上预约购买口罩时,突然不能付款了;在线选课,被提示请求过多,系统无法响应;在线办公/教学时,图像或声音..._github 标星 11000 ,阿里开源的微服务组件如何连续 10 年扛住双十一大促?

深源恒际上线二代个人信用报告OCR识别服务-程序员宅基地

文章浏览阅读1.1k次。1月中旬,央行征信中心启动了二代征信系统切换上线工作,开始面向社会公众和金融机构开放二代格式信用报告查询服务。随后,深源恒际及时跟进信用报告OCR识别产品的升级工作。目前产品迭代已完成,深源恒际将于本周内上线二代个人信用报告OCR识别服务。信用报告OCR识别产品主要面向信贷服务机构,提供基于个人信用报告的信息自动化识别与提取服务。基于OCR识别技术结合专项训练方法构建的信用报告识别专用模型,自...

(程序员必备技能)Markdown语法_markdown语法 程序员-程序员宅基地

文章浏览阅读3k次。斜体和粗体输入:*斜体*或_斜体_**粗体*****加粗斜体***~~删除线~~显示效果:斜体或_斜体_粗体加粗斜体删除线分级标题输入: 这是一个一级标题 ============================ 这是一个二级标题 -------------------------------------------------- #..._markdown语法 程序员

SVG 中的基础图形(rect , line ,circle 等)以及在 D3.js 中的应用_cor-rect直线对应-程序员宅基地

文章浏览阅读4.1k次。SVG 中的基础图形(rect , line ,circle 等)以及在 D3.js 中的应用文章目录SVG 中的基础图形(rect , line ,circle 等)以及在 D3.js 中的应用矩形 - rect直线 - line圆形 - circle椭圆 - ellipse在 D3.js 中,根据要展示的数据,我们挑选合适的 svg 中的基础图形,然后进行一系列的设置等,使其达到我们的要求..._cor-rect直线对应

栈的运用(中缀表达式转换为后缀表达式,并对后缀表达式求值。)_利用栈,把中缀表达式转化未后缀表达式,对后缀表达式求值-程序员宅基地

文章浏览阅读3k次,点赞3次,收藏7次。中缀表达式转换成后缀表达式的基本思想: 顺序扫描中缀表达式: 若读入的是一个运算分量,则输出; 若读入的是一个左括号,则入栈,栈中左括号的优先级被视为比任何操作符都低。 若读入的是一个操作符(如 + 或 -),其级别比栈顶元素级别高,则入栈,否则,栈顶元素出栈,输出。 若读入的是右括号,栈中元素出栈,输出,直到碰到左括号,左括号出栈,但不输_利用栈,把中缀表达式转化未后缀表达式,对后缀表达式求值

随便推点

如何生成ROM的coe文件_rom存coe-程序员宅基地

文章浏览阅读2.8k次,点赞4次,收藏15次。在生成ROM时需要提供coe文件,如下图所示。这个coe文件本质上就是Memory的初始化文件,Xilinx对其有具体的格式要求。coe文件格式coe文件格式要求如下图所示,其中前两行是固定的。其中第一行定义了Radix,可以是2、10或16,意味着第2行定义的数据向量内容可以是二进制、十进制或十六进制。这里需要说明的是定义的数据向量各个数据之间可以是空格,也可以是逗号(但此时最后一个数据要以分号结尾)或者回车换行符。生成coe文件Matlab作为主流的算法开..._rom存coe

oca认证_OCA第2部分中的Java难题-程序员宅基地

文章浏览阅读145次。oca认证 欢迎使用OCA的Java Puzzlers的第二部分。 在这一部分中,我们将看到一个有趣的案例,涉及Java 7附带的数字文字中的下划线分隔符。 在下面的类中,您可以在十进制文字中看到分隔符下划线。 还请注意,该类现在可以正常编译。 八进制是八进制表示形式,二进制是二进制,我敢肯定你不会猜十六进制。 public class Puzzler { public stati..._java认证oca

华为鸿蒙家电物联网,华为“鸿蒙”来了:本身是为了做物联网,将比安卓速度快60%...-程序员宅基地

文章浏览阅读70次。8月9日,华为2019年开发者大会将于开幕。今年的华为开发者大会,共分为主题演讲、技术论坛和Codelabs。其中8月9日为主题演讲、10日和11日则是开发者活动。目前官方也正式放出了本次开发者大会的邀请函,据悉这次华为会将重点集中在5G落地、物联网、AI等领域,预计有200+专题分享、1500位合作伙伴、5000名全球开发者。“最快今年秋天,最晚明年春天,华为自研操作系统即将面世”,一个月前,面..._华为电视物联网

华为 1+X 网络系统运维与建设中级实操模拟题_华为1+x网络系统建设与运维中级模拟题在哪做-程序员宅基地

文章浏览阅读6.1k次,点赞16次,收藏85次。华为 1+X 网络系统运维与建设中级实操模拟题实验报告_华为1+x网络系统建设与运维中级模拟题在哪做

阿里云云盾 · 云防火墙获WitAwards2017年度创新产品大奖,领奖词太燃!_阿里云 云防火墙 正式上线 2017-程序员宅基地

文章浏览阅读521次。点击有惊喜12月14日,在Freebuf 互联网安全创新大会上,阿里云云盾· 云防火墙捧得WitAwards2017互联网安全评选“年度创新产品”大奖。这已是阿里云安全团队及云盾产品,连续三年获得WitAwards奖项。阿里云云盾· 云防火墙是国内首款基于可视化的微隔离产品。评选委员会认为:阿里云云盾 · 云防火墙可以让企业在零配置的情况下,自动实现业务_阿里云 云防火墙 正式上线 2017

linux主机下扩展xp虚拟机的磁盘空间_如何给linux中的winxp增加存储空间-程序员宅基地

文章浏览阅读647次。1.使用VBoxManage modifyhd命令设置vdi文件的大小,例如,设置vdi文件大小为32G VBoxManage modifyhd /home/yunxian_19/VirtualBox\ VMs/winXP/winXP.vdi --resize 32768命令行输出 0%...10%...20%...30%...40%...50%...60%...70%...80%..._如何给linux中的winxp增加存储空间

推荐文章

热门文章

相关标签