@@ -218,16 +218,25 @@ message JobNotification {
218218// resources should be allocated for the Job.
219219message AllocationPolicy {
220220 message LocationPolicy {
221- // A list of allowed location names represented by internal URLs,
222- // First location in the list must be a region.
223- // for example,
224- // ["regions/us-central1"] allow VMs in region us-central1,
225- // ["regions/us-central1", "zones/us-central1-a"] only allow VMs in zone
226- // us-central1-a.
221+ // A list of allowed location names represented by internal URLs.
222+ // Each location can be a region or a zone.
223+ // Only one region or multiple zones in one region is supported now.
224+ // For example,
225+ // ["regions/us-central1"] allow VMs in any zones in region us-central1.
226+ // ["zones/us-central1-a", "zones/us-central1-c"] only allow VMs
227+ // in zones us-central1-a and us-central1-c.
228+ // All locations end up in different regions would cause errors.
229+ // For example,
230+ // ["regions/us-central1", "zones/us-central1-a", "zones/us-central1-b",
231+ // "zones/us-west1-a"] contains 2 regions "us-central1" and
232+ // "us-west1". An error is expected in this case.
227233 repeated string allowed_locations = 1 ;
228234 }
229235
230- // A new persistent disk.
236+ // A new persistent disk or a local ssd.
237+ // A VM can only have one local SSD setting but multiple local SSD partitions.
238+ // https://cloud.google.com/compute/docs/disks#pdspecs.
239+ // https://cloud.google.com/compute/docs/disks#localssds.
231240 message Disk {
232241 // A data source from which a PD will be created.
233242 oneof data_source {
@@ -239,15 +248,23 @@ message AllocationPolicy {
239248 }
240249
241250 // Disk type as shown in `gcloud compute disk-types list`
242- // For example, "pd-ssd", "pd-standard", "pd-balanced".
251+ // For example, "pd-ssd", "pd-standard", "pd-balanced", "local-ssd" .
243252 string type = 1 ;
244253
245254 // Disk size in GB.
246255 // This field is ignored if `data_source` is `disk` or `image`.
256+ // If `type` is `local-ssd`, size_gb should be a multiple of 375GB,
257+ // otherwise, the final size will be the next greater multiple of 375 GB.
247258 int64 size_gb = 2 ;
259+
260+ // Local SSDs are available through both "SCSI" and "NVMe" interfaces.
261+ // If not indicated, "NVMe" will be the default one for local ssds.
262+ // We only support "SCSI" for persistent disks now.
263+ string disk_interface = 6 ;
248264 }
249265
250- // A new or an existing persistent disk attached to a VM instance.
266+ // A new or an existing persistent disk or a local ssd attached to a VM
267+ // instance.
251268 message AttachedDisk {
252269 oneof attached {
253270 Disk new_disk = 1 ;
@@ -269,6 +286,10 @@ message AllocationPolicy {
269286
270287 // The number of accelerators of this type.
271288 int64 count = 2 ;
289+
290+ // When true, Batch will install the GPU drivers.
291+ // This field will be ignored if specified.
292+ bool install_gpu_drivers = 3 [deprecated = true ];
272293 }
273294
274295 // InstancePolicy describes an instance type and resources attached to each VM
0 commit comments