ai-infra-interview-305

第 57 题:多机多卡训练时,如何设置NCCL_SOCKET_IFNAMENCCL_IB_DISABLE

题目

多机多卡训练时,如何设置NCCL_SOCKET_IFNAMENCCL_IB_DISABLE


完整讲解

一、NCCL_SOCKET_IFNAME

NCCL 做 TCP 通信(bootstrap 或 fallback transport)时要绑定网卡接口。多机多网卡时,若用错网卡(如用了管理网、带宽小的网),会慢或连不上。NCCL_SOCKET_IFNAME 指定使用的网络接口名,如 eth0ib0(部分环境里 IB 也走 socket 名)、bond0 等。


二、NCCL_IB_DISABLE

NCCL_IB_DISABLE=1 表示禁用 InfiniBand,NCCL 只用 TCP(和可能的 NVLink 等)。用途:


三、典型组合


面试要点


记忆要点

  1. SOCKET_IFNAME = 选 TCP 网卡;多机选数据面网卡、名一致或每机配好。
  2. IB_DISABLE=1 = 只用 TCP;无 IB 或排错时用。
  3. 有 IB 用 IB;无/异常时 IB_DISABLE=1 + 正确 IFNAME。
返回模块 返回总览