Manages TPU nodes and other resources.
TPU API v2
Equality
Instances of this class created via copy-construction or copy-assignment always compare equal. Instances created with equal std::shared_ptr<*Connection>
objects compare equal. Objects that compare equal share the same underlying resources.
Performance
Creating a new instance of this class is a relatively expensive operation, new objects establish new connections to the service. In contrast, copy-construction, move-construction, and the corresponding assignment operations are relatively efficient as the copies share all underlying resources.
Thread Safety
Concurrent access to different instances of this class, even if they compare equal, is guaranteed to work. Two or more threads operating on the same instance of this class is not guaranteed to work. Since copy-construction and move-construction is a relatively efficient operation, consider using such a copy when using this class from multiple threads.
Constructors
TpuClient(TpuClient const &)
Copy and move support
Parameter | |
---|---|
Name | Description |
|
TpuClient const &
|
TpuClient(TpuClient &&)
Copy and move support
Parameter | |
---|---|
Name | Description |
|
TpuClient &&
|
TpuClient(std::shared_ptr< TpuConnection >, Options)
Parameters | |
---|---|
Name | Description |
connection |
std::shared_ptr< TpuConnection >
|
opts |
Options
|
Operators
operator=(TpuClient const &)
Copy and move support
Parameter | |
---|---|
Name | Description |
|
TpuClient const &
|
Returns | |
---|---|
Type | Description |
TpuClient & |
operator=(TpuClient &&)
Copy and move support
Parameter | |
---|---|
Name | Description |
|
TpuClient &&
|
Returns | |
---|---|
Type | Description |
TpuClient & |
Functions
ListNodes(std::string const &, Options)
Lists nodes.
Parameters | |
---|---|
Name | Description |
parent |
std::string const &
Required. The parent resource name. |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StreamRange< google::cloud::tpu::v2::Node > |
a StreamRange to iterate of the results. See the documentation of this type for details. In brief, this class has |
ListNodes(google::cloud::tpu::v2::ListNodesRequest, Options)
Lists nodes.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::tpu::v2::ListNodesRequest
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StreamRange< google::cloud::tpu::v2::Node > |
a StreamRange to iterate of the results. See the documentation of this type for details. In brief, this class has |
GetNode(std::string const &, Options)
Gets the details of a node.
Parameters | |
---|---|
Name | Description |
name |
std::string const &
Required. The resource name. |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StatusOr< google::cloud::tpu::v2::Node > |
the result of the RPC. The response message type (google.cloud.tpu.v2.Node) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the |
GetNode(google::cloud::tpu::v2::GetNodeRequest const &, Options)
Gets the details of a node.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::tpu::v2::GetNodeRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StatusOr< google::cloud::tpu::v2::Node > |
the result of the RPC. The response message type (google.cloud.tpu.v2.Node) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the |
CreateNode(std::string const &, google::cloud::tpu::v2::Node const &, std::string const &, Options)
Creates a node.
Parameters | |
---|---|
Name | Description |
parent |
std::string const &
Required. The parent resource name. |
node |
google::cloud::tpu::v2::Node const &
Required. The node. |
node_id |
std::string const &
The unqualified resource name. |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::tpu::v2::Node > > |
A |
CreateNode(NoAwaitTag, std::string const &, google::cloud::tpu::v2::Node const &, std::string const &, Options)
Creates a node.
Specifying the NoAwaitTag
immediately returns the [google::longrunning::Operation
] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.
Parameters | |
---|---|
Name | Description |
|
NoAwaitTag
|
parent |
std::string const &
|
node |
google::cloud::tpu::v2::Node const &
|
node_id |
std::string const &
|
opts |
Options
|
Returns | |
---|---|
Type | Description |
StatusOr< google::longrunning::Operation > |
CreateNode(google::cloud::tpu::v2::CreateNodeRequest const &, Options)
Creates a node.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::tpu::v2::CreateNodeRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::tpu::v2::Node > > |
A |
CreateNode(NoAwaitTag, google::cloud::tpu::v2::CreateNodeRequest const &, Options)
Creates a node.
Specifying the NoAwaitTag
immediately returns the [google::longrunning::Operation
] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.
Parameters | |
---|---|
Name | Description |
|
NoAwaitTag
|
request |
google::cloud::tpu::v2::CreateNodeRequest const &
|
opts |
Options
|
Returns | |
---|---|
Type | Description |
StatusOr< google::longrunning::Operation > |
CreateNode(google::longrunning::Operation const &, Options)
Creates a node.
This method accepts a google::longrunning::Operation
that corresponds to a previously started Long Running Operation (LRO) and polls the status of the LRO in the background.
Parameters | |
---|---|
Name | Description |
operation |
google::longrunning::Operation const &
|
opts |
Options
|
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::tpu::v2::Node > > |
DeleteNode(std::string const &, Options)
Deletes a node.
Parameters | |
---|---|
Name | Description |
name |
std::string const &
Required. The resource name. |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::tpu::v2::OperationMetadata > > |
A |
DeleteNode(NoAwaitTag, std::string const &, Options)
Deletes a node.
Specifying the NoAwaitTag
immediately returns the [google::longrunning::Operation
] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.
Parameters | |
---|---|
Name | Description |
|
NoAwaitTag
|
name |
std::string const &
|
opts |
Options
|
Returns | |
---|---|
Type | Description |
StatusOr< google::longrunning::Operation > |
DeleteNode(google::cloud::tpu::v2::DeleteNodeRequest const &, Options)
Deletes a node.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::tpu::v2::DeleteNodeRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::tpu::v2::OperationMetadata > > |
A |
DeleteNode(NoAwaitTag, google::cloud::tpu::v2::DeleteNodeRequest const &, Options)
Deletes a node.
Specifying the NoAwaitTag
immediately returns the [google::longrunning::Operation
] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.
Parameters | |
---|---|
Name | Description |
|
NoAwaitTag
|
request |
google::cloud::tpu::v2::DeleteNodeRequest const &
|
opts |
Options
|
Returns | |
---|---|
Type | Description |
StatusOr< google::longrunning::Operation > |
DeleteNode(google::longrunning::Operation const &, Options)
Deletes a node.
This method accepts a google::longrunning::Operation
that corresponds to a previously started Long Running Operation (LRO) and polls the status of the LRO in the background.
Parameters | |
---|---|
Name | Description |
operation |
google::longrunning::Operation const &
|
opts |
Options
|
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::tpu::v2::OperationMetadata > > |
StopNode(google::cloud::tpu::v2::StopNodeRequest const &, Options)
Stops a node.
This operation is only available with single TPU nodes.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::tpu::v2::StopNodeRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::tpu::v2::Node > > |
A |
StopNode(NoAwaitTag, google::cloud::tpu::v2::StopNodeRequest const &, Options)
Stops a node.
Specifying the NoAwaitTag
immediately returns the [google::longrunning::Operation
] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.
Parameters | |
---|---|
Name | Description |
|
NoAwaitTag
|
request |
google::cloud::tpu::v2::StopNodeRequest const &
|
opts |
Options
|
Returns | |
---|---|
Type | Description |
StatusOr< google::longrunning::Operation > |
StopNode(google::longrunning::Operation const &, Options)
Stops a node.
This method accepts a google::longrunning::Operation
that corresponds to a previously started Long Running Operation (LRO) and polls the status of the LRO in the background.
Parameters | |
---|---|
Name | Description |
operation |
google::longrunning::Operation const &
|
opts |
Options
|
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::tpu::v2::Node > > |
StartNode(google::cloud::tpu::v2::StartNodeRequest const &, Options)
Starts a node.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::tpu::v2::StartNodeRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::tpu::v2::Node > > |
A |
StartNode(NoAwaitTag, google::cloud::tpu::v2::StartNodeRequest const &, Options)
Starts a node.
Specifying the NoAwaitTag
immediately returns the [google::longrunning::Operation
] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.
Parameters | |
---|---|
Name | Description |
|
NoAwaitTag
|
request |
google::cloud::tpu::v2::StartNodeRequest const &
|
opts |
Options
|
Returns | |
---|---|
Type | Description |
StatusOr< google::longrunning::Operation > |
StartNode(google::longrunning::Operation const &, Options)
Starts a node.
This method accepts a google::longrunning::Operation
that corresponds to a previously started Long Running Operation (LRO) and polls the status of the LRO in the background.
Parameters | |
---|---|
Name | Description |
operation |
google::longrunning::Operation const &
|
opts |
Options
|
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::tpu::v2::Node > > |
UpdateNode(google::cloud::tpu::v2::Node const &, google::protobuf::FieldMask const &, Options)
Updates the configurations of a node.
Parameters | |
---|---|
Name | Description |
node |
google::cloud::tpu::v2::Node const &
Required. The node. Only fields specified in update_mask are updated. |
update_mask |
google::protobuf::FieldMask const &
Required. Mask of fields from [Node][Tpu.Node] to update. Supported fields: [description, tags, labels, metadata, network_config.enable_external_ips]. |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::tpu::v2::Node > > |
A |
UpdateNode(NoAwaitTag, google::cloud::tpu::v2::Node const &, google::protobuf::FieldMask const &, Options)
Updates the configurations of a node.
Specifying the NoAwaitTag
immediately returns the [google::longrunning::Operation
] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.
Parameters | |
---|---|
Name | Description |
|
NoAwaitTag
|
node |
google::cloud::tpu::v2::Node const &
|
update_mask |
google::protobuf::FieldMask const &
|
opts |
Options
|
Returns | |
---|---|
Type | Description |
StatusOr< google::longrunning::Operation > |
UpdateNode(google::cloud::tpu::v2::UpdateNodeRequest const &, Options)
Updates the configurations of a node.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::tpu::v2::UpdateNodeRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::tpu::v2::Node > > |
A |
UpdateNode(NoAwaitTag, google::cloud::tpu::v2::UpdateNodeRequest const &, Options)
Updates the configurations of a node.
Specifying the NoAwaitTag
immediately returns the [google::longrunning::Operation
] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.
Parameters | |
---|---|
Name | Description |
|
NoAwaitTag
|
request |
google::cloud::tpu::v2::UpdateNodeRequest const &
|
opts |
Options
|
Returns | |
---|---|
Type | Description |
StatusOr< google::longrunning::Operation > |
UpdateNode(google::longrunning::Operation const &, Options)
Updates the configurations of a node.
This method accepts a google::longrunning::Operation
that corresponds to a previously started Long Running Operation (LRO) and polls the status of the LRO in the background.
Parameters | |
---|---|
Name | Description |
operation |
google::longrunning::Operation const &
|
opts |
Options
|
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::tpu::v2::Node > > |
GenerateServiceIdentity(google::cloud::tpu::v2::GenerateServiceIdentityRequest const &, Options)
Generates the Cloud TPU service identity for the project.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::tpu::v2::GenerateServiceIdentityRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StatusOr< google::cloud::tpu::v2::GenerateServiceIdentityResponse > |
the result of the RPC. The response message type (google.cloud.tpu.v2.GenerateServiceIdentityResponse) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the |
ListAcceleratorTypes(std::string const &, Options)
Lists accelerator types supported by this API.
Parameters | |
---|---|
Name | Description |
parent |
std::string const &
Required. The parent resource name. |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StreamRange< google::cloud::tpu::v2::AcceleratorType > |
a StreamRange to iterate of the results. See the documentation of this type for details. In brief, this class has |
ListAcceleratorTypes(google::cloud::tpu::v2::ListAcceleratorTypesRequest, Options)
Lists accelerator types supported by this API.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::tpu::v2::ListAcceleratorTypesRequest
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StreamRange< google::cloud::tpu::v2::AcceleratorType > |
a StreamRange to iterate of the results. See the documentation of this type for details. In brief, this class has |
GetAcceleratorType(std::string const &, Options)
Gets AcceleratorType.
Parameters | |
---|---|
Name | Description |
name |
std::string const &
Required. The resource name. |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StatusOr< google::cloud::tpu::v2::AcceleratorType > |
the result of the RPC. The response message type (google.cloud.tpu.v2.AcceleratorType) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the |
GetAcceleratorType(google::cloud::tpu::v2::GetAcceleratorTypeRequest const &, Options)
Gets AcceleratorType.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::tpu::v2::GetAcceleratorTypeRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StatusOr< google::cloud::tpu::v2::AcceleratorType > |
the result of the RPC. The response message type (google.cloud.tpu.v2.AcceleratorType) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the |
ListRuntimeVersions(std::string const &, Options)
Lists runtime versions supported by this API.
Parameters | |
---|---|
Name | Description |
parent |
std::string const &
Required. The parent resource name. |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StreamRange< google::cloud::tpu::v2::RuntimeVersion > |
a StreamRange to iterate of the results. See the documentation of this type for details. In brief, this class has |
ListRuntimeVersions(google::cloud::tpu::v2::ListRuntimeVersionsRequest, Options)
Lists runtime versions supported by this API.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::tpu::v2::ListRuntimeVersionsRequest
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StreamRange< google::cloud::tpu::v2::RuntimeVersion > |
a StreamRange to iterate of the results. See the documentation of this type for details. In brief, this class has |
GetRuntimeVersion(std::string const &, Options)
Gets a runtime version.
Parameters | |
---|---|
Name | Description |
name |
std::string const &
Required. The resource name. |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StatusOr< google::cloud::tpu::v2::RuntimeVersion > |
the result of the RPC. The response message type (google.cloud.tpu.v2.RuntimeVersion) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the |
GetRuntimeVersion(google::cloud::tpu::v2::GetRuntimeVersionRequest const &, Options)
Gets a runtime version.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::tpu::v2::GetRuntimeVersionRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StatusOr< google::cloud::tpu::v2::RuntimeVersion > |
the result of the RPC. The response message type (google.cloud.tpu.v2.RuntimeVersion) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the |
GetGuestAttributes(google::cloud::tpu::v2::GetGuestAttributesRequest const &, Options)
Retrieves the guest attributes for the node.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::tpu::v2::GetGuestAttributesRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StatusOr< google::cloud::tpu::v2::GetGuestAttributesResponse > |
the result of the RPC. The response message type (google.cloud.tpu.v2.GetGuestAttributesResponse) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the |