A Inferact, fundada pelo núcleo da equipe do vLLM, divulgou uma bateria de testes de inferência: rodando o modelo Kimi K3 da Moonshot AI em 16 chips Google TPU v7 Ironwood, a velocidade de decodificação de fluxo único chegou a 709 tokens por segundo, enquanto o grupo de controle com 16 chips Nvidia GB200 ficou em 452 — cerca de 57% mais rápido.
O relatório de testes e o código foram publicados juntos em 23 de setembro, e o repositório inferact/tpu-megakernels foi aberto sob licença Apache 2.0. A Inferact é uma startup formada pela equipe original do vLLM, que já havia captado US$ 150 milhões em rodada seed, com avaliação de US$ 800 milhões, liderada por a16z e Lightspeed.
No papel, o GB200 ainda leva vantagem
Primeiro, os números no papel. Segundo o relatório, um único chip TPU v7 tem pico de BF16 de 2,31 PFLOPS e FP8 de 4,61 PFLOPS, com 206 GB de HBM e banda de 7380 GB/s; um GB200 equivalente entrega 2,5 PFLOPS, 5 PFLOPS, 186 GB de HBM e banda de 8000 GB/s. Em desempenho computacional e banda, o GB200 supera em ambos, enquanto o TPU só leva vantagem na capacidade de memória, com 20 GB a mais.
O Kimi K3 é um modelo MoE de 92 camadas, cuja parte de atenção combina Kimi Delta Attention e Multi-head Latent Attention (MLA). O teste usa paralelismo de tensores em 4 vias e paralelismo de especialistas em 8 vias, distribuídos em 16 chips.
Comparação de velocidade bruta sem decodificação especulativa:
| Tamanho do lote | TPU v7 (megakernel) | GB200 (vLLM) |
|---|---|---|
| 1 | 249 | 127 |
| 2 | 392 | 227 |
| 4 | 515 | 373 |
| 8 | 865 | 636 |
A unidade é tokens por segundo. Com lote de tamanho 1, o TPU é quase duas vezes mais rápido; com lote 8, a vantagem encolhe para pouco mais de 30%. Com a decodificação especulativa DSpark, proposta pela DeepSeek, a velocidade de fluxo único passa a 709 contra 452, com cerca de 8,5 milissegundos por etapa de decodificação.
A velocidade vem de fundir 92 camadas em um único programa
A abordagem da Inferact é chamada de megakernel. Em frameworks de inferência convencionais, o cálculo de cada camada é dividido em vários kernels independentes, lançados um após o outro, com intervalos entre eles; os pesos só começam a ser transferidos da memória para o chip quando o kernel correspondente entra em execução.
A Inferact usa o Pallas para escrever as 92 camadas de uma etapa de decodificação como um único programa. Segundo o relatório, um megakernel elimina as fronteiras entre kernels: o carregamento de pesos deixa de estar amarrado ao kernel que os usa e pode ser antecipado até o limite da memória interna do chip. Na decodificação de fluxo único, o chip passa a maior parte do tempo esperando dados, e é exatamente aí que a pré-busca compensa; quando o lote aumenta, a proporção de computação cresce e o ganho dessa técnica diminui — o que bate com a tendência da tabela.
Um benefício colateral é o tempo de compilação: antes, compilar via XLA levava mais de 30 minutos; com megakernel, leva menos de 90 segundos. Para mostrar que o ganho de velocidade não sacrifica a qualidade dos resultados, o relatório traz as pontuações do Kimi K3 rodando na TPU: 94,4% no GPQA-Diamond e 97,2% no GSM8K.
Uma conta aproximada de eficiência por unidade de computação
Usando os resultados de decodificação especulativa de fluxo único para uma conta aproximada: o pico de BF16 do TPU v7 é cerca de 92% do GB200, mas a taxa de tokens gerada é 1,57 vez maior — convertendo para eficiência por unidade de pico computacional, o TPU fica em torno de 1,7 vez o GB200. Convertendo por largura de banda, o resultado também fica perto de 1,7 vez.
Esse número precisa de uma ressalva. Do lado do GB200, foi usada a receita do Kimi K3 publicada abertamente pelo vLLM, um caminho convencional de múltiplos kernels, sem uma otimização de megakernel de intensidade equivalente. O relatório não traz um comparativo igualmente otimizado no GB200, então não dá para separar quanto da diferença vem do hardware e quanto vem do esforço de software. A Nvidia também não respondeu sobre esses números.
Para a Moonshot AI, esse teste oferece um caminho viável de implantação do Kimi K3 em hardware fora do ecossistema Nvidia. O Kimi K3 é um modelo de pesos abertos com 2,8 trilhões de parâmetros, um porte que eleva bastante a barreira para implantação própria; com o kernel de TPU de código aberto, alugar TPUs na nuvem para rodar o K3 passa a ser mais uma opção.
Fontes: blog técnico da Inferact, CocoLoop, repositório inferact/tpu-megakernels, QbitAI; os números de vazão seguem a metodologia de teste 16 contra 16 chips do relatório da Inferact, e as informações de captação seguem reportagens públicas.