Cloud TPU 환경 설정

Cloud TPU 리소스를 사용하여 모델을 학습하거나 추론을 실행하려면 다음 설정 단계를 수행해야 합니다.

Google Cloud 프로젝트 설정

Cloud TPU를 사용하려면 Google Cloud 계정과 프로젝트가 있어야 합니다.

  1. Google Cloud 콘솔에서 Google 계정에 로그인하거나 가입하여 새로운 계정을 만듭니다.

  2. Google Cloud CLI를 설치합니다. Google Cloud CLI는 Google Cloud 리소스 및 서비스를 액세스하고 관리하기 위한 인터페이스입니다.

  3. Google Cloud 프로젝트를 선택하거나 만듭니다.

    Google Cloud 콘솔의 프로젝트 선택기 페이지에서 클라우드 프로젝트를 선택하거나 만듭니다.

    Cloud Shell에서 gcloud CLI를 사용하여 프로젝트 ID를 설정합니다. 프로젝트 ID는 Google Cloud 콘솔에 표시된 프로젝트의 이름입니다.

    $ gcloud config set project PROJECT-ID
    
  4. Google Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다.

    Google Cloud를 사용하기 위해서는 결제 설정이 필요합니다. Google Cloud 리소스를 사용하기 시작한 후에만 요금이 청구됩니다. 자세한 내용은 Cloud Billing 문서를 참조하세요.

    모든 Cloud TPU 버전 사용에 대한 결제는 Cloud TPU 가격 책정 페이지에 표시된 표준 리전 가격 책정을 따릅니다.

Cloud TPU를 사용하도록 환경 설정

Cloud TPU를 요청하려면 먼저 Cloud TPU API를 활성화하고 프로젝트에서 액세스를 관리하고 Cloud TPU를 만들 수 있는 권한이 있어야 합니다. 또한 TPU에 연결할 사용자 관리 서비스 계정을 만드는 것이 좋습니다.

  1. Google Cloud 콘솔에서 또는 Cloud Shell의 gcloud CLI를 사용하여 Cloud TPU API를 활성화합니다.

    gcloud

    $ gcloud services enable tpu.googleapis.com
    

    콘솔

    1. Google Cloud 콘솔에서 Cloud TPU API 페이지로 이동합니다.

    Cloud TPU API 페이지로 이동

    1. 사용 설정을 클릭합니다.
  2. 프로젝트에 대해 다음 역할이 있는지 확인합니다.

    현재 액세스 권한 보기의 안내에 따라 프로젝트, 폴더, 조직에 대해 액세스 권한이 있는 사람을 확인합니다. 자체 액세스 권한을 보려면 주 구성원 열에서 이메일 주소가 있는 행을 찾습니다. 해당 열에 이메일 주소가 없으면 역할이 없는 것입니다. 이메일 주소가 있는 행에 대해 역할 열에서 역할 목록에 필요한 역할이 있는지 확인합니다.

    필요한 역할이 없으면 역할을 부여하거나 관리자에게 요청합니다.

  3. TPU 서비스 계정을 만듭니다.

    서비스 계정은 Cloud TPU 서비스가 다른 Google Cloud 서비스에 액세스하도록 허용합니다. Google Cloud에서 권장하는 방식은 사용자 관리형 서비스 계정입니다. --service-account 플래그를 사용해서 서비스 계정을 만들 때 TPU에 연결합니다.

    1. 서비스 계정 만들기의 안내에 따라 서비스 계정을 만듭니다.

    2. 프로젝트, 폴더, 조직에 대한 액세스 관리의 안내에 따라 TPU가 액세스하는 Google Cloud 서비스에 대한 액세스 권한을 서비스 계정에 부여합니다. TPU가 일반적으로 사용되는 Google Cloud 서비스에 액세스할 수 있도록 다음 역할이 권장됩니다.

Cloud TPU 만들기 준비

Cloud TPU를 만들기 전에 할당량을 요청해야 합니다. 또한 TPU 구성에 사용하려는 매개변수와 함께 큐에 추가된 리소스를 사용하는 것이 좋습니다.

  1. 할당량 요청:

    Cloud TPU를 만들려면 해당 Google Cloud 프로젝트에 만들려는 TPU 크기와 버전에 대한 할당량 그리고 만들려는 영역이 포함되어 있어야 합니다 예를 들어 us-central2-b에서 TPU v4-8을 만들려면 us-central2-b에서 8개의 TPU v4 코어 할당량을 요청해야 합니다. Cloud TPU를 사용할 수 있는 영역에 대한 자세한 내용은 TPU 리전 및 영역을 참조하세요.

    할당량은 TPU 버전에 따라 서로 다르게 할당됩니다. 할당량의 각 유형에 따라 가용성 기대값이 달라집니다. 할당량 할당, 할당량 유형, 할당량 요청 방법에 대한 자세한 내용은 할당량을 참조하세요.

  2. 큐에 추가된 리소스를 사용할지 여부를 결정합니다.

    Cloud TPU를 큐에 추가된 리소스로 만드는 것이 가장 좋습니다. 용량을 사용할 수 있게 되면 큐에 추가된 리소스에서 용량을 받을 수 있습니다. 요청을 작성할 때 선택적으로 시작 시간과 종료 시간을 지정할 수 있습니다.

    큐에 추가된 리소스 작업을 수행할 때 gcloud CLI 명령어는 서로 다릅니다. 자세한 내용은 큐에 추가된 리소스 사용자 가이드를 참조하세요.

  3. 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 서비스 계정이 사용됩니다.

    • 할당량 유형: 예약된 할당량을 사용해서 TPU를 만들려면 요청에 --reserved 플래그를 추가합니다.

      큐에 추가된 리소스를 요청하고 선점형 할당량을 사용해서 TPU를 만들려면 요청에 --best-effort 플래그를 추가합니다.

      큐에 추가된 리소스를 요청하지 않고 선점형 할당량을 사용해서 TPU를 만들려면 요청에 --preemptible 플래그를 추가합니다.

      주문형 할당량을 사용해서 TPU를 만들려면 플래그를 더 추가할 필요가 없습니다.

    • 고급 구성: TPU 구성을 위해 요청에 플래그를 더 추가할 수 있습니다. 자세한 내용은 gcloud compute tpus tpu-vm create 문서TPU 관리의 다음 섹션을 참조하세요.

Cloud TPU를 만드는 방법에 대한 예시는 시작하기를 참조하세요.

다음 단계

  1. VM 및 TPU 리소스를 만들고 관리하는 방법 알아보기
  2. Cloud TPU 빠른 시작 실행