Avançado

Quanto custa de verdade uma run de pretraining

Um orçamento crível de pretraining separa FLOPs ideais de tempo real de dispositivo, experimentos, falhas, dados, pessoas e energia — e cada número nele vale só o que vale a suposição impressa ao lado.

Atualizada em

01 · Conceito

Conceito

Alguém vai te perguntar quanto custou treinar o Qwen3.8-27B. A resposta honesta tem duas partes, e as duas importam: ninguém fora do time sabe, e aqui está como você estimaria ao fornecer as entradas ausentes. Esta lição constrói essa estimativa de ponta a ponta, rotulando cada suposição pelo caminho, para que o que emerja seja um método que você pode aplicar em vez de um número que você pode citar.

Para um decoder denso, o atalho comum de primeira ordem de Kaplan para o núcleo do modelo é

Fcore6NcoreD,F_{core}\approx 6N_{core}D,

com NcoreN_{core} parâmetros não-embedding e DD tokens de treino. O fator seis aproxima o trabalho matricial de forward e backward — aproximadamente duas operações por parâmetro por token no forward, e o dobro disso de novo no backward. Esse atalho estima o núcleo; ele não diz que toda operação fora de NcoreN_{core} é de graça.

Comece pela versão grosseira que as pessoas costumam produzir. Pegue os 27 bilhões de parâmetros anunciados, escolha 4 trilhões de tokens como uma entrada ilustrativa redonda e multiplique:

6×(27×109)×(4×1012)=6.48×1023 FLOPs.6\times(27\times 10^{9})\times(4\times 10^{12})=6.48\times 10^{23}\ \text{FLOPs}.

O atalho usa a contagem não-embedding. A lição 5.3 mostrou que o input embedding de 248.320 linhas e sua output head untied somam cerca de 2,54 bilhões de parâmetros, e ainda há uma vision tower. Usar cerca de 24,5 bilhões para NcoreN_{core}

6×(2.45×1010)×(4×1012)=5.88×1023 FLOPs,6\times(2.45\times 10^{10})\times(4\times 10^{12})=5.88\times 10^{23}\ \text{FLOPs},

Esse número de 5,88e23 é a aproximação do núcleo, não um total melhor. A output head untied ainda multiplica cada estado oculto final por uma matriz de 248,320×5,120248{,}320\times5{,}120 para produzir logits. O Apêndice F de Chinchilla conta essa projeção final de logits separadamente. A head tem cerca de 1,27 bilhão de pesos, então, sob a mesma convenção de forward e backward, sua contribuição é

6×(1.2714×109)×(4×1012)3.05×1022 FLOPs.6\times(1.2714\times 10^{9})\times(4\times 10^{12})\approx3.05\times 10^{22}\ \text{FLOPs}.

Somar o atalho do núcleo e a head dá cerca de 6.19×10236.19\times10^{23} FLOPs antes de correções específicas da arquitetura. Tratar a consulta do input embedding como se fosse outra projeção densa sobre o vocabulário inteiro também estaria errado; contar os operadores diretamente é o que separa esses custos.

A maior incerteza é o DD. Não existe contagem de tokens publicada para este modelo — nenhum relatório técnico existe, e o model card não divulga tokens de treino, compute de treino, utilização, hardware ou custo. Os 4 trilhões acima são uma suposição redonda usada apenas para demonstrar o método; não são uma alegação sobre o Qwen3.8-27B. Mude a suposição para 2 trilhões e cada número abaixo cai pela metade.

Outra ressalva fica por baixo do atalho. Aqui, 48 das 64 camadas são Gated DeltaNet em vez de full attention, o que muda a contagem de operações por token e como o custo cresce com o comprimento da sequência. Trate 6.19×10236.19\times10^{23} como uma construção de primeira ordem, não como uma medição; uma estimativa precisa contaria os operadores reais em cada caminho.

Agora converta trabalho em tempo. As device-hours realizadas são

H=FtrainPpeaku3600,H=\frac{F_{train}}{P_{peak}\,u\,3600},

onde PpeakP_{peak} são as operações de pico aplicáveis por segundo no dtype de fato usado e uu é a utilização medida. Para um exemplo calculado, suponha uma ordem de magnitude de 101510^{15} FLOP/s em bf16 e 40% de model FLOPs utilization. Essas são entradas ilustrativas, não fatos sobre o hardware ou a run da Qwen. Com elas:

H=6.19×10231015×0.40×3600430,000 device-hours.H=\frac{6.19\times 10^{23}}{10^{15}\times 0.40\times 3600}\approx 430{,}000\ \text{device-hours}.

Em 1.024 aceleradores isso dá cerca de 420 horas, ou 17,5 dias de treino contínuo. A um preço alugado ilustrativo de USD 2,50 por device-hour — número que precisa carregar sua data, região e modelo de compra — a run final custa aproximadamente

430,000×2.50=USD 1,075,000.430{,}000\times 2.50 = \text{USD } 1{,}075{,}000.

Essa é uma linha do orçamento, e é a linha que todo mundo cita como se fosse o total.

Essas linhas fora de compute são substanciais: aquisição e governança de dados, deduplicação e filtragem em escala de corpus, armazenamento e transferência entre regiões, réplicas de checkpoint — e note da lição 5.7 que um único checkpoint deste modelo carrega cerca de 432 GB de estado, então a política de retenção é uma decisão real de armazenamento — mais infraestrutura de avaliação, observabilidade, segurança e salários de engenharia. Custo de oportunidade também importa quando capacidade escassa de cluster atrasa outro trabalho. O paper de planejamento do BLOOM enquadrou a escolha de modelo explicitamente em torno de uma alocação de um milhão de GPU-hours de A100, que é a forma certa de pensar nisso: o portfólio de experimentos é planejado ao lado da run-alvo, não descoberto depois. Use aquele número como evidência sobre aquele projeto naquela data, nunca como preço atual.

A energia segue a mesma disciplina. A potência do dispositivo integrada no tempo dá a base: com ilustrativos 700 W por acelerador, 430.000 device-hours são cerca de 301 MWh nos chips. Um multiplicador de instalação cobrindo hosts, rede e refrigeração eleva a energia entregue. O carbono depois depende de onde e quando aquela eletricidade foi gerada; multiplicar por um fator de intensidade global genérico esconde a maior fonte isolada de variação. O estudo de carbono do BLOOM é útil precisamente porque separa o consumo dinâmico de treino de fronteiras mais amplas de ciclo de vida e diz qual delas está reportando.

Construa a estimativa como uma calculadora com variáveis expostas em vez de um total fixo: parâmetros, tokens, fator de arquitetura, throughput de pico, uma faixa de utilização, contagem de dispositivos, um preço horário datado, fração de retentativa, armazenamento, pessoal e contingência. Reporte device-hours, tempo decorrido na contagem de dispositivos escolhida, custo direto de compute, uma faixa de programa e uma análise de sensibilidade mostrando qual entrada move mais a resposta. No nosso exemplo essa entrada é inequivocamente o DD, que é também a que é desconhecida.

Depois reconcilie após a run — tokens planejados versus reais, utilização, device-hours, falhas e gasto — e alimente a variância no próximo orçamento. Um modelo de custo que nunca é reconciliado com a realidade é aritmética de marketing vestida de planilha.

A lição duradoura é disciplina contábil. FLOPs estimam trabalho físico; a utilização mapeia trabalho para tempo de hardware; o preço mapeia tempo para dinheiro; o escopo de programa acrescenta tudo que é necessário para a run acontecer; o escopo ambiental acrescenta energia e emissões. Todo número de manchete só tem significado com sua data, suas suposições e sua fronteira anexadas — e para o modelo que este curso acompanha, a coisa mais importante que essa cadeia produz é uma visão clara de exatamente qual número ninguém publicou.

02 · Analogia

Analogia

Estimar uma ponte só pelas toneladas de aço ignora equipes de topografia, guindastes parados esperando o tempo, soldas rejeitadas, estradas de acesso, inspeções, financiamento e manutenção futura. Os FLOPs do modelo são o aço: essenciais e contáveis, mas não a fatura. Um orçamento real reconcilia o material teórico com utilização, retentativas, preparação, pessoas e a fronteira contábil.

03 · Explique de volta

Explique de volta

Leve um modelo de 27 bilhões de parâmetros pela cadeia completa do atalho 6ND não-embedding mais a head untied dos logits até device-hours e dinheiro, declarando cada suposição, e diga que parte disso poderia ser honestamente publicada sobre o Qwen3.8-27B.

Mínimo: 80 caracteres e 15 palavras. Seu texto fica somente neste navegador.

Aguardando sua explicação.

Comparar com uma resposta-modelo

Suponha 4 trilhões de tokens de treino apenas como entrada ilustrativa; a Qwen não publicou contagem de tokens. O atalho 6ND de Kaplan, com cerca de 24,5 bilhões de parâmetros não-embedding, estima cerca de 5,88e23 FLOPs para o núcleo do modelo. Isso não é o trabalho total de treino: a output head untied de 248.320 x 5.120 executa a projeção densa dos logits e acrescenta cerca de 3,05e22 FLOPs sob a mesma convenção de forward e backward, levando esta soma de primeira ordem a cerca de 6,19e23 FLOPs antes de correções específicas da arquitetura. Divida pelo throughput de pico vezes a utilização medida vezes 3.600: com valores ilustrativos de 1e15 FLOP/s em bf16 e 40 por cento de utilização, isso dá cerca de 430.000 device-hours, aproximadamente 17,5 dias em 1.024 aceleradores. A um preço alugado ilustrativo de USD 2,50 por device-hour, a run final sozinha custa cerca de USD 1,07 milhão antes de pilotos, runs falhas, trabalho de dados, armazenamento, avaliação e pessoas. Para o Qwen3.8-27B, a arquitetura e a contagem de parâmetros são publicadas, mas orçamento de tokens de treino, compute, utilização, hardware e custo não são; cada número operacional desta cadeia é uma suposição rotulada.

04 · Teste seu entendimento

Teste seu entendimento

01Por que o resultado de 5,88e23 FLOPs do 6ND não é uma estimativa completa do trabalho total de treino?
Resposta e explicação

Porque ele é o atalho para parâmetros não-embedding, enquanto a output head untied ainda executa uma projeção densa dos logits que acrescenta cerca de 3,05e22 FLOPs sob as mesmas suposições — O atalho de Kaplan estima o núcleo não-embedding. Excluir a head untied de N não faz sua multiplicação matricial dos logits desaparecer; somar esse trabalho dá cerca de 6,19e23 FLOPs em primeira ordem, ainda com base numa contagem de tokens suposta e não publicada.

02A lição 5.12 cobriu spikes, restarts e dados em quarentena. Onde isso aparece num modelo de custo?
Resposta e explicação

Numa linha de retentativa ou contingência estimada a partir de taxas de falha e de preempção em pilotos, por cima da run final bem-sucedida — Steps revertidos, runs falhas e tempo ocioso enquanto um job é diagnosticado são device-hours reais que uma estimativa só da run final omite por completo.

03Por que os FLOPs de pico do acelerador não podem ser usados como throughput realizado?
Resposta e explicação

Comunicação, memória, formatos, bolhas e falhas reduzem a utilização — O custo em tempo de relógio depende da model FLOPs utilization medida e da eficiência operacional, não do máximo de marketing do chip.

Conclua o teach-back e acerte o quiz para finalizar a aula.

◎ · Marcador de evidência

Fontes

  1. Teven Le Scao et al. (2022). What Language Model to Train if You Have One Million GPU Hours?.
  2. Alexandra Sasha Luccioni, Sylvain Viguier e Anne-Laure Ligozat (2022). Estimating the Carbon Footprint of BLOOM, a 176B Parameter Language Model.
  3. Jordan Hoffmann et al. (2022). Training Compute-Optimal Large Language Models — Appendix F.
  4. Qwen Team (2026). Qwen3.8-27B Model Card.