Cloud TPU 환경 설정
Cloud TPU 리소스를 사용하여 모델을 학습하거나 추론을 실행하려면 다음 설정 단계를 수행해야 합니다.
Google Cloud 프로젝트 설정
Cloud TPU를 사용하려면 Google Cloud 계정과 프로젝트가 있어야 합니다.
Google Cloud 콘솔에서 Google 계정에 로그인하거나 가입하여 새로운 계정을 만듭니다.
Google Cloud CLI를 설치합니다. Google Cloud CLI는 Google Cloud 리소스 및 서비스를 액세스하고 관리하기 위한 인터페이스입니다.
Google Cloud 프로젝트를 선택하거나 만듭니다.
Google Cloud 콘솔의 프로젝트 선택기에서 Cloud 프로젝트를 선택하거나 만듭니다.
Cloud Shell에서 gcloud CLI를 사용하여 프로젝트 ID를 설정합니다. 프로젝트 ID는 Google Cloud 콘솔에 표시된 프로젝트의 이름입니다.
$ gcloud config set project PROJECT-ID
Google Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다.
Google Cloud를 사용하기 위해서는 결제 설정이 필요합니다. Google Cloud 리소스를 사용하기 시작한 후에만 요금이 청구됩니다. 자세한 내용은 Cloud Billing 문서를 참조하세요.
모든 Cloud TPU 버전 사용에 대한 결제는 Cloud TPU 가격 책정 페이지에 표시된 표준 리전 가격 책정을 따릅니다.
Cloud TPU를 사용하도록 환경 설정
Cloud TPU를 요청하려면 먼저 Cloud TPU API를 활성화하고 프로젝트에서 액세스를 관리하고 Cloud TPU를 만들 수 있는 권한이 있어야 합니다. 또한 TPU에 연결할 사용자 관리 서비스 계정을 만드는 것이 좋습니다.
Google Cloud 콘솔에서 또는 Cloud Shell의 gcloud CLI를 사용하여 Cloud TPU API를 활성화합니다.
gcloud
$ gcloud services enable tpu.googleapis.com
콘솔
- Google Cloud 콘솔에서 Cloud TPU API 페이지로 이동합니다.
- 사용 설정을 클릭합니다.
프로젝트에 대해 다음 역할이 있는지 확인합니다.
- 서비스 계정 관리자: 서비스 계정을 만드는 데 필요합니다.
- 프로젝트 IAM 관리자: 프로젝트에서 역할을 부여하는 데 필요합니다.
- TPU 관리자: TPU를 만드는 데 필요합니다.
현재 액세스 권한 보기의 안내에 따라 프로젝트, 폴더, 조직에 대해 액세스 권한이 있는 사람을 확인합니다. 자체 액세스 권한을 보려면 주 구성원 열에서 이메일 주소가 있는 행을 찾습니다. 해당 열에 이메일 주소가 없으면 역할이 없는 것입니다. 이메일 주소가 있는 행에 대해 역할 열에서 역할 목록에 필요한 역할이 있는지 확인합니다.
필요한 역할이 없으면 역할을 부여하거나 관리자에게 요청합니다.
Cloud TPU 서비스 에이전트를 만듭니다.
서비스 ID 유형인 서비스 에이전트는 Cloud TPU 서비스가 Google Cloud 프로젝트에서 작업을 수행하는 데 사용하는 Google이 유지관리하는 서비스 ID입니다. 예를 들어 서비스 에이전트는 Cloud TPU 리소스를 만들고 관리하는 데 사용됩니다.
$ gcloud beta services identity create --service tpu.googleapis.com --project $PROJECT_ID
TPU 서비스 계정을 만듭니다.
서비스 계정은 TPU VM의 사용자 인증 정보 역할을 합니다. 서비스 계정에 연결된 역할은 Google Cloud 리소스에 대한 액세스 권한을 부여합니다. 사용자 관리형 서비스 계정을 사용하여 TPU VM에 필요한 권한만 부여하는 것이 좋습니다. 사용자 관리형 서비스 계정을 사용할 때는
--service-account
플래그를 사용하여 TPU VM을 만들 때 이를 지정해야 합니다.서비스 계정 만들기의 안내에 따라 사용자 관리형 서비스 계정을 만듭니다.
프로젝트, 폴더, 조직에 대한 액세스 관리의 안내에 따라 TPU가 액세스하는 Google Cloud 서비스에 대한 액세스 권한을 서비스 계정에 부여합니다. TPU가 일반적으로 사용되는 Google Cloud 서비스에 액세스할 수 있도록 다음 역할이 권장됩니다.
- TPU 관리자: TPU 리소스에 대한 전체 액세스를 위해 필요합니다.
- 스토리지 관리자: Cloud Storage에 액세스하는 데 필요합니다.
- 로그 작성자: Logging API로 로그를 작성하는 데 필요합니다.
- 모니터링 측정항목 작성자: Cloud Monitoring에 측정항목을 쓰는 데 필요합니다.
Cloud TPU 만들기 준비
Cloud TPU를 만들기 전에 할당량을 요청해야 합니다. 또한 TPU 구성에 사용하려는 매개변수와 함께 큐에 추가된 리소스를 사용하는 것이 좋습니다.
할당량 요청:
Cloud TPU를 만들려면 해당 Google Cloud 프로젝트에 만들려는 TPU 크기와 버전에 대한 할당량 그리고 만들려는 영역이 포함되어 있어야 합니다 예를 들어
us-central2-b
에서 TPU v4-8을 만들려면us-central2-b
에서 8개의 TPU v4 코어 할당량을 요청해야 합니다. Cloud TPU를 사용할 수 있는 영역에 대한 자세한 내용은 TPU 리전 및 영역을 참조하세요.할당량은 TPU 버전에 따라 다르게 할당됩니다. 할당량의 각 유형에 따라 가용성 기댓값이 달라집니다. 할당량 할당, 할당량 유형, 할당량 요청 방법에 대한 자세한 내용은 할당량을 참조하세요.
큐에 추가된 리소스를 사용할지 여부를 결정합니다.
Cloud TPU를 큐에 추가된 리소스로 만드는 것이 가장 좋습니다. 용량을 사용할 수 있게 되면 큐에 추가된 리소스에서 용량을 받을 수 있습니다. 요청을 작성할 때 선택적으로 시작 시간과 종료 시간을 지정할 수 있습니다.
큐에 추가된 리소스 작업을 수행할 때 gcloud CLI 명령어는 서로 다릅니다. 자세한 내용은 큐에 추가된 리소스 사용자 가이드를 참조하세요.
Cloud TPU 만들기 매개변수를 확인합니다.
영역:
--zone
플래그를 TPU를 만들려는 영역으로 설정합니다. 이 영역에 할당량이 할당되어 있어야 합니다. 자세한 내용은 TPU 리전 및 영역을 참조하세요.TPU 구성: 커스텀 토폴로지를 지정할 필요가 없거나 TPU v2 또는 v3를 사용 중이면
--accelerator-type
플래그를vVERSION-TENSORCORES
로 설정합니다. VERSION을 사용하려는 TPU 버전으로 바꿉니다. TENSORCORES를 사용하려는 TensorCores 수로 바꿉니다.TPU의 물리적 토폴로지를 맞춤설정하려면
--version
및--topology
플래그를 사용합니다.--version
플래그를 사용하려는 TPU 버전으로 설정합니다.--topology
플래그를 사용하려는 토폴로지로 설정합니다.지원되는 구성과 토폴로지 변형을 포함하여 TPU 구성에 대한 자세한 내용은 TPU 구성을 참조하세요.
소프트웨어 버전: 큐에 추가된 리소스를 요청하는 경우
--runtime-version
플래그를 사용하려는 소프트웨어 버전의 이름으로 설정합니다. 그렇지 않으면--version
플래그를 사용합니다. TPU 소프트웨어 버전은 TensorFlow, PyTorch, JAX 프레임워크에서 사용할 수 있습니다. 지원되는 소프트웨어 버전에 대한 자세한 내용은 TPU VM 소프트웨어 버전을 참조하세요.서비스 계정: 서비스 계정을 TPU에 연결하기 위해
--service-account
를 서비스 계정(만든 경우)의 이메일 주소로 설정합니다. 비워 두면 기본 Compute Engine 서비스 계정이 사용됩니다.할당량 유형: 사용하려는 할당량 유형에 해당하는 플래그를 추가합니다.
할당량 유형 플래그 예약한 라이선스 수 --reserved
스팟 VM --spot
큐에 추가된 리소스를 사용한 선점형 --best-effort
큐에 추가된 리소스를 사용하지 않는 선점형 --preemptible
주문형 추가 플래그 필요 없음 고급 구성: TPU 구성을 위해 요청에 플래그를 더 추가할 수 있습니다. 자세한 내용은
gcloud compute tpus tpu-vm create
문서 및 TPU 관리의 다음 섹션을 참조하세요.
Cloud TPU를 만드는 방법에 대한 예시는 시작하기를 참조하세요.
다음 단계
- VM 및 TPU 리소스를 만들고 관리하는 방법 알아보기
- Cloud TPU 빠른 시작 실행