Infiniband Verificando que RDMA está funcionando

Infiniband Verificando que RDMA está funcionando

Tengo dos ordenadores idénticos con tarjetas Mellanox conectados entre sí mediante un cable. Sin interruptor. Usando openm.

He realizado varias pruebas, incluidas pruebas de ping_pong, ibping, etc. Todas parecen funcionar. Sin embargo, cuando ejecuto esta prueba, aparece lo que parece ser un error que no entiendo.

Le dije al firewall

sudo iptables -I INPUT -p tcp -s 192.168.0.0/24  -j ACCEPT -m comment --comment "Allow Infiniband"

sudo iptables -I INPUT -p udp -s 192.168.0.0/24  -j ACCEPT -m comment --comment "Allow Infiniband"

Cualquier ayuda para descifrar y una posible solución sería genial.

[idf@node2 Downloads]$ sudo ib_write_bw

************************************
* Waiting for client to connect... *
************************************
---------------------------------------------------------------------------------------
                    RDMA_Write BW Test
 Dual-port       : OFF      Device         : mlx4_0
 Number of qps   : 1        Transport type : IB
 Connection type : RC       Using SRQ      : OFF
 CQ Moderation   : 100
 Mtu             : 4096[B]
 Link type       : IB
 Max inline data : 0[B]
 rdma_cm QPs     : OFF
 Data ex. method : Ethernet
---------------------------------------------------------------------------------------
 local address: LID 0x01 QPN 0x004a PSN 0xa79f2e RKey 0x50042a04 VAddr 0x007f1682804000
 remote address: LID 0x02 QPN 0x004a PSN 0x5ef914 RKey 0x40042502 VAddr 0x007f94f9ce9000
---------------------------------------------------------------------------------------
 #bytes     #iterations    BW peak[MB/sec]    BW average[MB/sec]   MsgRate[Mpps]
ethernet_read_keys: Couldn't read remote address
 Unable to read to socket/rdam_cm
 Failed to exchange data between server and clients
[idf@node2 Downloads]$


[idf@node1 python]$ sudo ib_write_bw 192.168.0.1
---------------------------------------------------------------------------------------
                    RDMA_Write BW Test
 Dual-port       : OFF      Device         : mlx4_0
 Number of qps   : 1        Transport type : IB
 Connection type : RC       Using SRQ      : OFF
 TX depth        : 128
 CQ Moderation   : 100
 Mtu             : 4096[B]
 Link type       : IB
 Max inline data : 0[B]
 rdma_cm QPs     : OFF
 Data ex. method : Ethernet
---------------------------------------------------------------------------------------
 local address: LID 0x02 QPN 0x004a PSN 0x5ef914 RKey 0x40042502 VAddr 0x007f94f9ce9000
 remote address: LID 0x01 QPN 0x004a PSN 0xa79f2e RKey 0x50042a04 VAddr 0x007f1682804000
---------------------------------------------------------------------------------------
 #bytes     #iterations    BW peak[MB/sec]    BW average[MB/sec]   MsgRate[Mpps]
Conflicting CPU frequency values detected: 1600.000000 != 1733.000000
Can't produce a report
[idf@node1 python]$ 

Respuesta1

Resulta que esto ya se ha visto antes. No me gusta la respuesta porque parece esconderla debajo de la alfombra, pero de todos modos es una respuesta:

http://linuxtoolkit.blogspot.com/2013/01/errors-when-running-doing-ib-testing.html

Respuesta2

Esto suele ser el resultado de no tener todos los módulos necesarios cargados en el kernel. No se cargan por defecto. No estoy seguro de cómo lo maneja centos, pero en Ubuntu necesitas colocar estos módulos en /etc/modules para que el kernel los cargue.

mlx4_ib
rdma_ucm
ib_umad
ib_uverbs
ib_ipoib

Supongo que ib_ipoib y mlx4_ib ya están cargados o de lo contrario no funcionará la red IP a través de Infiniband.

También necesitarás instalar libmlx4 si aún no lo has instalado.

De lo contrario, pruebe este enlace que enumera todos los paquetes necesarios para Centos (Nota: libmthca es para un conjunto de chips mellanox [infinihost] anterior, por lo que no lo necesitará en su caso.

https://sort.symantec.com/public/documents/sfha/6.1/linux/productguides/html/sfrac_install/apls05s02.htm

información relacionada