Choose an image

Specific Deep Learning VM Images images are available to suit your choice of framework and processor. There are currently images supporting TensorFlow, PyTorch, and generic high-performance computing, with versions for both CPU-only and GPU-enabled workflows. To find the image that you want, see the table below.

Deciding on an image family

Deciding on which Deep Learning VM image family to use depends on your needs. The following table lists the most recent versions of image families, organized by framework type. Creating an instance by referencing an image family with latest in the name ensures that you always get the most recent version of that image. If you need a specific framework version, skip to Listing all available versions.

Framework Processor Image family name(s)
Base GPU common-cu110
CPU common-cpu
TensorFlow Enterprise 2.x GPU tf2-ent-latest-gpu
CPU tf2-ent-latest-cpu
TensorFlow Enterprise 1.x GPU tf-ent-latest-gpu
CPU tf-ent-latest-cpu
PyTorch GPU pytorch-latest-gpu
CPU pytorch-latest-cpu
PyTorch XLA TPU/GPU/CPU (experimental) pytorch-latest-xla
R CPU (experimental) r-latest-cpu-experimental
RAPIDS GPU (experimental) rapids-latest-gpu-experimental
Chainer GPU (experimental) chainer-latest-gpu-experimental
CPU (experimental) chainer-latest-cpu-experimental
XGBoost GPU (experimental) xgboost-latest-gpu-experimental
CPU (experimental) xgboost-latest-cpu-experimental
MXNet GPU (experimental) mxnet-latest-gpu-experimental
CPU (experimental) mxnet-latest-cpu-experimental
CNTK GPU (experimental) cntk-latest-gpu-experimental
CPU (experimental) cntk-latest-cpu-experimental
Caffe GPU (experimental) caffe1-latest-gpu-experimental
CPU (experimental) caffe1-latest-cpu-experimental

Choosing an operating system

For most frameworks, Debian 10 is the default OS. Ubuntu 18.04 images are available for some frameworks. They are denoted by the -ubuntu-1804 suffixes in the image family name (see Listing all available versions). Debian 9 images have been deprecated.

PyTorch images (pytorch-latest-cu110 and all TensorFlow Enterprise (tf-ent and tf2-ent) image families support A100 GPU accelerators.

TensorFlow Enterprise images

TensorFlow Enterprise image families provide you with a Google Cloud optimized distribution of TensorFlow, and specific versions of the TensorFlow Enterprise distribution also include Long Term Version Support. To learn more about TensorFlow Enterprise, read the TensorFlow Enterprise overview.

Use the following table of available TensorFlow images to help you select the image with the version of TensorFlow or TensorFlow Enterprise that you want.

Version of TensorFlow or TensorFlow Enterprise Processor Image family name Long Term Version Support
TensorFlow Enterprise 2.6 GPU tf2-2-6-cu110 Included
CPU tf2-2-6-cpu Included
TensorFlow Enterprise 2.5 GPU tf2-2-5-cu110 Not included
CPU tf2-2-5-cpu Not included
TensorFlow 2.4 GPU tf2-2-4-cu110 Not included
CPU tf2-2-4-cpu Not included
TensorFlow Enterprise 2.3 GPU tf2-2-3-cu110 Included
CPU tf2-2-3-cpu Included
TensorFlow 2.2 GPU tf2-2-2-cu101 Not included
CPU tf2-2-2-cpu Not included
TensorFlow Enterprise 2.1 GPU tf2-2-1-cu110 Not included
CPU tf2-2-1-cpu Not included
TensorFlow 2.0 GPU tf2-2-0-cu100 Not included
CPU tf2-2-0-cpu Not included
TensorFlow Enterprise 1.15 GPU tf-1-15-cu110 Included
CPU tf-1-15-cpu Included
TensorFlow 1.14 GPU tf-1-14-cu100 Not included
CPU tf-1-14-cpu Not included
TensorFlow 1.13 GPU tf-1-13-cu100 Not included
CPU tf-1-13-cpu Not included
TensorFlow 1.11 GPU tf-1-11-cu100 Not included
CPU tf-1-11-cpu Not included
TensorFlow 1.10 GPU tf-1-10-cu100 Not included
CPU tf-1-10-cpu Not included

Experimental images

Some Deep Learning VM image families are experimental, as indicated by the table of image families. Experimental images are supported on a best-effort basis, and may not receive refreshes on each new release of the framework.

Specifying an image version

You can reuse the same image even if the latest image is newer. This can be useful, for instance, if you are trying to create a cluster and you want to ensure that any images that are used to create new instances are always the same. You should not use the name of the image family in this situation because, if the latest image is updated, you'll have different images on some instances in your cluster.

Instead, you can determine what the exact name of the image is, incorporate the version number, and then use that specific image to spawn new instances in your cluster.

To find out the exact name of the latest image, use the following command in the gcloud command-line tool with your preferred terminal or in Cloud Shell. Replace IMAGE_FAMILY with the image family name for which you want to find out the latest version number.

gcloud compute images describe-from-family IMAGE_FAMILY \
        --project deeplearning-platform-release

Look for the name field in the output and use the image name given there when creating new instances.

Listing all available versions

If you need a specific framework or CUDA version, you can search the complete list of available images. To list all available Deep Learning VM images, use the following gcloud tool command.

gcloud compute images list \
        --project deeplearning-platform-release \

Image families will be in the format FRAMEWORK-VERSION-CUDA_VERSION(-experimental), where FRAMEWORK is the target library, VERSION is the framework version, and CUDA_VERSION is the version of the CUDA stack, if present.

For example, an image from the family tf2-ent-2-3-cu110 has TensorFlow 2.3 and CUDA 11.0.

What's next

Create a new Deep Learning VM instance using the Cloud Marketplace or using the command line.