Calculadora de tiempo y coste de entrenamiento
Datos de entrada
| FLOPs totales de entrenamiento | 5,88e23 |
|---|---|
| Aprovechamiento de FLOPs del modelo | 40 % |
| Número de GPUs | 1.024 |
| Rendimiento máximo por GPU | 989 |
| Precio por hora de la GPU | 2,5 $ |
Calculadora de tiempo y coste de entrenamiento
Estima cuánto dura una ejecución de entrenamiento de un modelo de lenguaje y cuánto cuesta, a partir de los FLOPs totales de entrenamiento, el número de GPUs, el rendimiento máximo por GPU en TFLOP/s, el aprovechamiento de FLOPs del modelo y el precio por hora de la GPU.
Datos de entrada
Carga de trabajo
Clúster
Resultados
Introduce un valor para ver los resultados.
Tiempo y coste de entrenamiento
El entrenamiento de un modelo de lenguaje grande es una cantidad fija de aritmética repartida entre un clúster de aceleradores, de modo que tanto su duración como su factura se pueden anticipar en cuanto se conocen el trabajo y el hardware. Esta calculadora estima el tiempo real y el coste en horas-GPU de una ejecución a partir de los FLOPs totales de entrenamiento, el número de GPUs, el rendimiento máximo de cada GPU, el aprovechamiento de FLOPs del modelo y el precio de alquiler por hora.
Qué cubre la estimación
El trabajo total en coma flotante de una ejecución de entrenamiento se aproxima bien con una sola magnitud, a menudo escrita como seis veces el número de parámetros por el número de tokens de entrenamiento. Una vez fijado ese total, lo único que cambia el calendario es la rapidez con la que el clúster es capaz de procesarlo. La tasa sostenida de un clúster es la suma de las tasas máximas de sus aceleradores reducida por la fracción que realmente utilizan, el aprovechamiento de FLOPs del modelo. Dividir el trabajo entre esa tasa da el tiempo, y multiplicar el tiempo por el número de GPUs y por el precio por hora da el coste.
La fórmula
Con un trabajo total en FLOPs, aceleradores con un rendimiento de TFLOP/s cada uno, un aprovechamiento y un precio por hora por GPU, el tiempo de ejecución y el coste total son
tT=n⋅P⋅1012⋅UC=3600t⋅n⋅cEl factor convierte los TFLOP/s en FLOP/s, de modo que se expresa en segundos; dividir entre 3600 lo transforma en horas-GPU antes de aplicar el precio. Duplicar el número de GPUs reduce el tiempo a la mitad pero deja sin cambios el coste en horas-GPU, porque simplemente se termina antes el mismo trabajo total.
Ejemplo resuelto
Tómese una ejecución de FLOPs en 1.024 aceleradores con un rendimiento de 989 TFLOP/s cada uno, que sostienen un aprovechamiento del 40 %, alquilados a 2,50 € por GPU y hora:
tT=1024×989×1012×0.45.88×1023≈1.45×106 s≈16.8 dıˊas=36001.45×106×1024×2.50≈1032000La ejecución dura unos diecisiete días y cuesta algo más de un millón de euros en alquiler de GPUs. Elevar el aprovechamiento del 40 % al 50 % reduciría tanto el tiempo como el coste en una quinta parte, razón por la cual exprimir más de un mismo hardware es la optimización más barata disponible.
Límites
La estimación supone que la ejecución está limitada por el cómputo y que la cifra de aprovechamiento ya promedia todo el trabajo. Excluye las escrituras de puntos de control, las paradas por carga de datos, los reinicios tras fallos de hardware, las pasadas de validación y el tiempo de inactividad de una reserva mantenida sin computar. La red, el almacenamiento y la diferencia entre precios al contado y reservados también mueven el total real. Conviene tomar el resultado como una base de planificación y añadir un margen para la sobrecarga. El trabajo total que alimenta este cálculo se deriva en la calculadora de Calculadora de FLOPs de entrenamiento, y el lado puramente de alquiler de la factura en la calculadora de Calculadora de coste de GPU en la nube.
Preguntas frecuentes (FAQ)
¿Cómo se estima el tiempo de entrenamiento?
El trabajo total en coma flotante de la ejecución se divide entre la tasa que el clúster puede sostener. Esa tasa es el número de GPUs por los TFLOP/s máximos de cada GPU por el aprovechamiento de FLOPs del modelo, convertido a operaciones por segundo. Dividir las operaciones totales entre esta tasa sostenida da los segundos reales, que la calculadora reporta en días, horas o minutos.
La estimación supone que la ejecución está limitada por el cómputo y que la cifra de aprovechamiento ya recoge la eficiencia media de todo el trabajo.
¿Qué valor de aprovechamiento conviene usar?
El aprovechamiento de FLOPs del modelo es la fracción del rendimiento máximo teórico que una ejecución alcanza realmente. En el entrenamiento de modelos grandes sobre sistemas bien ajustados suele situarse entre el 35 % y el 55 %, con un 40 % como valor predeterminado razonable. Los modelos más pequeños, las secuencias cortas, la comunicación intensa o los núcleos sin optimizar lo reducen.
Como el tiempo escala de forma inversa al aprovechamiento, reducirlo a la mitad duplica el calendario previsto, de modo que un valor medido en una breve ejecución de perfilado ofrece una estimación mucho mejor que una conjetura.
¿Por qué la factura real puede diferir de esta estimación?
La estimación cuenta solo el cómputo en estado estacionario al aprovechamiento elegido. Las ejecuciones reales añaden escrituras de puntos de control, paradas por carga de datos, reinicios tras fallos, pasadas de validación y tiempo de inactividad mientras se mantiene una reserva sin computar.
Los precios al contado o reservados, los cargos de red y almacenamiento, y un aprovechamiento que varía a lo largo de la ejecución también mueven el total. Conviene tomar la cifra como una base de planificación y añadir un margen para la sobrecarga, en lugar de leerla como una factura precisa.
Aviso legal
Esta estimación supone una ejecución limitada por el cómputo a un aprovechamiento de FLOPs del modelo constante y excluye los puntos de control, las paradas por carga de datos, los reinicios, la red y el almacenamiento. El tiempo y el coste reales varían con el hardware, la pila de software y el modelo de precios; conviene tomar el resultado como una base de planificación.