La explosión en la demanda de cómputo para modelos de IA a gran escala ha transformado la red de un componente de soporte a un cuello de botella crítico. Meta aborda este desafío fundamental de la computación distribuida, donde la latencia y el ancho de banda de la red dictan el rendimiento de los algoritmos de entrenamiento de IA, mediante una reingeniería completa de su infraestructura de red. Esto implica pasar de arquitecturas de red tradicionales a diseños optimizados para la comunicación masiva entre GPUs, con un enfoque en la eficiencia energética, la densidad y la capacidad de escala.

La necesidad de conectar cientos de miles de aceleradores de manera eficiente, minimizando la latencia de 'all-reduce' y 'all-to-all', requiere soluciones que van más allá de las topologías Clos convencionales. La evolución hacia una "Flattened Planar Fabric" y el desarrollo de un transporte RDMA personalizado como MetaRoCE son respuestas directas a las limitaciones impuestas por los protocolos de red existentes y la necesidad de una orquestación de red de pila completa, desde el silicio hasta el software de aplicación, para sostener el ritmo de crecimiento de la IA.

Arquitectura del Sistema

La arquitectura de red de Meta para IA se articula en varias capas y componentes clave. En el nivel de rack, se introduce IcePack e IceCube, racks de switches refrigerados por líquido que albergan blades de switches de 102.4T (128x800G) basados en ASICs Broadcom Tomahawk 6C o NVIDIA Spectrum-6, gestionados por FBOSS. Esta densidad y capacidad de enfriamiento son cruciales para soportar la potencia de los aceleradores de IA.

Para la escala-out dentro del centro de datos, Meta implementa una "Flattened Planar Fabric" (FPF), una topología Clos de dos niveles que reemplaza la tradicional de tres niveles. Cada GPU se conecta a ocho planos de red, utilizando 'packet spraying' a nivel de NIC para distribuir el tráfico y un plano de control combinado host+switch. Esto reduce la latencia y mejora la utilización del ancho de banda. Para la escala-across, conectando edificios, campus y regiones en el clúster Prometheus, se utiliza BAG (Backend Aggregation), una super-spine de petabitios, complementada con backbones regionales basados en SRv6 sobre FBOSS y SAI. SRv6 permite una mayor flexibilidad en el enrutamiento y la segmentación de la red.

En el ámbito del transporte de datos, MetaRoCE es una implementación de RDMA diseñada específicamente para redes de IA. A diferencia de las implementaciones tradicionales de RoCE, MetaRoCE busca optimizar el rendimiento de las operaciones colectivas de IA, como 'all-reduce', que son sensibles a la latencia del nodo más lento. La estandarización de la capa de plataforma de switches a través de OSPA (Open Switch Platform Architecture) y el uso de ópticas integradas (CPO, NPO) y cables eléctricos activos (AEC) de 800G son fundamentales para la eficiencia energética y la densidad a esta escala.

Flujo de Datos en Flattened Planar Fabric (FPF)

  1. 1 GPU Genera tráfico de entrenamiento de IA
  2. 2 NIC Realiza 'packet spraying' a través de 8 planos de red
  3. 3 Switch de Rack (IceCube) Reenvía tráfico dentro del rack
  4. 4 Switch de Spine (FPF) Conecta múltiples racks en una topología de 2 niveles
  5. 5 GPU Destino Recibe tráfico de entrenamiento

Flujo de Control de Red con FBOSS y OSPA

  1. 1 Hardware del Switch ASIC (Tomahawk/Spectrum), PHYs, Ópticas
  2. 2 OSPA (Open Switch Platform Architecture) Capa de abstracción de plataforma unificada
  3. 3 SAI (Switch Abstraction Interface) Interfaz de programación unificada para el plano de datos
  4. 4 FBOSS (Meta NOS) Sistema operativo de red de Meta, gestiona enrutamiento y forwarding
  5. 5 Plano de Control Combinado Orquestación de host y switch para la red de IA
CapaTecnologíaJustificación
networking IcePack & IceCube Racks y switches de red de alta densidad y refrigeración líquida para clústeres de IA, soportando 102.4T (128x800G). Diseño PHY-less, híbrido líquido/aire, ASICs Broadcom Tomahawk 6C o NVIDIA Spectrum-6.
networking Flattened Planar Fabric (FPF) Topología de red de escala-out de 2 niveles (Clos) para interconectar GPUs, optimizada para latencia y ancho de banda. vs Topologías Clos de 3 niveles o más Cada GPU conectada a 8 planos de red, 'packet spraying' a nivel de NIC.
networking BAG (Backend Aggregation) Super-spine de petabitios para interconectar centros de datos y regiones en el clúster Prometheus.
networking SRv6 Protocolo de enrutamiento para backbones regionales, permitiendo mayor flexibilidad y segmentación de red. vs MPLS Implementado en FBOSS, uso de 'shallow buffers' para distancias WAN.
networking FBOSS Sistema operativo de red de Meta, de código abierto, para gestionar switches y la infraestructura de red de IA. vs NOS comerciales Enfoque 'config-driven', integración con SAI y SDK de NVIDIA.
networking MetaRoCE Transporte RDMA personalizado y de código abierto para redes de IA, optimizado para operaciones colectivas. vs RoCE estándar, InfiniBand Implementación en 'user-space' (libsoftmetaroce), versión basada en DPDK en desarrollo.
orchestration OSPA (Open Switch Platform Architecture) Iniciativa OCP para estandarizar la capa de plataforma de switches, reduciendo la fragmentación y el tiempo de 'bring-up'. vs Implementaciones propietarias de plataformas de switches Especificación v1.0 contribuida a OCP, co-liderada por Meta, Microsoft y Alibaba.

Trade-offs

Ganancias
  • ▲ Densidad de cómputo y red
  • ▲ Eficiencia energética
  • ▲ Latencia de red para operaciones colectivas de IA
  • ▲▲ Ancho de banda total del clúster
  • ▲ Flexibilidad de enrutamiento y gestión de red
Costes
  • ▲ Complejidad de diseño y operación de la red
  • ▲ Costo de infraestructura (hardware y desarrollo)
  • ▲ Desafíos de validación y fiabilidad de componentes ópticos y eléctricos

Fundamentos Teóricos

El problema de diseñar redes de interconexión eficientes para supercomputadoras y clústeres de alto rendimiento tiene raíces profundas en la investigación académica, remontándose a trabajos sobre topologías de red como las redes Clos, fat-trees y toros. La idea de reducir el número de etapas en una red Clos, como se hace en la FPF de Meta, busca optimizar el diámetro de la red y el número de saltos, un concepto explorado en papers como "Clos Networks" de Charles Clos (1953) y trabajos posteriores sobre redes de interconexión para HPC. La técnica de 'packet spraying' a nivel de NIC se relaciona con el balanceo de carga y la optimización de rutas, abordado en la teoría de colas y algoritmos de enrutamiento adaptativo.

El desarrollo de MetaRoCE se alinea con la investigación en transportes de red de baja latencia y alto rendimiento, como InfiniBand y RoCE, que buscan minimizar la sobrecarga del kernel y la copia de datos. Conceptos como el 'zero-copy' y la descarga de la pila de red al hardware (RDMA) han sido objeto de estudio en la comunidad de sistemas distribuidos y redes desde los años 90, con trabajos seminales sobre la arquitectura de la red de área de sistema (SAN) y la comunicación de memoria remota. La necesidad de optimizar las operaciones colectivas como 'all-reduce' para el entrenamiento de ML se basa en principios de álgebra lineal distribuida y algoritmos de comunicación paralela, como los descritos en la biblioteca MPI (Message Passing Interface).