A factory function to construct an object of type TpuConnection.
The returned connection object should not be used directly; instead it should be passed as an argument to the constructor of TpuClient.
The optional options argument may be used to configure aspects of the returned TpuConnection. Expected options are any of the types in the following option lists:
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-14 UTC."],[[["\u003cp\u003eThe latest release candidate for the TPU C++ library is version 2.37.0-rc, with numerous previous versions available for use, ranging from 2.36.0 down to 2.11.0.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eTpuClient\u003c/code\u003e class facilitates the management of TPU nodes and resources.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eTpuConnection\u003c/code\u003e class provides an interface for managing TPU connections, and it should be passed as an argument in the \u003ccode\u003eTpuClient\u003c/code\u003e constructor.\u003c/p\u003e\n"],["\u003cp\u003eVarious structs like \u003ccode\u003eTpuBackoffPolicyOption\u003c/code\u003e, \u003ccode\u003eTpuConnectionIdempotencyPolicyOption\u003c/code\u003e, \u003ccode\u003eTpuPollingPolicyOption\u003c/code\u003e, and \u003ccode\u003eTpuRetryPolicyOption\u003c/code\u003e allow for configuration of the backoff, retry, and polling policies of the TPU.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eMakeTpuConnection()\u003c/code\u003e is a factory function that creates a \u003ccode\u003eTpuConnection\u003c/code\u003e object, which is configurable with a variety of option lists.\u003c/p\u003e\n"]]],[],null,["# Namespace google::cloud::tpu_v2 (2.12.0)\n\nVersion 2.12.0keyboard_arrow_down\n\n- [2.42.0-rc (latest)](/cpp/docs/reference/tpu/latest/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.41.0](/cpp/docs/reference/tpu/2.41.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.40.0](/cpp/docs/reference/tpu/2.40.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.39.0](/cpp/docs/reference/tpu/2.39.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.38.0](/cpp/docs/reference/tpu/2.38.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.37.0](/cpp/docs/reference/tpu/2.37.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.36.0](/cpp/docs/reference/tpu/2.36.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.35.0](/cpp/docs/reference/tpu/2.35.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.34.0](/cpp/docs/reference/tpu/2.34.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.33.0](/cpp/docs/reference/tpu/2.33.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.32.0](/cpp/docs/reference/tpu/2.32.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.31.0](/cpp/docs/reference/tpu/2.31.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.30.0](/cpp/docs/reference/tpu/2.30.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.29.0](/cpp/docs/reference/tpu/2.29.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.28.0](/cpp/docs/reference/tpu/2.28.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.27.0](/cpp/docs/reference/tpu/2.27.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.26.0](/cpp/docs/reference/tpu/2.26.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.25.1](/cpp/docs/reference/tpu/2.25.1/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.24.0](/cpp/docs/reference/tpu/2.24.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.23.0](/cpp/docs/reference/tpu/2.23.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.22.1](/cpp/docs/reference/tpu/2.22.1/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.21.0](/cpp/docs/reference/tpu/2.21.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.20.0](/cpp/docs/reference/tpu/2.20.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.19.0](/cpp/docs/reference/tpu/2.19.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.18.0](/cpp/docs/reference/tpu/2.18.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.17.0](/cpp/docs/reference/tpu/2.17.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.16.0](/cpp/docs/reference/tpu/2.16.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.15.1](/cpp/docs/reference/tpu/2.15.1/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.14.0](/cpp/docs/reference/tpu/2.14.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.13.0](/cpp/docs/reference/tpu/2.13.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.12.0](/cpp/docs/reference/tpu/2.12.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n- [2.11.0](/cpp/docs/reference/tpu/2.11.0/namespacegoogle_1_1cloud_1_1tpu__v2) \n\nClasses\n-------\n\n### [TpuClient](/cpp/docs/reference/tpu/2.12.0/classgoogle_1_1cloud_1_1tpu__v2_1_1TpuClient)\n\nManages TPU nodes and other resources.\n\n### [TpuConnection](/cpp/docs/reference/tpu/2.12.0/classgoogle_1_1cloud_1_1tpu__v2_1_1TpuConnection)\n\nThe [`TpuConnection`](/cpp/docs/reference/tpu/2.12.0/classgoogle_1_1cloud_1_1tpu__v2_1_1TpuConnection) object for [`TpuClient`](/cpp/docs/reference/tpu/2.12.0/classgoogle_1_1cloud_1_1tpu__v2_1_1TpuClient).\n\n### [TpuConnectionIdempotencyPolicy](/cpp/docs/reference/tpu/2.12.0/classgoogle_1_1cloud_1_1tpu__v2_1_1TpuConnectionIdempotencyPolicy)\n\nStructs\n-------\n\n### [TpuBackoffPolicyOption](/cpp/docs/reference/tpu/2.12.0/structgoogle_1_1cloud_1_1tpu__v2_1_1TpuBackoffPolicyOption)\n\nUse with [`google::cloud::Options`](https://cloud.google.com/cpp/docs/reference/common/latest/classgoogle_1_1cloud_1_1Options.html) to configure the backoff policy.\n\n### [TpuConnectionIdempotencyPolicyOption](/cpp/docs/reference/tpu/2.12.0/structgoogle_1_1cloud_1_1tpu__v2_1_1TpuConnectionIdempotencyPolicyOption)\n\nUse with [`google::cloud::Options`](https://cloud.google.com/cpp/docs/reference/common/latest/classgoogle_1_1cloud_1_1Options.html) to configure which operations are retried.\n\n### [TpuPollingPolicyOption](/cpp/docs/reference/tpu/2.12.0/structgoogle_1_1cloud_1_1tpu__v2_1_1TpuPollingPolicyOption)\n\nUse with [`google::cloud::Options`](https://cloud.google.com/cpp/docs/reference/common/latest/classgoogle_1_1cloud_1_1Options.html) to configure the long-running operations polling policy.\n\n### [TpuRetryPolicyOption](/cpp/docs/reference/tpu/2.12.0/structgoogle_1_1cloud_1_1tpu__v2_1_1TpuRetryPolicyOption)\n\nUse with [`google::cloud::Options`](https://cloud.google.com/cpp/docs/reference/common/latest/classgoogle_1_1cloud_1_1Options.html) to configure the retry policy.\n\nFunctions\n---------\n\n### MakeTpuConnection(Options)\n\nA factory function to construct an object of type [`TpuConnection`](/cpp/docs/reference/tpu/2.12.0/classgoogle_1_1cloud_1_1tpu__v2_1_1TpuConnection). \nThe returned connection object should not be used directly; instead it should be passed as an argument to the constructor of [TpuClient](/cpp/docs/reference/tpu/2.12.0/classgoogle_1_1cloud_1_1tpu__v2_1_1TpuClient).\n\nThe optional `options` argument may be used to configure aspects of the returned [`TpuConnection`](/cpp/docs/reference/tpu/2.12.0/classgoogle_1_1cloud_1_1tpu__v2_1_1TpuConnection). Expected options are any of the types in the following option lists:\n\n- [`google::cloud::CommonOptionList`](https://cloud.google.com/cpp/docs/reference/common/latest/namespacegoogle_1_1cloud.html)\n- [`google::cloud::GrpcOptionList`](https://cloud.google.com/cpp/docs/reference/common/latest/namespacegoogle_1_1cloud.html)\n- [`google::cloud::UnifiedCredentialsOptionList`](https://cloud.google.com/cpp/docs/reference/common/latest/namespacegoogle_1_1cloud.html)\n- [`google::cloud::tpu_v2::TpuPolicyOptionList`](/cpp/docs/reference/tpu/2.12.0/namespacegoogle_1_1cloud_1_1tpu__v2)\n\n| **Note:** Unexpected options will be ignored. To log unexpected options instead, set `GOOGLE_CLOUD_CPP_ENABLE_CLOG=yes` in the environment.\n\n### MakeDefaultTpuConnectionIdempotencyPolicy()\n\nType Aliases\n------------\n\n### TpuRetryPolicy\n\n**Alias Of** : `::google::cloud::internal::TraitBasedRetryPolicy\u003c tpu_v2_internal::TpuRetryTraits \u003e` \n\n### TpuLimitedTimeRetryPolicy\n\n**Alias Of** : `::google::cloud::internal::LimitedTimeRetryPolicy\u003c tpu_v2_internal::TpuRetryTraits \u003e` \n\n### TpuLimitedErrorCountRetryPolicy\n\n**Alias Of** : `::google::cloud::internal::LimitedErrorCountRetryPolicy\u003c tpu_v2_internal::TpuRetryTraits \u003e` \n\n### TpuPolicyOptionList\n\n**Alias Of** : `OptionList\u003c TpuRetryPolicyOption, TpuBackoffPolicyOption, TpuPollingPolicyOption, TpuConnectionIdempotencyPolicyOption \u003e` \nThe options applicable to Tpu."]]