TPU 소프트웨어 버전
이 문서에서는 Cloud TPU를 만들 때 적합한 TPU 소프트웨어 버전을 선택하는 방법을 안내합니다.
TPU 리소스를 만들 때 런타임 버전이라고도 하는 소프트웨어 버전을 지정합니다. 이 버전은 TPU VM에 사전 설치된 소프트웨어 환경을 나타냅니다. 여기에는 Ubuntu 운영체제, Docker, TPU에서 코드를 실행하는 데 필요한 기타 소프트웨어가 포함됩니다.
Google Cloud CLI를 사용하는 경우 --version
또는 --runtime-version
매개변수를 사용하여 TPU 소프트웨어 버전을 지정합니다. Google Cloud 콘솔을 사용하는 경우 TPU 소프트웨어 버전 목록에서 TPU 소프트웨어 버전을 선택합니다.
PyTorch 및 JAX
PyTorch 및 JAX에 대해 다음과 같은 일반적인 TPU 소프트웨어 버전을 사용한 후 사용하려는 프레임워크를 설치합니다.
TPU 버전 | TPU 소프트웨어 버전 |
---|---|
Trillium(v6e) | v2-alpha-tpuv6e |
v5p | v2-alpha-tpuv5 |
v5e | v2-alpha-tpuv5-lite |
v4 이하 | tpu-ubuntu2204-base |
PyTorch 또는 JAX 설치 및 시작에 관한 자세한 내용은 PyTorch를 사용하여 Cloud TPU VM에서 계산 실행 및 JAX를 사용하여 Cloud TPU VM에서 계산 실행을 참조하세요.
TensorFlow
TPU 소프트웨어 버전의 이름은 다음으로 구성됩니다.
tpu-vm-tf
- TensorFlow 버전
-pod
(멀티 호스트 TPU 슬라이스를 사용하는 경우)-pjrt
(PJRT API를 사용하는 경우)
TPU 소프트웨어 버전을 지정하는 방법에 관한 자세한 내용은 다음 섹션을 참조하세요.
각 TensorFlow 버전과 관련된 TPU 소프트웨어 버전이 있습니다. 다음 표에는 지원되는 TensorFlow 버전과 연결된 libtpu 버전이 나와 있습니다.
TensorFlow 버전 | libtpu.so 버전 |
---|---|
2.18.0 | 1.12.0 |
2.17.1 | 1.11.1 |
2.17.0 | 1.11.0 |
2.16.2 | 1.10.1 |
2.16.1 | 1.10.1 |
2.15.1 | 1.9.0 |
2.15.0 | 1.9.0 |
2.14.1 | 1.8.1 |
2.14.0 | 1.8.0 |
2.13.1 | 1.7.1 |
2.13.0 | 1.7.0 |
2.12.1 | 1.6.1 |
2.12.0 | 1.6.0 |
2.11.1 | 1.5.1 |
2.11.0 | 1.5.0 |
2.10.1 | 1.4.1 |
2.10.0 | 1.4.0 |
2.9.3 | 1.3.2 |
2.9.1 | 1.3.0 |
2.8.3 | 1.2.3 |
2.8.0 | 1.2.0 |
2.7.3 | 1.1.2 |
TensorFlow 패치 버전에 대한 자세한 내용은 지원되는 TensorFlow 패치 버전을 참조하세요.
TPU v6e, v5p, v5e
TPU v6e, v5e 및 v5p는 TensorFlow 2.15.0 이상을 지원합니다. tpu-vm-tf-x.y.z-{pod}-pjrt
형식으로 TPU 소프트웨어 버전을 지정합니다. 여기서 x
는 TensorFlow 주 버전이고, y
는 부 버전이고, z
는 TensorFlow 패치 버전입니다. 멀티 호스트 TPU를 사용하는 경우 TensorFlow 버전 다음에 pod
를 추가합니다. 예를 들어 멀티 호스트 TPU에서 TensorFlow 2.16.0을 사용하는 경우 tpu-vm-tf-2.16.0-pod-pjrt
TPU 소프트웨어 버전을 사용합니다. 다른 TensorFlow 버전의 경우 2.16.0
을 사용 중인 TensorFlow 주 버전 및 패치 버전으로 바꿉니다. 단일 호스트 TPU를 사용하는 경우 pod
를 생략합니다.
TPU v4
TPU v4 및 TensorFlow 2.10.1 이상을 사용하는 경우 TPU v2 및 v3에 대한 안내를 따르세요. TensorFlow 2.10.0 이하를 사용하는 경우 v4 관련 TPU 소프트웨어 버전을 사용합니다.
TensorFlow 버전 | TPU 소프트웨어 버전 |
---|---|
2.10.0 | tpu-vm-tf-2.10.0-v4 tpu-vm-tf-2.10.0-pod-v4 |
2.9.3 | tpu-vm-tf-2.9.3-v4 tpu-vm-tf-2.9.3-pod-v4 |
2.9.2 | tpu-vm-tf-2.9.2-v4 tpu-vm-tf-2.9.2-pod-v4 |
2.9.1 | tpu-vm-tf-2.9.1-v4 tpu-vm-tf-2.9.1-pod-v4 |
TPU v2 및 v3
TPU v2 또는 v3를 사용 중이면 사용 중인 TensorFlow 버전과 일치하는 TPU 소프트웨어 버전을 사용합니다. 예를 들어 TensorFlow 2.14.1을 사용하는 경우 tpu-vm-tf-2.14.1
TPU 소프트웨어 버전을 사용합니다. 다른 TensorFlow 버전의 경우 2.14.1
을 사용 중인 TensorFlow 버전으로 바꿉니다. 멀티 호스트 TPU를 사용 중이면 TPU 소프트웨어 버전 끝에 포드를 추가합니다. 예를 들면 tpu-vm-tf-2.14.1-pod
입니다.
TensorFlow 2.15.0부터는 소프트웨어 버전 이름의 일부로 기기 API도 지정해야 합니다. 예를 들어 PJRT API와 함께 TensorFlow 2.16.1을 사용하는 경우 TPU 소프트웨어 버전 tpu-vm-tf-2.16.1-pjrt
를 사용합니다. 동일한 TensorFlow 버전과 함께 스트림 실행자 API를 사용 중이면 TPU 소프트웨어 버전 tpu-vm-tf-2.16.1-se
를 사용합니다. 2.15.0 이전의 TensorFlow 버전만 스트림 실행자를 지원합니다.
TensorFlow PJRT 지원
TensorFlow 2.15.0부터는 TPU에서 TensorFlow에 대한 PJRT 인터페이스를 사용할 수 있습니다. PJRT는 자동화된 기기 메모리 조각 모음을 제공하고 하드웨어와 프레임워크의 통합을 간소화합니다. PJRT에 대한 자세한 내용은 PJRT: ML 하드웨어와 프레임워크의 통합 간소화를 참조하세요.
Accelerator | 기능 | PJRT 지원 | 스트림 실행자 지원 |
---|---|---|---|
TPU v2 - v4 | 고밀도 컴퓨팅(TPU 임베딩 API 없음) | 예 | 예 |
TPU v2 - v4 | 고밀도 컴퓨팅 API + TPU 임베딩 API | 아니요 | 예 |
TPU v2 - v4 | 소프트웨어 기기 배치가 포함된 tf.summary/tf.print | 아니요 | 예 |
TPU v5e | 고밀도 컴퓨팅(TPU 임베딩 API 없음) | 예 | 아니요 |
TPU v5e | TPU 임베딩 API | 해당 사항 없음 | 아니요 |
TPU v5p | 고밀도 컴퓨팅(TPU 임베딩 API 없음) | 예 | 아니요 |
TPU v5p | TPU 임베딩 API | 예 | 아니요 |