Network learning for training models

本文最后更新于:6 个月前

网络学习

网络桥接

docker 使用网络桥接(bridge)来通信容器与宿主机进行通信,docker0 是默认网络桥,其 IP 地址通常是 172.17.0.1,可以在命令行中输入以下命令显示

1
2
3
4
5
$ ip addr show docker0
13: docker0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
......
inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
......

网络检测

检查端口是否开放并能够访问,ncnetcat 的缩写,-z 只扫描端口,-v 工作在冗余模式

1
2
3
$ nc -zv 127.0.0.1 4000
Connection to 127.0.0.1 port 4000 [tcp/terabase] succeeded!
# 代表可以连接该端口

检测集群上的网络状况,安装 nethogs

1
2
3
$ sudo apt install nethogs
$ sudo nethogs
# 显示当前网路状况

NCCL

NCCL:在多机多卡训练过程中,作为面向GPU提供的集合通信库,能有效提高训练速度。

DMA(Direct Memory Access):允许外部设备直接访问计算机内存,无需通过 CPU 进行数据传输,减少 CPU 负担。

RDMA(Remote Direct Memory Access):允许计算机在网络中从另一台计算机内存中读取或写入数据,而不需要远程系统的 CPU 干预,这样能减少网络通信延迟和 CPU 负担。

InfiniBand:一个高性能、低延迟的网络通信架构,常用于高性能计算集群,支持 RDMA 技术,

显示当前 InfiniBand 网路设备状态工具,其中 state 中的 ACTIVE 代表可以进行通信,而 DOWN 代表不活动。

400Gb/sec 中的 b 代表 bit,其等于 50GB/sec

Ethernet 代表以太网,与日常网络相同,在大模型训练过程中速度很慢。


Network learning for training models
https://lr-tsinghua11.github.io/2023/08/18/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%A7%91%E5%AD%A6/%E9%9B%86%E7%BE%A4%E7%BD%91%E7%BB%9C/
作者
Learning_rate
发布于
2023年8月18日
许可协议