首页
行业动态
网络学院
TCP/IP
RDMA
IGP & BGP
技术博客
AI & 大模型
云 & 计算
交换机
SDN
流量控制
拥塞控制
网络拓扑
接口 & 协议
存储
RDMA
网络仿真
运维&管理
顶级会议
SIGCOMM
NSDI
APNet
ICNP
其他论文
关于我们
当前位置:
首页
>
云 & 计算
> 正文
【英伟达】NCCL Github仓库介绍
云 & 计算
2023-02-18
14106
更新:2023-03-25 21:47:10
## **NCCL** 优化了 GPU 间通信的原语。 ## **介绍** NCCL(发音为“Nickel”)是一个独立的 GPU 标准通信例程库,实现全归约、全聚集、归约、广播、归约分散以及任何基于发送/接收的通信模式。它经过优化,可在使用 PCIe、NVLink、NVswitch 的平台以及使用 InfiniBand Verbs 或 TCP/IP 套接字的网络上实现高带宽。NCCL 支持在单个节点或跨多个节点安装任意数量的 GPU,并且可用于单进程或多进程(例如 MPI)应用程序。 有关 NCCL 使用的更多信息,请参阅[NCCL 文档](https://link.zhihu.com/?target=https%3A//docs.nvidia.com/deeplearning/sdk/nccl-developer-guide/index.html)。 ## **Build** 注意:NCCL 的官方和测试版本可以从以下网址下载: https: [//developer.nvidia.com/nccl](https://link.zhihu.com/?target=https%3A//developer.nvidia.com/nccl)。如果您选择使用官方Build,则可以跳过以下Build步骤。 Build库: ```text $ cd nccl $ make -j src.build ``` 如果 CUDA 未安装在默认的 /usr/local/cuda 路径中,您可以使用以下命令定义 CUDA 路径: ```text $ make src.build CUDA_HOME=
``` `build/`除非`BUILDDIR`设置,否则将编译和安装 NCCL 。 默认情况下,NCCL 是为所有支持的体系结构编译的。为了加速编译并减少二进制文件的大小,可以考虑重新定义`NVCC_GENCODE`(defined in `makefiles/common.mk`)以仅包含目标平台的架构: ```text $ make -j src.build NVCC_GENCODE="-gencode=arch=compute_70,code=sm_70" ``` ## **安装** 要在系统上安装 NCCL,请创建一个包,然后以 root 身份安装它。 Debian/Ubuntu: ```text $ # Install tools to create debian packages $ sudo apt install build-essential devscripts debhelper fakeroot $ # Build NCCL deb package $ make pkg.debian.build $ ls build/pkg/deb/ ``` RedHat/CentOS: ```text $ # Install tools to create rpm packages $ sudo yum install rpm-build rpmdevtools $ # Build NCCL rpm package $ make pkg.redhat.build $ ls build/pkg/rpm/ ``` 与操作系统无关的压缩包: ```text $ make pkg.txz.build $ ls build/pkg/txz/ ``` ## **测试** [NCCL 的测试在https://github.com/nvidia/nccl-tests](https://link.zhihu.com/?target=https%3A//github.com/nvidia/nccl-tests)上单独维护。 ```text $ git clone https://github.com/NVIDIA/nccl-tests.git $ cd nccl-tests $ make $ ./build/all_reduce_perf -b 8 -e 256M -f 2 -g
``` 参考资料:[https://github.com/nvidia/nccl](https://link.zhihu.com/?target=https%3A//github.com/nvidia/nccl) >
声明:本文素材来源于网络,仅供学习使用,如有侵权请联系网站删除(ngdcn_admin@163.com)。
集合通信库
1
赞
本文由 @NGDCN 于2023-02-18发布在 未来网络技术网,如有疑问,请联系我们(ngdcn_admin@163.com)。
上一篇:
【MPI】MPI组和通讯器介绍
下一篇:
【微软】MSCCL Github仓库介绍
相关文章
Alibaba高性能通信库ACCL介绍
【微软】MSCCL Github仓库介绍
有话要说...
取消回复
云 & 计算
回复
1
赞
最近发表
【Sigcomm 2023】 Achelous:超大规模云网络中如何实现网络的可编程性、弹性和可靠性
【ICNP 2021】基于弱监督学习的ISP自助BGP异常检测
【ICNP 2021】怒赞!上海交大团队先于谷歌提出光电混合数据中心慢切换方案
【中科院】为什么chiplet需要标准?
一文读懂Dragonfly拓扑
Alibaba高性能通信库ACCL介绍
【微软】MSCCL Github仓库介绍
【英伟达】NCCL Github仓库介绍
【MPI】MPI组和通讯器介绍
【MPI】MPI Reduce和Allreduce函数
热门文章
【Infiniband手册】第9章:传输层
2022-10-27
【推荐】计算机网络顶级会议:快速检索目录
2022-11-07
一文读懂Dragonfly拓扑
2023-02-24
【Sigcomm 2023】 Achelous:超大规模云网络中如何实现网络的可编程性、弹性和可靠性
2023-10-06
Alibaba高性能通信库ACCL介绍
2023-02-21
【ICNP 2021】怒赞!上海交大团队先于谷歌提出光电混合数据中心慢切换方案
2023-05-10
【ICNP 2021】基于弱监督学习的ISP自助BGP异常检测
2023-05-10
【微软】MSCCL Github仓库介绍
2023-02-20
标签列表
PFC
(3)
流量控制
(6)
拥塞控制
(20)
网络拓扑
(8)
RDMA
(42)
TCP/IP
(21)
CXL
(5)
思科
(5)
交换机芯片
(5)
数据中心网络
(11)
英伟达
(5)
Infiniband手册
(8)
NSDI
(12)
SIGCOMM
(22)
华为
(5)
HPCC
(5)
交换机
(8)
数据中心
(4)
RoCE
(7)
存储
(11)
Memory Fabric
(4)
NS3
(8)
超算
(5)
MPI
(10)
集合通信库
(4)
有话要说...