Tengo Infiniband ejecutándose en RHEL 6.3
[root@master ~]# ibv_devinfo
hca_id: mthca0
transport: InfiniBand (0)
fw_ver: 4.7.927
node_guid: 0017:08ff:ffd0:6f1c
sys_image_guid: 0017:08ff:ffd0:6f1f
vendor_id: 0x08f1
vendor_part_id: 25208
hw_ver: 0xA0
board_id: VLT0060010001
phys_port_cnt: 2
port: 1
state: PORT_ACTIVE (4)
max_mtu: 2048 (4)
active_mtu: 2048 (4)
sm_lid: 2
port_lid: 3
port_lmc: 0x00
link_layer: InfiniBand
port: 2
state: PORT_DOWN (1)
max_mtu: 2048 (4)
active_mtu: 512 (2)
sm_lid: 0
port_lid: 0
port_lmc: 0x00
link_layer: InfiniBand
pero solo funciona como root.
al intentarlo con un usuario que no es superusuario, no obtuve nada:
[nicolas@master ~]$ ibv_devices
device node GUID
------ ----------------
mthca0 001708ffffd06f1c
Entonces, ¿cómo permitir que los usuarios habituales utilicen infiniband?
Respuesta1
Ok, esto es un error en la versión RHEL 6.3.
Falta la regla Udev:
/etc/udev/rules.d/90-rdma.rules
KERNEL=="umad*", SYMLINK+="infiniband/%k"
KERNEL=="issm*", SYMLINK+="infiniband/%k"
KERNEL=="ucm*", SYMLINK+="infiniband/%k", MODE="0666"
KERNEL=="uverbs*", SYMLINK+="infiniband/%k", MODE="0666"
KERNEL=="uat", SYMLINK+="infiniband/%k", MODE="0666"
KERNEL=="ucma", SYMLINK+="infiniband/%k", MODE="0666"
KERNEL=="rdma_cm", SYMLINK+="infiniband/%k", MODE="0666"
verhttps://www.centos.org/modules/newbb/viewtopic.php?topic_id=38586&forum=55
Respuesta2
Es mejor simplemente actualizar el paquete con la versión reparada, rdma-3.3-4. Más detalles aquí: http://rhn.redhat.com/errata/RHBA-2012-1423.html
Respuesta3
aquí hay información más completa para las personas que buscan resolver este problema que enfrentan en RH 6.3 Linux 2.6.32-279.9.1.el6.x86_64 #1 SMP viernes 31 de agosto 09:04:24 EDT 2012 x86_64 x86_64 x86_64 GNU/Linux
**#ibstat**
CA 'mlx4_0'
CA type: MT4099
Number of ports: 2
Firmware version: 2.10.700
Hardware version: 0
Node GUID: 0x0002c90300129780
System image GUID: 0x0002c901013029781
Port 1:
State: Active
Physical state: LinkUp
Rate: 56
Base lid: 1
LMC: 0
SM lid: 1
Capability mask: 0x0251486a
Port GUID: 0x0002c901013029781
Link layer: InfiniBand
1.Cree el archivo que falta como raíz:
**vi /etc/udev/rules.d/90-rdma.rules**
------------ cut here ------------
KERNEL=="umad*", SYMLINK+="infiniband/%k"
KERNEL=="issm*", SYMLINK+="infiniband/%k"
KERNEL=="ucm*", SYMLINK+="infiniband/%k", MODE="0666"
KERNEL=="uverbs*", SYMLINK+="infiniband/%k", MODE="0666"
KERNEL=="uat", SYMLINK+="infiniband/%k", MODE="0666"
KERNEL=="ucma", SYMLINK+="infiniband/%k", MODE="0666"
KERNEL=="rdma_cm", SYMLINK+="infiniband/%k", MODE="0666"
------------ cut here ------------
en el nodo de gestión (es decir, nodo principal, nodo de servicio, etc.)
2. Copie este archivo mediante ssh o cualquier método preferido en cualquier nodo informático del clúster.
**#ssh compute000 cp /home/90-rdma.rules /etc/udev/rules.d/90-rdma.rules**
**#ssh compute001 cp /home/90-rdma.rules /etc/udev/rules.d/90-rdma.rules**
**#ssh compute002 cp /home/90-rdma.rules /etc/udev/rules.d/90-rdma.rules**
**#ssh compute003 cp /home/90-rdma.rules /etc/udev/rules.d/90-rdma.rules**
**#ssh compute004 cp /home/90-rdma.rules /etc/udev/rules.d/90-rdma.rules**
etc.
3.Verifique que el archivo se haya creado en la carpeta de cada nodo de cálculo en/etc/udev/rules.d
**#ssh compute000 ls /etc/udev/rules.d | grep rdm
*#90-rdma.rules ***
4.Reinicie todos los nodos de computación y de administración.
NOTA: a. Después del cambio, el usuario seguirá obteniendo este resultado cuando ejecute el comando.
ibv_devices
[root@master ~]# ibv_devices
device node GUID
------ ----------------
mlx4_0 0002c901013029781
pero no te preocupes, simplemente ejecuta tu aplicación mpi preferida y todo estará bien.
b. El problema es que, independientemente del uso de cualquier proveedor de HCA, está directamente conectado al sistema operativo.
C. Esto parece deberse a un cambio realizado en el paquete rdma (no más reglas udev), el kernel crea los dispositivos infiniband con los permisos incorrectos. Este problema ha sido informado por usuarios de CentOS 6.3 y Scientific Linux 6.3.
La esperanza ayudará a otros.
Respuesta4
Supongo que te metes en una situación similar a la mía.
Ejecuté rping e ib_write_bw, con el resultado como
No se pudo asignar MR
Esto es como Dotan dijo que
Sospecho que está trabajando como usuario no root y hay un límite en la cantidad de páginas de memoria que se pueden bloquear (es decir, fijar). Aumentar este tamaño debería resolver el problema.
gracias dotan
La solución es simple, como dijo aquí Dotan.https://www.rdmamojo.com/2014/10/11/working-rdma-redhatcentos-7/
Edite el archivo /etc/security/limits.conf y agregue las siguientes líneas:
- memlock suave ilimitado
- memlock duro ilimitado