TorchTPU es un proyecto de software que proporciona un backend para PyTorch compatible con las Unidades de Procesamiento de Tensores (TPUs) de Google. Su objetivo principal es permitir a los desarrolladores ejecutar modelos y operaciones de PyTorch directamente en hardware TPU, optimizando el rendimiento para cargas de trabajo de inteligencia artificial distribuida. El sistema incluye kernels personalizados de ATen para operaciones específicas de PyTorch, una caché de compilación para mejorar la ejecución de cálculos XLA y ejemplos prácticos para el entrenamiento distribuido e inferencia de modelos como Llama, Qwen, ResNet y UNet.
La integración con torch.compile() permite la ejecución en modo gráfico, facilitando la optimización de pipelines de entrenamiento. El proyecto soporta Python 3.11 y superior, siguiendo la matriz de compatibilidad de versiones de PyTorch. La instalación requiere un entorno virtual y la herramienta de construcción Bazel, gestionando dependencias complejas como el backend XLA/MLIR. Se proporciona una guía de usuario con notebooks interactivos en Marimo, accesibles desde instancias GCE v6e, que detallan el uso de las APIs públicas y las utilidades de depuración. Este recurso técnico es fundamental para ingenieros que buscan desplegar modelos de IA en infraestructura de Google Cloud, ofreciendo una alternativa eficiente a las GPU tradicionales para ciertos tipos de inferencia y entrenamiento.
