本文档简要介绍了日历模式下的未来预留请求。如需详细了解在 Compute Engine 中预留资源的不同方式,请参阅选择预留类型。
如需获取容量来创建挂接了 GPU 或 TPU 的虚拟机 (VM) 实例,请在日历模式下使用未来预留请求。如果 Google Cloud批准了您的请求,Compute Engine 会在您选择的日期和时间预配您预留的资源,最长可预留 90 天。然后,您可以使用预留资源创建 GPU 虚拟机或 TPU 虚拟机,以运行以下工作负载:
模型预训练作业
模型微调作业
高性能计算 (HPC) 模拟工作负载
预计短期内会增加的推理工作负载
在日历模式下创建请求
以下部分介绍了如何查看资源可用性,以及在日历模式下创建未来预留请求时要指定哪些详细信息。
查看资源的未来可用情况
在日历模式下创建未来预留请求之前,您可以查看某个区域内以下资源的未来可用情况:
对于 GPU 虚拟机,最多可提前 60 天
对于 TPU,最多可提前 120 天
Compute Engine 会使用动态工作负载调度器 (DWS) 查看您请求的资源何时可用。创建请求时,指定您已确认可用的资源的数量、类型和预留期。如果您提供此信息, Google Cloud 更有可能批准您的请求。
定义请求属性
在日历模式下创建未来预留请求时,您必须指定以下属性:
自动删除。此属性确定 Compute Engine 是否会在结束时间删除为您的请求自动创建的预留(自动创建预留),即使该预留未充分使用也是如此。如需在日历模式下创建请求,您必须启用自动删除选项。
使用类型。此属性定义虚拟机如何使用自动创建的预留。在日历模式下创建请求时,您必须指定要创建明确指向的预留。此设置表示只有指向预留的虚拟机才能使用它。
部署类型。此属性定义预留资源的部署配置。在日历模式下创建请求时,您必须指定密集部署资源。在此类部署中,资源彼此靠近,以最大限度地缩短网络延迟时间。
名称。请求的名称,该名称在您的项目中必须是唯一的。
资源数量。在请求的开始时间预留的 GPU 虚拟机或 TPU 的数量。
计划状态。此属性定义您是立即将请求提交给 Google Cloud 进行审核,还是将其保存为草稿并在以后提交。在日历模式下创建请求时,您必须指定立即提交请求以进行审核。
预留模式。此属性定义预留资源的方法,对于日历模式下的请求,您必须将其设置为
CALENDAR
。预留名称。Compute Engine 在 Google Cloud 批准您的请求后自动创建的预留的名称。
共享类型。此属性定义组织中的其他项目是否可以使用您的已获批准请求的自动创建预留。您可以指定以下选项之一:
单项目。只有您的项目才能使用预留容量。
共享。您最多可以与组织中的 100 个其他项目共享预留容量。如果您指定此选项,则必须指定要与之共享自动创建的预留的项目。如需了解详情,请参阅共享预留的最佳实践。
预留期。Compute Engine 预配您请求的容量,并且您可使用该容量的日期和时间。预留期包括以下内容:
开始时间。您想开始使用预留容量的时间。根据您预留的资源,开始时间必须至少是您创建并提交请求时起的以下值之一:
对于 GPU 虚拟机,为 87 小时(3 天 15 小时)
对于 TPU,为 6 小时
结束时间。系统不再为您预留所请求的容量的时间。此时,Compute Engine 会删除自动创建的预留,并根据您为虚拟机指定的终止操作停止或删除使用该预留的所有虚拟机。
资源属性。您要预留的 GPU 虚拟机或 TPU 的硬件要求。仅当虚拟机的属性与预留的属性匹配时,虚拟机才能使用预留。如需了解详情,请参阅使用预留的要求。
工作负载类型。如果您预留 TPU v5e,则必须根据工作负载类型指定如何预留容量:
批处理。适用于在单个或多个操作中处理大量数据的工作负载,例如机器学习 (ML) 训练工作负载。
服务。适用于处理并发请求且需要尽可能减少网络延迟时间的工作负载,例如机器学习推理工作负载。
可用区。您要在其中预留容量的可用区。
请求审核流程
如需在日历模式下使用未来预留请求来预留容量,您必须创建请求并提交给 Google Cloud 进行审核。您创建并提交请求后, Google Cloud 会在 1 分钟内审核该请求,然后会出现以下任一情况:
Google Cloud 批准您的请求:Compute Engine 会预留您请求的资源,并在批准后 1 分钟内自动创建空预留。在请求开始时间,Compute Engine 会通过增加预留中的 GPU 虚拟机或 TPU 数量来预配您请求的容量。
您遇到错误。由于请求所在的可用区缺少足够的资源,因此请求失败。我们建议您再次查看未来的资源可用情况,然后创建并提交新请求以进行审核。
请求生命周期
下图显示了 Compute Engine 可以将日历模式下的未来预留请求设置为的不同状态:
上图中展示的状态和事件流如下所示:
PENDING_APPROVAL
:您已创建并提交了请求以进行审核。 Google Cloud 会在 1 分钟内审批请求。APPROVED
: Google Cloud 批准了您的请求。Compute Engine 随后会在 1 分钟内自动创建空预留,并将请求状态更改为PROCURING
。PROCURING
:Compute Engine 安排预留资源的预配。在请求开始时间前,请求状态会更改为PROVISIONING
。PROVISIONING
:Compute Engine 正在通过增加自动创建的预留中的预留 GPU 虚拟机或 TPU 数量来预配预留资源。在请求开始时间,请求状态会更改为FULFILLED
。FULFILLED
:Compute Engine 已预配预留资源,您需要为这些资源付费。您可以通过创建虚拟机来使用自动创建的预留,直至请求结束时间。
在请求结束时间,Compute Engine 会删除请求和自动创建的预留。它还会根据您为虚拟机指定的终止操作停止或删除使用相应预留的任何虚拟机。
使用预配容量
在 Google Cloud 批准日历模式下的未来预留请求后,Compute Engine 会自动创建具有以下特性的预留:
自动创建的预留没有预留 GPU 虚拟机或 TPU,因此您暂时无法使用它。
自动创建的预留会继承在您的请求中指定的虚拟机或 TPU 属性。
在请求开始时间,Compute Engine 会通过增加自动创建的预留中的 GPU 虚拟机或 TPU 数量来预配您请求的容量。然后,您可以通过创建满足以下所有条件的 GPU 虚拟机或 TPU 虚拟机来使用预留:
虚拟机和预留具有匹配的属性。
虚拟机明确指向预留。
虚拟机使用受预留约束的预配模型。
虚拟机必须在预留结束时间予以停止或删除。
您可以创建虚拟机,直到预留已全部用完或达到请求结束时间。在请求结束时间,Compute Engine 会删除自动创建的预留,并停止或删除使用该预留的任何虚拟机。
配额
日历模式下的未来预留请求必须使用受预留约束的预配模型。此模型不需要 Compute Engine 配额即可预留资源。不过,在创建请求之前,请验证您是否有足够的配额用于创建虚拟机时不属于预留的任何资源,例如磁盘或 IP 地址。
价格
在日历模式下创建未来预留请求时,您无需付费。而是在以下情况下需要支付费用:
Compute Engine 预配您请求的容量。当请求达到
FULFILLED
状态时,系统会根据 DWS 价格向您收取预配资源的费用。此价格模式以折扣价提供 vCPU、GPU 和 TPU。您使用预留未涵盖的资源。当您创建使用自动创建的预留的虚拟机时,系统不会再次向您收取已使用资源的费用。您只需为不属于预留的资源(例如磁盘或 IP 地址)付费。
在请求结束时间,不再产生费用。此时,Compute Engine 会删除自动创建的预留,并停止或删除使用该预留的任何虚拟机。
限制
以下部分介绍了针对日历模式下的未来预留请求的限制。
所有请求的限制
日历模式下的所有未来预留请求都具有以下限制:
您可以预留 1 到 90 天的资源。
创建并提交请求后,您无法取消、删除或修改该请求。
GPU 虚拟机请求的限制
您只能按以下方式预留 GPU 虚拟机:
TPU 请求的限制
您只能按以下方式预留 TPU:
您可以在每个请求中预留 1、4、8、16、32、64、128、256、512 或 1,024 个 TPU 芯片。
您可以预留以下 TPU 版本:
您只能为服务 (
SERVING
) 工作负载类型预留 1、4 或 8 个 TPU v5e 芯片。您只能在以下可用区预留 TPU:
对于 TPU v6e:
asia-northeast1-b
us-east5-a
us-east5-b
对于 TPU v5p:
us-east5-a
对于 TPU v5e:
对于批量 (
BATCH
) 工作负载类型:us-west4-b
对于服务 (
SERVING
) 工作负载类型:us-central1-a
所有自动创建的预留的限制
用于请求的自动创建预留具有以下限制:
您只能按以下方式修改预留:
允许或禁止 Vertex AI 作业使用该预留。
在预留开始时间之后。
您无法对预留应用承诺使用折扣 (CUD) 或持续使用折扣 (SUD)。
您无法删除预留;Compute Engine 会在预留结束时间删除预留。