Skip to content

MLNX_OFED 与 VPI 网卡:LINK_TYPE 切换实战 ​

384 卡 L40S IB 集群里最容易被"想当然"坑到的环节:VPI 双模网卡默认跑以太,不切 LINK_TYPE,IB 永远起不来。本文记录从驱动栈安装到端口模式切换、再到逐项验证的全过程与踩坑点。

1. 先分清三块:硬件模式 / 驱动栈 / 应用验证 ​

层工具作用
硬件端口模式mstconfig(MFT)把端口从 Ethernet 切到 IB(LINK_TYPE=1)
驱动栈MLNX_OFED内核模块 + libibverbs + 工具集
应用验证ibstat/ibv_devinfo/ibping确认端口 Active、速率、MTU、PKey

判断:三块各自独立又互相依赖——驱动装错版本,端口模式切了也不认;模式没烧录,驱动再对也起不来。排查顺序永远是"硬件模式 → 驱动 → 应用"。

2. MLNX_OFED 安装:版本匹配是第一优先级 ​

  • 选版本:必须匹配 openEuler 24.03 的内核(6.6)——MLNX_OFED 提供 openEuler 专用包,选错发行版会编译失败或模块加载失败;
  • 依赖:kernel-devel 与内核版本严格一致(rpm -qa kernel-devel 核对);
  • 安装:./mlnxofedinstall --without-fw-update(固件更新单独走 MFT,避免驱动装一半烧固件);
  • 安装后 modprobe mlx5_core 并确认 ibstat 能看到端口(此时大概率是 Ethernet 模式,见下节)。

ConnectX-7/6 Dx 是 VPI(Ethernet/InfiniBand 双模),出厂默认以太。切 IB 模式:

bash
# 安装 MFT 后用 mstconfig 烧录端口模式
mst start
mstconfig -d <PCI> set LINK_TYPE_P1=1 LINK_TYPE_P2=1   # 1=IB, 2=Ethernet
mstconfig -d <PCI> q                                   # 确认已烧录
reboot   # 模式在初始化时生效,必须重启

常见坑:

  1. 只切 P1 没切 P2:双口卡切一半,第二口永远起不来;
  2. 不重启就测:LINK_TYPE 是初始化期参数,热改不生效;
  3. 模式与线缆不匹配:OSFP 200G DAC 接 IB 模式没问题,但如果固件版本旧,可能识别为以太口;
  4. ibstat 显示 Ethernet:先查 mstconfig,不要先怀疑线缆。

4. 验证链:从端口到数据面 ​

bash
# 1) 端口状态
ibstat                 # Port state: Active, Physical state: LinkUp, Rate: 200
# 2) 设备能力
ibv_devinfo -d mlx5_0  # Port 1 state: PORT_ACTIVE, active_mtu: 4096(4K)/65520 视配置
# 3) 连通性(对端同样装好驱动)
ibping -S <lid或guid>  # 双向 ping,确认数据面
# 4) 带宽基线
ib_write_bw -a -d mlx5_0   # 单口写带宽,确认接近 200G 线速

验收判定:ibstat Active + ibv_devinfo PORT_ACTIVE + ibping 通 + ib_write_bw 达标,四个都过才算"这台机器的 IB 面可用"。

5. 其他易错点汇总 ​

现象根因处理
端口起不来LINK_TYPE 未烧录/未重启重烧 + reboot
速率只有 100G线缆/端口协商换线或检查 Breakout 口归属
RDMA 应用超时GID/子网配置缺失ibv_devinfo 查 active gid,配好 SM 后重扫
驱动模块加载失败kernel-devel 版本不一致重装匹配 OFED 包

6. 交付清单 ​

  1. kernel-devel 与内核版本核对一致;
  2. MLNX_OFED(openEuler 版)安装,ibstat 可见端口;
  3. mstconfig 双口 LINK_TYPE=1 烧录并重启;
  4. 四步验证链全过:ibstat / ibv_devinfo / ibping / ib_write_bw;
  5. 48 节点全部过验后,再进三面分离的 PKey/SL 配置阶段。

本文基于 384 卡 L40S IB 集群交付实测整理;具体版本号与命令以现场实测为准。

AI-HPC 智算超算专家 · Contact: openaihpc@gmail.com