Guía para montar un clúster de dos nodos AMD Strix Halo con vLLM y RoCE v2

Fuentes: Guide to setting up a two-node AMD Strix Halo cluster with vLLM and RoCE v2

Esta guía explica cómo configurar un clúster de dos nodos equipados con las placas base Framework Desktop Mainboard con AMD Ryzen AI MAX+ 'Strix Halo' y 128 GB de memoria unificada, conectados mediante tarjetas Intel E810-CQDA1 de 100 GbE sobre el protocolo RoCE v2, para ejecutar inferencia distribuida con vLLM usando paralelismo tensorial (TP=2). El objetivo es lograr que dos máquinas se comporten como una sola, reduciendo la latencia de comunicación entre 70-100 µs del TCP/IP tradicional a unos 5 µs gracias al acceso directo a memoria remota (RDMA), algo crítico para la generación interactiva de tokens en modelos grandes.

El documento describe la arquitectura software basada en tres piezas: vLLM como motor de inferencia de alto rendimiento, Ray como framework de orquestación distribuida para los procesos worker en cada nodo, y RCCL (la librería colectiva de AMD, equivalente a NCCL de NVIDIA), que se encarga de sincronizar los datos de los tensores entre GPUs tras cada capa de la red neuronal, miles de veces por segundo. Para ello se detallan los requisitos de hardware, incluyendo la necesidad de un cable DAC QSFP28 de conexión directa y, en el caso de la placa de Framework, un riser PCIe 4x a 16x para instalar la tarjeta de red.

En el apartado de configuración se explican los pasos sobre Fedora 43: instalación de rdma-core, libibverbs-utils y perftest; comprobación del firmware de la E810 (versión 4.91 o superior); asignación de IPs estáticas (192.168.100.1 y .2) con MTU 9000; ajustes de BIOS para limitar la VRAM de la iGPU a 512 MB; parámetros de kernel como iommu=pt, pci=realloc, pcie_aspm=off, amdgpu.gttsize=126976 y ttm.pages_limit=32505856 para habilitar la memoria unificada; y reglas de firewall para confiar en la interfaz RDMA. El clúster se levanta con el script refresh_toolbox.sh, que detecta automáticamente los dispositivos InfiniBand/RDMA y aplica el parche customlibrccl.so, seguido de una interfaz TUI para iniciar Ray y arrancar el servidor vLLM con el modelo elegido. La guía también recoge una sección de resolución de problemas y referencias.