200 lines
6.0 KiB
YAML
200 lines
6.0 KiB
YAML
# Copyright 2018 Google LLC. All Rights Reserved.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
accelerator_type:
|
|
api_field: node.acceleratorType
|
|
arg_name: accelerator-type
|
|
required: false
|
|
help_text: |
|
|
TPU accelerator type for the TPU.
|
|
If not specified, this defaults to `v2-8`.
|
|
|
|
For a list of available accelerator types run:
|
|
|
|
`{parent_command} accelerator-types list`
|
|
type: googlecloudsdk.command_lib.util.hooks.types:LowerCaseType
|
|
default: 'v2-8'
|
|
|
|
image:
|
|
arg_name: image
|
|
required: false
|
|
help_text: |
|
|
Specifies the full URI of the machine image to use for creating the TPU VM's boot disk.
|
|
If specified, this will override the boot image that would normally be used by the
|
|
specified `--runtime-version`.
|
|
|
|
description:
|
|
api_field: node.description
|
|
arg_name: description
|
|
required: false
|
|
help_text: |
|
|
Specifies a text description of the TPU.
|
|
|
|
network:
|
|
api_field: node.network
|
|
arg_name: network
|
|
required: false
|
|
help_text: |
|
|
Specifies the network that this TPU will be a part of.
|
|
default: 'default'
|
|
|
|
version:
|
|
api_field: node.tensorflowVersion
|
|
arg_name: version
|
|
required: true
|
|
help_text: |
|
|
TensorFlow version for the TPU, such as `1.14`. For a list of available
|
|
TensorFlow versions please see https://www.tensorflow.org/versions/.
|
|
|
|
range: &range
|
|
api_field: node.cidrBlock
|
|
arg_name: range
|
|
help_text: |
|
|
CIDR Range for the TPU.
|
|
|
|
The IP range that the TPU will select an IP address from.
|
|
Must be in CIDR notation and a `/29` range, for example
|
|
`192.168.0.0/29`. Errors will occur if the CIDR range has already been
|
|
used for a currently existing TPU, the CIDR range conflicts with any
|
|
networks in the user's provided network, or the provided network is
|
|
peered with another network that is using that CIDR range.
|
|
|
|
preemptible:
|
|
api_field: node.schedulingConfig.preemptible
|
|
arg_name: preemptible
|
|
type: bool
|
|
default: false
|
|
required: false
|
|
help_text: |
|
|
If provided, the TPU will be preemptible and time-limited. It may be
|
|
preempted to free up resources for standard TPUs, and will only be able
|
|
to run for a limited amount of time.
|
|
|
|
Preemptible TPUs cannot be restarted.
|
|
|
|
service_networking:
|
|
api_field: node.useServiceNetworking
|
|
arg_name: use-service-networking
|
|
type: bool
|
|
default: false
|
|
help_text: |-
|
|
If provided, the TPU will be configured via the Service Networking (SN) API instead of
|
|
using a CIDR range. The Service Networking API should be enabled on the project before
|
|
creating the TPU.
|
|
|
|
For more information on Service Networking see https://cloud.google.com/service-infrastructure/docs/service-networking/getting-started.
|
|
|
|
reserved:
|
|
api_field: node.schedulingConfig.reserved
|
|
arg_name: reserved
|
|
type: bool
|
|
default: false
|
|
required: false
|
|
help_text: |
|
|
When specified, will attempt to create the TPU node under reservations made in the current
|
|
project. The reservations can be made separately but used in aggregated form. i.e., the user can
|
|
make a reservation of 128 V2 TPUs and later on make another reservation of 128 V2 TPUs then
|
|
creates a v2-256 TPU instance. If there exists no reservation or not sufficient amount of
|
|
reserved cores under the project, the request will fail due to lack of capacity.
|
|
|
|
metadata:
|
|
arg_name: metadata
|
|
metavar: KEY=VALUE
|
|
type: "googlecloudsdk.calliope.arg_parsers:ArgDict:"
|
|
required: false
|
|
help_text: |
|
|
List of comma-separated metadata key-value pairs for the Cloud TPU VM node.
|
|
Example: `--metadata='key1=value1,key2=value2'`
|
|
|
|
metadata_from_file:
|
|
arg_name: metadata-from-file
|
|
metavar: KEY=VALUE
|
|
type: "googlecloudsdk.calliope.arg_parsers:ArgDict:"
|
|
required: false
|
|
help_text: |
|
|
Same as `--metadata` except the value for the entry will be read from a local file.
|
|
Example: `--metadata-from-file='key1=value1.txt'`
|
|
|
|
update_metadata:
|
|
arg_name: update-metadata
|
|
type: "googlecloudsdk.calliope.arg_parsers:ArgDict:"
|
|
required: false
|
|
metavar: KEY=VALUE
|
|
help_text: |
|
|
List of comma-separated metadata key-value pairs for the Cloud TPU VM node. If a key exists, its
|
|
value is modified. Otherwise, a new key-value pair is created.
|
|
|
|
clear_metadata:
|
|
arg_name: clear-metadata
|
|
type: bool
|
|
default: false
|
|
required: false
|
|
help_text: |
|
|
Remove all metadata. If `--update-metadata` is also specified then `--clear-metadata` is applied
|
|
first.
|
|
|
|
For example, to remove all metadata:
|
|
|
|
$ {command} --clear-metadata
|
|
|
|
To remove all existing metadata and create two new metadata key-value pairs, 'foo=bar' and
|
|
'baz=qux':
|
|
|
|
$ {command} --clear-metadata --update-metadata foo=bar,baz=qux
|
|
|
|
remove_metadata:
|
|
arg_name: remove-metadata
|
|
type: "googlecloudsdk.calliope.arg_parsers:ArgList:"
|
|
required: false
|
|
metavar: KEY
|
|
help_text: |
|
|
List of comma-separated metadata keys to remove. If a key does not exist it is silently ignored.
|
|
If `--update-metadata` is also specified then `--update-metadata` is applied first.
|
|
|
|
topology:
|
|
arg_name: topology
|
|
help_text: |
|
|
Chip topology for TPU.
|
|
type: googlecloudsdk.command_lib.util.hooks.types:LowerCaseType
|
|
|
|
type:
|
|
arg_name: type
|
|
help_text: |
|
|
Type of TPU.
|
|
choices:
|
|
- arg_value: v2
|
|
enum_value: V2
|
|
- arg_value: v3
|
|
enum_value: V3
|
|
- arg_value: v4
|
|
enum_value: V4
|
|
- arg_value: v5litepod
|
|
enum_value: V5LITE_POD
|
|
- arg_value: v5p
|
|
enum_value: V5P
|
|
- arg_value: v6e
|
|
enum_value: V6E
|
|
|
|
ga-type:
|
|
arg_name: type
|
|
help_text: |
|
|
Type of TPU.
|
|
choices:
|
|
- arg_value: v2
|
|
enum_value: V2
|
|
- arg_value: v3
|
|
enum_value: V3
|
|
- arg_value: v4
|
|
enum_value: V4
|