本页面介绍如何创建预装了 TensorFlow 和其他工具的 TensorFlow Deep Learning VM Image 实例。您可以从 Google Cloud Console 中的 Cloud Marketplace 或使用命令行创建 TensorFlow 实例。
准备工作
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
- 如果您要将 GPU 与 Deep Learning VM 搭配使用,请查看配额页面,确保您的项目中具有充足的 GPU。如果配额页面上未列出 GPU,或者您需要额外的 GPU 配额,请申请增加配额。
从 Cloud Marketplace 创建 TensorFlow Deep Learning VM 实例
如需从 Cloud Marketplace 创建 TensorFlow Deep Learning VM 实例,请完成以下步骤:
转到 Google Cloud 控制台中的 Deep Learning VM Cloud Marketplace 页面。
点击开始使用。
输入部署名称,该名称将作为虚拟机名称的基本组成部分。 为实例命名时,Compute Engine 会将
-vm
添加到此名称。选择一个可用区。
在机器类型下,为虚拟机选择所需的规范。详细了解机器类型。
在 GPU 下,选择 GPU 类型和 GPU 数量。如果您不想使用 GPU,请点击删除 GPU 按钮并跳到第 7 步。详细了解 GPU。
在框架下,选择一个 TensorFlow 框架版本。
如果您使用 GPU,则需要 NVIDIA 驱动程序。您可以自行安装该驱动程序,也可以选择首次启动时自动安装 NVIDIA GPU 驱动程序 (Install NVIDIA GPU driver automatically on first startup)。
您可以选择 Enable access to JupyterLab via URL instead of SSH (Beta)。通过启用此 Beta 版功能,您可以使用网址访问 JupyterLab 实例。您的 Google Cloud 项目中任何具有 Editor 或 Owner 角色的人都可以访问此网址。目前,此功能仅适用于美国、欧盟和亚洲。
选择启动磁盘类型和启动磁盘大小。
选择所需的网络设置。
点击部署。
如果您选择安装 NVIDIA 驱动程序,则需要 3-5 分钟才能完成安装。
部署虚拟机后页面会更新,并提供有关访问实例的说明。
从命令行创建 TensorFlow Deep Learning VM 实例
如需使用 Google Cloud CLI 创建新的 Deep Learning VM 实例,您必须先安装并初始化 Google Cloud CLI:
- 按照安装 Google Cloud CLI 上提供的说明下载并安装 Google Cloud CLI。
- 按照初始化 Cloud SDK 上提供的说明初始化 SDK。
如需在 Cloud Shell 中使用 gcloud
,请先按照启动 Cloud Shell 上提供的说明激活 Cloud Shell。
您可以创建带有或不带 GPU 的 TensorFlow 实例。
不带 GPU
如需预配不带 GPU 的 Deep Learning VM 实例,请执行以下操作:
export IMAGE_FAMILY="tf-ent-latest-cpu"
export ZONE="us-west1-b"
export INSTANCE_NAME="my-instance"
gcloud compute instances create $INSTANCE_NAME \
--zone=$ZONE \
--image-family=$IMAGE_FAMILY \
--image-project=deeplearning-platform-release
选项:
--image-family
必须是以下各项之一:tf-ent-latest-cpu
,用于获取最新的 TensorFlow 企业版 2 映像- 早期的 TensorFlow 或 TensorFlow Enterprise 映像系列名称(请参阅选择映像)
--image-project
必须为deeplearning-platform-release
。
带有一个或多个 GPU
Compute Engine 提供了将一个或多个 GPU 添加到虚拟机实例的选项。GPU 为许多复杂数据和机器学习任务提供了更快的处理速度。如需详细了解 GPU,请参阅 Compute Engine 上的 GPU。
如需预配带有一个或多个 GPU 的 Deep Learning VM 实例,请运行以下命令:
export IMAGE_FAMILY="tf-ent-latest-gpu"
export ZONE="us-west1-b"
export INSTANCE_NAME="my-instance"
gcloud compute instances create $INSTANCE_NAME \
--zone=$ZONE \
--image-family=$IMAGE_FAMILY \
--image-project=deeplearning-platform-release \
--maintenance-policy=TERMINATE \
--accelerator="type=nvidia-tesla-v100,count=1" \
--metadata="install-nvidia-driver=True"
选项:
--image-family
必须是以下项之一:tf-ent-latest-gpu
,用于获取最新的 TensorFlow 企业版 2 映像- 早期的 TensorFlow 或 TensorFlow Enterprise 映像系列名称(请参阅选择映像)
--image-project
必须为deeplearning-platform-release
。--maintenance-policy
必须为TERMINATE
。如需了解详情,请参阅 GPU 限制。--accelerator
指定要使用的 GPU 类型,必须采用--accelerator="type=TYPE,count=COUNT"
格式指定。例如--accelerator="type=nvidia-tesla-p100,count=2"
。 请参阅 GPU 模型表以查看可用的 GPU 类型和数量的列表。并非所有区域都支持所有 GPU 类型。如需了解详情,请参阅 GPU 区域和可用区可用性。
--metadata
用于指定系统应该为您安装 NVIDIA 驱动程序。其值为install-nvidia-driver=True
。 如果指定该选项,则 Compute Engine 会在第一次启动时加载最新的稳定版驱动程序并执行必要的步骤(包括最后重新启动以激活该驱动程序)。
如果您选择了安装 NVIDIA 驱动程序,则需要 3-5 分钟才能完成安装。
完全预配好虚拟机最长可能需要 5 分钟。在此期间,您将无法通过 SSH 连接到您的机器。安装完成后,为确保该驱动程序安装成功,您可以通过 SSH 连接到您的机器并运行 nvidia-smi
。
配置映像后,您可以保存映像的快照,以便启动派生实例,而无需等待安装驱动程序。
关于 TensorFlow 企业版
TensorFlow 企业版是针对在 Google Cloud 上运行进行了优化的 TensorFlow 发行版,它包含长期版本支持。
创建抢占式实例
您可以创建抢占式 Deep Learning VM 实例。与常规实例相比,抢占式实例的创建和运行费用要低得多。但是,如果 Compute Engine 需要访问这些资源以处理其他任务,可能会停止(抢占)这些实例。抢占式实例将始终在 24 小时后停止。如需详细了解抢占式实例,请参阅抢占式虚拟机实例。
如需创建抢占式 Deep Learning VM 实例,请执行以下操作:
按照上面的说明使用命令行创建新实例,然后将以下项附加到
gcloud compute instances create
命令:--preemptible
后续步骤
如需了解如何通过 Google Cloud 控制台或命令行连接到新的 Deep Learning VM 实例,请参阅连接到实例。实例名称就是在您指定的部署名称后方加上 -vm
。