Google e Meta lançam o TorchTPU: PyTorch agora roda nativamente nas TPUs do Google

Ilustração representando o backend TorchTPU conectando o PyTorch às TPUs do Google Cloud

Fala aí, beleza? O Google abriu no GitHub um backend que coloca o PyTorch pra rodar direto nas TPUs, sem passar por JAX e sem wrapper no meio do caminho 🙂

O anúncio oficial saiu em 20 de outubro de 2026 (terça-feira), segundo o Google Developers Blog e a TechCrunch, como parte de uma série de anúncios do Google sobre PyTorch feitos no mesmo dia. O post de lançamento está no blog oficial do PyTorch, que detalha o projeto em si, embora o texto obtido não traga a data de publicação de forma explícita

E, segundo esse mesmo post de lançamento, o esforço começou no Google em meados de 2025, em conjunto com o time do PyTorch na Meta

Um dia depois, em 21 de outubro, a PyTorch Conference North America 2026 teria um keynote de Bill Jia, do Google Cloud, chamado "Workload Fungibility in the Age of Agents": pelo snippet de busca da página oficial de keynotes do evento (a página completa não foi aberta nesta revisão), a fala mencionaria o TorchTPU já em produção e de código aberto: ou seja, o keynote viria depois do anúncio oficial de 20/10, não seria o momento do lançamento em si

Quem ganha com isso é quem já tem modelo em PyTorch e quer testar TPU sem reescrever tudo, tanto em treino quanto em inferência

O que é o TorchTPU e como ele funciona

O TorchTPU é um backend PyTorch nativo pras TPUs do Google: a TPU vira um dispositivo como qualquer outro, acessado por torch.device("tpu")

E o que isso significa na prática?

Significa que os tensores são tensores PyTorch comuns, só que morando num dispositivo tpu, sem tipos wrapper especiais

Se você conhece o fluxo de mandar um modelo pra GPU com CUDA, a ideia é bem semelhante, só muda o destino

O código pode rodar de dois jeitos:

  • Modo eager otimizado, executando operação por operação como tu já está acostumado
  • Compilado com torch.compile, usando o XLA por baixo dos panos

Já as operações coletivas (aquelas de treino distribuído, que sincronizam dados entre chips) passam pelo torch.distributed, então quem já usa essa API não precisa aprender outra

O anúncio fala em desempenho competitivo em treino e inferência graças às otimizações de eager, à integração com torch.compile e à aceleração nativa do hardware

Porém essa é a promessa do anúncio: não tem benchmark verificado aqui, então vale medir no seu próprio caso antes de acreditar em qualquer número que circular por aí

O que muda para quem já usa PyTorch

A mudança principal citada no anúncio é trocar o device: onde tinha .to("cuda"), passa a ter .to("tpu")

Bora ver na prática? O trecho abaixo é só um exemplo didático do que o anúncio descreve, não um teste executado:

# Antes, em GPU NVIDIA
model = model.to("cuda")

# Com TorchTPU
device = torch.device("tpu")
model = model.to(device)

Sem reescrever o modelo pra JAX e sem embrulhar tensor em tipo especial, que era justamente a parte chata de migrar pra TPU

O comando de instalação da release pública indicado no repositório torch_tpu é este:

pip install torch_tpu==0.2.0 --extra-index-url https://download.pytorch.org/whl/cpu

Se liga nos requisitos antes de rodar:

  • Python 3.11 ou mais recente
  • Acesso a uma TPU: o README do repositório cita uma instância v6e como a forma mais fácil de rodar os notebooks de exemplo, mas vale conferir ali qual hardware exatamente tu tem disponível

Tome cuidado com a versão do Python! Se o ambiente estiver numa versão anterior à 3.11, o projeto não atende o requisito oficial, então confira isso antes de culpar o pacote 😛

Os detalhes de import e configuração de ambiente ficam no README do repositório, que é a referência pra seguir à risca

Limitações e nível de maturidade do TorchTPU

O estado oficial é este: o TorchTPU está em desenvolvimento ativo e já é usado em produção, em treino e inferência, por alguns dos maiores clientes do Google Cloud

Ou seja, não é brinquedo de laboratório, mas também não tem status formal de versão estável divulgado além desse "em desenvolvimento ativo"

E a compatibilidade de operadores?

Essa é a parte que mais pesa numa migração, e aqui o próprio post de lançamento traz dois números distintos, que vale não misturar: suporte a cerca de 450 operadores ATen, incluindo forward e backward de todos os Core ATen ops das principais arquiteturas; e, separadamente, execução out-of-box validada nos 5.000 modelos mais baixados do Hugging Face: essa validação é sobre os modelos rodarem de ponta a ponta, não é uma contagem de operadores

Isso não garante que todo operador do seu modelo específico esteja coberto, então o caminho ainda é conferir no repositório e na página PyTorch on Cloud TPU da documentação do Google Cloud se o que o seu modelo usa está na lista

Outros pontos que valem atenção:

  • O README do repositório cita uma instância TPU v6e como a forma mais fácil de rodar os notebooks de exemplo, mas não há ali uma lista fechada de "gerações validadas" pra bater o olho antes de instalar
  • O custo de usar TPU no Google Cloud não faz parte do anúncio, então isso precisa ser levantado à parte
  • A licença é Apache 2.0, o que facilita uso comercial e contribuição

vLLM, SGLang e TorchTitan: os outros repositórios abertos

O TorchTPU não veio sozinho: no mesmo dia, o Google anunciou outros repositórios construídos sobre esse backend

O post do Google for Developers sobre vLLM e SGLang lista três projetos:

  • TorchTPU, o backend em si
  • vLLM-TorchTPU, feito em parceria com a Inferact, ligando o backend ao vLLM e publicado na organização vllm-project
  • SGLang-TorchTPU, feito em parceria com a RadixArk, ligando o backend ao SGLang e publicado na organização sgl-project

Já o TorchTitan TPU, fork do TorchTitan da Meta adaptado pro TorchTPU e mantido na organização google-pytorch, aparece em outro post do mesmo blog, sobre integrar o TorchTPU ao TorchTitan e otimizar modelos pra TPU

A lógica é simples: vLLM e SGLang são motores de inferência que muita gente já usa pra servir LLM, e o TorchTitan é voltado a treino em PyTorch

Em vez de obrigar o pessoal a trocar de stack, esses repositórios plugam o backend nas ferramentas que o time já conhece

Google, Amazon e a disputa com as GPUs NVIDIA

A leitura de que isso é um ataque ao domínio da NVIDIA vem da imprensa, não do Google

Segundo a TechCrunch, o Google se juntou à Amazon ao lançar uma ferramenta que facilita tirar apps PyTorch das GPUs NVIDIA

E de onde vem essa comparação com a Amazon?

Um dia antes, na segunda-feira, 19 de outubro de 2026, a Amazon apresentou o TorchNeuron: segundo a própria TechCrunch e o TheNextWeb, é uma ferramenta open source pra rodar código PyTorch nos chips Trainium trocando uma configuração de dispositivo, sem reescrever o app

O fato é este: duas big techs soltaram, em dias seguidos, caminhos pra rodar PyTorch nos próprios chips sem reescrever o código

Se isso vai ou não mexer de verdade na posição da NVIDIA, é interpretação, e vale tratar como tal… o que dá pra dizer é que o dev PyTorch ganhou mais opção de hardware pra testar 😀

Vídeo do canal

Se tu curte acompanhar novidade de IA, no canal do Hora de Codar tem um vídeo sobre Omni Agents e meta harness, mostrando como organizar múltiplos agentes de IA trabalhando junto

Conteúdo complementar do Hora de Codar para conhecer o canal; não é uma demonstração específica desta notícia ou versão.

Por onde começar a avaliar o TorchTPU

Antes de pensar em migrar o projeto inteiro, faz o caminho curto e verificável:

  1. Confirme qual TPU você tem acesso e checa no repositório e na documentação do Google Cloud se ela é compatível com o TorchTPU. O README cita uma instância v6e como a forma mais fácil de rodar os notebooks de exemplo, mas vale confirmar o seu caso antes de prosseguir
  2. Monte um ambiente com Python 3.11 ou mais recente e instale a release pública com pip install torch_tpu==0.2.0 --extra-index-url https://download.pytorch.org/whl/cpu
  3. Pegue um script pequeno que já roda em GPU e troque .to("cuda") por .to("tpu"), seguindo o README do repositório pro resto da configuração
  4. Liste os operadores que o seu modelo de verdade usa e confira no repositório e na documentação do Google Cloud se eles estão cobertos antes de migrar algo maior

Se o script pequeno rodar e os operadores do modelo grande estiverem cobertos, aí sim vale gastar tempo medindo desempenho e custo no seu caso

Até o próximo post! =)

Perguntas frequentes

O TorchTPU já pode ser usado em produção?

Segundo o anúncio oficial, o TorchTPU está em desenvolvimento ativo e já é usado em produção, em treino e inferência, por alguns dos maiores clientes do Google Cloud. A release pública mais recente no PyPI é a 0.2.0 e exige Python 3.11 ou mais recente; antes de migrar algo crítico, vale testar num projeto pequeno e confirmar no repositório se o hardware e os operadores que você usa estão cobertos.


Quer aprender mais sobre inteligência artificial e programação na prática? Conheça o canal Hora de Codar no YouTube e acompanhe os próximos vídeos.

Escrito por | Matheus Battisti

Matheus Battisti
Fundador da Hora de Codar

Programador apaixonado pelo mundo das tecnologias, sempre buscando em aprender e se aprofundar em linguagens, frameworks e o que mais for necessário para executar um bom trabalho. Agora tem uma nova missão que é de passar seu conhecimento adiante para formar novos programadores e especializar mais os que já são.

Subscribe
Notify of
guest

0 Comentários
Oldest
Newest Most Voted

Formações

Formação Vibe Coding

Formação Vibe Coding

Do Prompt ao Produto: Crie Software Real com IA

  • 474 aulas
  • 20 projetos
  • 39h 30min

Blog | Mais populares