InfiniBand卡手动测试指导

一、 InfiniBand 简介

InfiniBand —— 是一种技术,直译为 “无限带宽” 技术(简称 IB );是一个用于高性能计算的计算机网络通信标准,它具有极高的吞吐量和极低的延迟,用于计算机与计算机之间的数据互连。InfiniBand也用作服务器与存储系统之间的直接或交换互连,以及存储系统之间的互连。

其次,inifiniband 也是一种 新的 网络通信协议(所谓网络通信协议就是 —— 一种网络通用语言:是不同操作系统、不同硬件之间提供通信支持的协议);提供了一种基于 交换 的架构,infiniband 通过交换机在节点之间直接的创建了一个 私有的、受保护的 通道,来进行数据和消息的传输,特点:无需CPU参与、直接通过 RDMA(直接内存访问)

二、 查看IB卡设备

三、切换 IB卡的IB模式为ethernet模式
安装mst工具依赖:
yum install gcc rpm-build make kernel-devel
MST 下载URL:
x86: wget https://www.mellanox.com/downloads/MFT/mft-4.21.0-99-x86_64-rpm.tgz
arch64: wget https://www.mellanox.com/downloads/MFT/mft-4.21.0-99-arm64-rpm.tgz

systemctl start mst

mst status

mlxconfig -d /dev/mst/mt4123_pciconf0 query

mlxconfig -d /dev/mst/mt4123_pciconf0 set LINK_TYPE_P1=2

注意:
2代表eth模式;
1代表IB模式

四、 驱动下载安装

MLNX_OFED的驱动在软件所下载地址为:

https://repo.oepkgs.net/openEuler/rpm/openEuler-20.03-LTS-SP1/extras-tgz/aarch64/MLNX_OFED_LINUX-5.1-2.5.2.0-openeuler20.03-aarch64-ext.tgz

安装步骤为:

tar xf MLNX_OFED_LINUX-5.1-2.5.2.0-openeuler20.03-aarch64-ext.tgz

cd MLNX_OFED_LINUX-5.1-2.5.2.0-openeuler20.03-aarch64-ext

./mlnxofedinstall --add-kernel-support

/etc/init.d/openibd restart # 注意:如果有需要卸载的模块,必须卸载掉

/etc/init.d/opensmd restart

备注:

systemctl stop firewalld # 关闭防火墙

Ibdev2netdev # 该命令可查看网口映射关系

五、 配置网络

cd /etc/sysconfig/network-script

例如新建ifcfg-ibp3s0文件

TYPE=InfiniBand

DEVICE=ibp3s0

BOOTPROTO=static

IPADDR=3.3.3.3 # 任意写一个未被占用的IP地址

NETMASK=255.255.255.0

GATEWAY=172.168.131.1 # 网关地址

DEFROUTE=yes

NAME=ibp3s0

ONBOOT=yes

注意:配置之后重启网络服务或者reboot,查看网口时否up,如果不是up的状态无法测试

六、 手动读写延时带宽测试

读写延时测试:

【预置条件】无

【测试步骤】

客户端:

ib_read_lat -a -n 100000 -F -d mlx*

ib_write_lat -a -n 100000 -F -d mlx*

测试端:

ib_read_lat -a -n 100000 -F -d mlx*

ib_write_lat -a -n 100000 -F -d mlx*

【预期结果】

t_max不能太大,t_typical/t_avg/99% percentile/99.9% percentile大致相等,记录测试数据

读写带宽测试:

【预置条件】无

【测试步骤】

客户端:

ib_read_bw -a -F -d mlx*

ib_write_bw -a -F -d mlx*

服务端:

ib_read_bw -a -F -d mlx*

ib_write_bw -a -F -d mlx*

【预期结果】

性能能达到标称规格90%,记录性能数据

你好,arm 上配置提示没有LINK_TYPE_P1 参数,是网卡不支持吗?
mlxconfig -d /dev/mst/mt4119_pciconf0 set LINK_TYPE_P1=1
Device #1:

Device type: ConnectX5
Name: MCX542B-ACA_Ax_Bx
Description: ConnectX-5 EN network interface card for OCP; with host management; 25GbE dual-port SFP28; PCIe3.0 x8; no bracket; ROHS R6 Halogen free
Device: /dev/mst/mt4119_pciconf0

Configurations: Next Boot New
-E- The Device doesn’t support LINK_TYPE_P1 parameter