Infiniband Verificando se o RDMA está funcionando

4

Eu tenho dois computadores idênticos com as placas Mellanox conectadas umas às outras por meio de um cabo. Nenhum interruptor. Usando o opensm.

Eu executei vários testes, incluindo testes ping_pong, ibping, etc. Todos parecem funcionar. No entanto, quando eu executo este teste, ele volta com o que parece ser um erro, que eu não entendo.

Eu disse ao 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"

Qualquer ajuda para decifrar e uma possível solução seria ótima.

[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]$ 
    
por Ivan 18.05.2015 / 01:17

2 respostas

2

Acontece que isso já foi visto antes. Eu não gosto da resposta porque parece varrê-la para debaixo do tapete, mas é uma resposta, no entanto:

link

    
por 18.05.2015 / 15:47
0

Isso geralmente é resultado de não ter todos os módulos necessários carregados no kernel. Eles não são carregados por padrão. Não tenho certeza de como o centos lida com isso, mas no Ubuntu você precisa colocar estes módulos em / etc / modules para que o kernel carregue-os.

mlx4_ib
rdma_ucm
ib_umad
ib_uverbs
ib_ipoib

Suponho que o ib_ipoib e o mlx4_ib já estão carregados, senão você não obteria a rede ip sobre o infiniband.

Você também precisará instalar o libmlx4 se não tiver instalado isso.

Caso contrário, tente este link que lista todos os pacotes necessários para o Centos (Nota: o libmthca é para um chipset mellanox mais antigo [infinihost], então você não precisará dele no seu caso.

link

    
por 18.05.2015 / 06:47