TPU OS images

When you create a TPU VM using Compute Engine, you can use a public Google-managed operating system (OS) image or a custom image. Google-managed images are optimized for TPU performance and include the necessary drivers and agents. By default, all Google Cloud projects have access to these public OS images.

Google-managed OS images

Google provides Ubuntu-based OS images that are pre-configured with the TPU runtime, drivers, and agents required for your workloads to function.

The following table lists the Google-managed OS images for each supported TPU version:

TPU version OS version Image project Image family
TPU7x (Ironwood) Ubuntu 24.04 LTS ubuntu-os-accelerator-images ubuntu-accel-2404-amd64-tpu-tpu7x
TPU v6e (Trillium) Ubuntu 22.04 LTS ubuntu-os-accelerator-images ubuntu-accel-2204-amd64-tpu-v5e-v5p-v6e
TPU v5p Ubuntu 22.04 LTS ubuntu-os-accelerator-images ubuntu-accel-2204-amd64-tpu-v5e-v5p-v6e

Custom OS images

With Compute Engine, you can use a custom OS image for TPU VMs. Custom images are useful for:

  • Pre-loading custom software and libraries to reduce VM startup time.
  • Using an OS distribution or version not included in the Google-managed list.
  • Applying custom kernel modifications or security configurations.

Shared responsibility model

Using a custom OS image follows a shared responsibility model between you and Google, as shown in the following table:

Feature Google responsibility User responsibility
TPU agents and drivers Publish modifications and release agents Install and configure agents and drivers
Compatibility testing N/A Perform compatibility and performance testing
OS maintenance N/A Manage OS updates and licensing

For more information about building and using your own Ubuntu image, see Use a custom OS image.

What's next