一、准备步骤
1、查看centos版本1 |
cat /etc/issue或者cat /etc/redhat-release或者lsb_release -a
|
2、查看linux版本
1 |
cat /proc/version或uname -a或uname -r
|
3、确定插在服务器节点上的IB网卡的信息以及是否插入成功
1 |
lspci |grep Mell
|
如果返回如上信息,说明IB网卡插入成功,此外,返回的信息中,ConnectX-3说明了IB网卡的信息。特别说明,ConnectX-3、ConnectX-4、ConnectX-5、ConnectX-6的驱动有所不同,例如,ConnectX-3可能不支持最新版本的驱动,因此需要知道该信息!
二、下载驱动
结合Linux版本、IB网卡版本,选择合适的IB网卡驱动(特别注意版本问题)下载地址:https://developer.nvidia.com/networking/infiniband-software
三、安装驱动
解压安装:1 2 3 |
tar -zxvf MLNX_OFED_LINUX-5.6-1.0.3.3-rhel8.2-x86_64.tgz
cd MLNX_OFED_LINUX-5.6-1.0.3.3-rhel8.2-x86_64/
./mlnxofedinstall
|
安装完毕,加载驱动
1 |
/etc/init.d/openibd restart (systemctl start openibd)
|
1 |
/etc/init.d/opensmd restart
|
重启服务器:reboot
四、检查IB网络
1、检查IB网卡状态:ibstat2、查询IB设备信息
ibv_devices #显示系统中目前所有设备 查看本主机的infiniband设备
ibnodes #查看网络中的infiniband设备
五、配置网络
首先,使用命令ifconfig查看是否存在ib0网卡:在/etc/sysconfig/network-scripts目录下,可以看到ifcfg-ib0文件,配置方法修改这个文件
(如果没有的话在nmtui中自己添加ib0的网)
也可以使用nmtui设置ib0网络的ip地址,
注意:不要使ib网的IP地址和以太网的IP地址一样
六、用MPI验证infiniband网络
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
vim hw.c
#include <stdio.h>
#include "mpi.h"
int main( int argc, char **argv)
{
int myrank,nprocs,len;
MPI_Status status; //状态信息
char Processorname[20];
MPI_Init(&argc,&argv); //初始化MPI并行环境
MPI_Comm_size(MPI_COMM_WORLD, &nprocs); //nprocs返回进程个数
MPI_Comm_rank(MPI_COMM_WORLD,&myrank); //myrank返回进程号(从0开始)
MPI_Get_processor_name(Processorname, &len); //返回机器名字和名字长度
printf( "Hello world! Process %d of %d on %s.\n" ,myrank,nprocs,Processorname);
MPI_Finalize(); //终止MPI处理
}
|
1 2 |
mpicc -o hw hw.c
mpiexec -f hosts -iface ib0 -np 5 ./hw
|
七、卸载IB驱动
1 2 |
cd MLNX_OFED_LINUX-5.6-1.0.3.3-rhel8.2-x86_64/
./uninstall.sh
|
八、其它安装方式
yum安装如果ib网卡不识别,或着识别后配置后无法启用,安装ib驱动
1 2 3 4 |
yum install -y infiniband-diags
yum install -y opensm
systemctl start opensm
systemctl enable opensm
|
1 2 3 |
yum install -y libibverbs
yum install -y libibverbs-devel
yum install -y libibmad-devel
|
再网络配置
标签:ConnectX,MPI,网卡,yum,linux,IB,安装 From: https://www.cnblogs.com/xxllx/p/17473252.html