El entrenamiento distribuido en hardware de consumo es caótico por naturaleza: los nodos fallan, las conexiones se ralentizan y las máquinas se desconectan en plena sesión de entrenamiento. El verdadero desafío de ingeniería no es evitar los fallos (algo imposible), sino cómo los gestiona tu framework. ¿Guarda puntos de control con frecuencia? ¿Puede redistribuir las cargas de trabajo sobre la marcha? ¿Cuenta con una lógica de reintentos inteligente o simplemente hace que falle todo el trabajo? La mayoría de los frameworks dan por sentado que hay una fiabilidad propia de los centros de datos. Los sistemas distribuidos diseñados para GPU de consumo necesitan tolerancia a fallos integrada en la arquitectura central, no añadida a posteriori. La velocidad de recuperación ante fallos y la capacidad de reanudar el trabajo sin perder datos son las métricas que realmente importan en este caso.
