Eficiencia de escalado
Leerlo en el Capítulo 5 · checkpoint +50 XP →
Por qué 2× GPUs rara vez da 2× velocidad: trabajo serial, comunicación y sincronización (la ley de Amdahl y compañía).
Ley de Amdahl: si una fracción s del trabajo es serial, la aceleración con n trabajadores es como máximo 1 / (s + (1−s)/n). Incluso un 5% serial te limita a 20× de aceleración.
El entrenamiento distribuido agrega comunicación que crece con la escala: términos de latencia de las colectivas, saltos entre racks y una probabilidad creciente de que alguna GPU sea lenta (ver Stragglers (rezagados)).
Escalado débil vs. fuerte
- Escalado fuerte: mismo problema, más GPUs. La eficiencia cae a medida que el trabajo por GPU se achica.
- Escalado débil: el batch crece con el número de GPUs. Es mucho más amable, y por eso existe el entrenamiento con batches grandes, dentro de lo que todavía converge.
Cómo medirlo: eficiencia de escalado = (rendimiento con n) / (n × rendimiento con 1). Repórtala junto con el MFU. Un trabajo puede escalar perfecto y aun así ser ineficiente por GPU.
Relacionado
Fuentes y lecturas adicionales
- Distributed Training (T. Tsugriy) — parallelism strategies, collectives, memory
- PRACE Best Practice Guide – GPGPU — GPU programming and tuning practice for HPC
Escrito para LazyLab con nuestras propias palabras; las fuentes se citan para profundizar y verificar.