Dukungan GPU untuk kumpulan pekerja

Halaman ini menjelaskan konfigurasi GPU untuk workerpool Cloud Run Anda. Google menyediakan GPU NVIDIA RTX PRO 6000 Blackwell dengan memori GPU (VRAM) 96 GB dan GPU NVIDIA L4 dengan memori GPU (VRAM) 24 GB, yang terpisah dari memori instance.

GPU di Cloud Run terkelola sepenuhnya, tanpa memerlukan driver atau library tambahan. Fitur GPU menawarkan ketersediaan on-demand tanpa perlu reservasi, mirip dengan cara kerja CPU on-demand dan memori on-demand di Cloud Run.

Instance Cloud Run dengan GPU NVIDIA RTX PRO 6000 Blackwell atau GPU L4 yang terpasang dan driver yang telah diinstal sebelumnya akan dimulai dalam waktu sekitar 5 detik, dan pada saat itu proses yang berjalan di container Anda dapat mulai menggunakan GPU.

Anda dapat mengonfigurasi satu GPU per instance Cloud Run. Jika Anda menggunakan container sidecar, perhatikan bahwa GPU hanya dapat dipasang ke satu container.

Jenis GPU yang didukung

Cloud Run mendukung dua jenis GPU:

  • GPU NVIDIA RTX PRO 6000 Blackwell dengan versi driver NVIDIA saat ini: 580.x.x (13.0). Untuk GPU NVIDIA RTX PRO 6000 Blackwell, Anda harus menggunakan minimal 20 CPU dan memori 80 GiB.
  • GPU L4 dengan versi driver NVIDIA saat ini: 580.x.x (13.0). Untuk GPU L4, Anda harus menggunakan minimal 4 CPU dan memori 16 GiB.

Region yang didukung

Region berikut didukung oleh GPU NVIDIA RTX PRO 6000 Blackwell:

  • asia-southeast1 (Singapura).
  • asia-south2 (Delhi, India).
  • europe-west4 (Belanda) ikon daun CO2 Rendah
  • us-central1 (Iowa) ikon daun CO2 Rendah

Region berikut didukung oleh GPU L4:

  • asia-southeast1 (Singapura)
  • asia-south1 (Mumbai) . Region ini hanya tersedia melalui undangan. Hubungi tim Akun Google Anda jika Anda tertarik dengan region ini.
  • europe-west1 (Belgia) ikon daun CO2 Rendah
  • europe-west4 (Belanda) ikon daun CO2 Rendah
  • us-central1 (Iowa) ikon daun CO2 Rendah . Penskalaan resource tambahan di region ini mungkin memerlukan permintaan penambahan kuota. Hubungi tim Akun Google Anda jika Anda tertarik dengan region ini.
  • us-east4 (Northern Virginia) . Penskalaan resource tambahan di region ini mungkin memerlukan permintaan penambahan kuota. Hubungi tim Akun Google Anda jika Anda tertarik dengan region ini.

Dampak harga

Lihat harga Cloud Run untuk mengetahui detail harga GPU. Perhatikan persyaratan dan pertimbangan berikut:

  • Ada perbedaan biaya antara redundansi zona GPU dan redundansi non-zona. Lihat harga Cloud Run untuk mengetahui detail harga GPU.
  • Kumpulan worker GPU tidak dapat diskalakan secara otomatis. Anda akan dikenai biaya untuk GPU meskipun GPU tidak menjalankan proses apa pun, dan selama instance GPU worker pool berjalan.
  • CPU dan memori untuk worker pool diberi harga yang berbeda dengan layanan dan tugas. Namun, SKU GPU diberi harga yang sama dengan layanan dan tugas.
  • Konfigurasi CPU dan memori resource Anda.
  • GPU ditagih selama seluruh durasi siklus proses instance.

Opsi redundansi zona GPU

Secara default, Cloud Run men-deploy worker pool Anda di beberapa zona dalam satu region. Arsitektur ini memberikan ketahanan yang melekat: jika suatu zona mengalami pemadaman layanan, Cloud Run akan otomatis mengalihkan traffic dari zona yang terpengaruh ke zona yang sehat dalam region yang sama.

Saat menggunakan resource GPU, perlu diingat bahwa resource GPU memiliki batasan kapasitas tertentu. Selama pemadaman layanan di zona, mekanisme failover standar untuk workload GPU mengandalkan ketersediaan kapasitas GPU yang tidak terpakai di zona yang tersisa dan responsif. Karena sifat GPU yang terbatas, kapasitas ini mungkin tidak selalu tersedia.

Untuk meningkatkan ketersediaan worker pool yang dipercepat GPU selama pemadaman layanan di zona, Anda dapat mengonfigurasi redundansi zona khusus untuk GPU:

  • Redundansi Zona Diaktifkan (default): Cloud Run mencadangkan kapasitas GPU untuk worker pool Anda di beberapa zona. Hal ini secara signifikan meningkatkan kemungkinan worker pool Anda dapat berhasil menangani traffic yang dialihkan dari zona yang terpengaruh, sehingga menawarkan keandalan yang lebih tinggi selama kegagalan zona dengan biaya tambahan per detik GPU.

  • Redundansi Zona Dinonaktifkan: Cloud Run akan mencoba failover untuk workload GPU berdasarkan upaya terbaik. Traffic akan dirutekan ke zona lain hanya jika kapasitas GPU yang memadai tersedia pada saat itu. Opsi ini tidak menjamin kapasitas yang dipesan untuk skenario failover, tetapi menghasilkan biaya yang lebih rendah per detik GPU.

SLA

SLA untuk GPU Cloud Run bergantung pada apakah worker pool menggunakan opsi redundansi zona atau redundansi non-zona. Lihat halaman SLA untuk mengetahui detailnya.

Meminta penambahan kuota

Kuota untuk GPU nvidia-rtx-pro-6000 Cloud Run diberikan dalam milliGPU. Project yang menggunakan GPU nvidia-rtx-pro-6000 di suatu region untuk pertama kalinya akan otomatis diberi kuota 3.000 milliGPU (redundansi zona nonaktif) saat deployment pertama dibuat. Ini setara dengan 3 GPU. Project yang menggunakan GPU nvidia-l4 Cloud Run di suatu region untuk pertama kalinya akan otomatis diberi kuota 3 GPU (redundansi zona nonaktif) saat deployment pertama dibuat.

Jika memerlukan GPU Cloud Run tambahan, Anda harus meminta penambahan kuota untuk worker pool Cloud Run. Gunakan link yang disediakan di tombol berikut untuk meminta kuota yang Anda perlukan.

Kuota yang diperlukan Link kuota
GPU NVIDIA RTX PRO 6000 Blackwell dengan redundansi zona dinonaktifkan (harga lebih rendah) Meminta kuota GPU tanpa redundansi zona
GPU NVIDIA RTX PRO 6000 Blackwell dengan redundansi zona diaktifkan (harga lebih tinggi) Meminta kuota GPU dengan redundansi zona
GPU L4 dengan redundansi zona dinonaktifkan (harga lebih rendah) Meminta kuota GPU tanpa redundansi zona
GPU L4 dengan redundansi zona aktif (harga lebih tinggi) Meminta kuota GPU dengan redundansi zona

Untuk mengetahui informasi selengkapnya tentang cara meminta penambahan kuota, lihat Cara menambah kuota.

Sebelum memulai

Daftar berikut menjelaskan persyaratan dan batasan saat menggunakan GPU di Cloud Run:

  1. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  2. Verify that billing is enabled for your Google Cloud project.

  3. Aktifkan Cloud Run API, jika belum diaktifkan.

    Peran yang diperlukan untuk mengaktifkan API

    Untuk mengaktifkan API, Anda memerlukan izin serviceusage.services.enable. Jika Anda membuat project, kemungkinan Anda sudah memiliki izin ini melalui peran Pemilik (roles/owner). Jika tidak, Anda bisa mendapatkan izin ini melalui peran Service Usage Admin (roles/serviceusage.serviceUsageAdmin). Pelajari cara memberikan peran.

    Mengaktifkan API

  4. Minta kuota yang diperlukan.
  5. Lihat Praktik terbaik GPU: Worker pool Cloud Run dengan GPU untuk mendapatkan rekomendasi tentang cara membangun image container dan memuat model besar.
  6. Pastikan worker pool Cloud Run Anda memiliki konfigurasi berikut:
    • Konfigurasikan setelan penagihan ke penagihan berbasis instance. Perhatikan bahwa worker pool yang ditetapkan ke penagihan berbasis instance masih dapat diskalakan ke nol.
    • Untuk GPU NVIDIA RTX PRO 6000 Blackwell, konfigurasikan minimal 20 CPU dan minimal memori 80 GiB.
    • Untuk GPU L4, konfigurasikan minimal 4 CPU untuk worker pool Anda, dengan rekomendasi 8 CPU, dan minimal memori 16 GiB, dengan rekomendasi 32 GiB.
    • Tentukan dan tetapkan konkurensi maksimum yang optimal untuk penggunaan GPU Anda.

Peran yang diperlukan

Untuk mendapatkan izin yang Anda perlukan untuk mengonfigurasi dan men-deploy worker pool Cloud Run, minta administrator untuk memberi Anda peran IAM berikut pada workerpool:

  • Cloud Run Developer (roles/run.developer) - worker pool Cloud Run
  • Service Account User (roles/iam.serviceAccountUser) - pengguna akun layanan

Untuk mengetahui daftar peran dan izin IAM yang terkait dengan Cloud Run, lihat peran IAM Cloud Run dan izin IAM Cloud Run. Jika kumpulan worker Cloud Run Anda berinteraksi dengan APIGoogle Cloud , seperti Library Klien Cloud, lihat panduan konfigurasi identitas layanan. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat izin deployment dan mengelola akses.

Mengonfigurasi worker pool Cloud Run dengan GPU

Setiap perubahan konfigurasi akan menghasilkan revisi baru. Revisi selanjutnya juga akan otomatis mendapatkan setelan konfigurasi ini, kecuali jika Anda melakukan pembaruan eksplisit untuk mengubahnya.

Anda dapat menggunakan konsol Google Cloud , Google Cloud CLI, atau YAML untuk mengonfigurasi GPU.

Konsol

  1. Di konsol Google Cloud , buka Cloud Run:

    Buka Cloud Run

  2. Pilih Worker Pools dari menu navigasi Cloud Run, lalu klik Deploy container untuk mengonfigurasi worker pool baru. Jika Anda mengonfigurasi worker pool yang ada, klik worker pool, lalu klik Edit and deploy new revision.

  3. Jika Anda mengonfigurasi worker pool baru, isi halaman setelan worker pool awal, lalu klik Containers, Networking, Security untuk meluaskan halaman konfigurasi worker pool.

  4. Klik tab Containers.

    gambar

    • Konfigurasikan CPU, memori, konkurensi, lingkungan eksekusi, dan pemeriksaan startup dengan mengikuti rekomendasi di bagian Sebelum memulai
    • Centang kotak GPU, lalu pilih jenis GPU dari menu GPU type, dan jumlah GPU dari menu Number of GPUs.
    • Secara default, redundansi zona diaktifkan. Untuk mengubah setelan saat ini, centang kotak GPU untuk menampilkan opsi GPU redundancy.
      • Pilih No zonal redundancy untuk menonaktifkan redundansi zona
      • Pilih Zonal redundancy untuk mengaktifkan redundansi zona.
  5. Klik Buat atau Deploy.

gcloud

Untuk membuat worker pool yang mendukung GPU, gunakan perintah gcloud run worker-pools deploy:

  gcloud run worker-pools deploy WORKER_POOL \
    --image IMAGE_URL \
    --gpu 1

Ganti kode berikut:

  • WORKER_POOL: nama worker pool Cloud Run Anda.
  • IMAGE_URL: referensi ke image container yang berisi worker pool, seperti us-docker.pkg.dev/cloudrun/container/worker-pool:latest.

Untuk mengupdate konfigurasi GPU untuk worker pool, gunakan perintah gcloud run worker-pools update:

  gcloud run worker-pools update WORKER_POOL \
    --image IMAGE_URL \
    --cpu CPU \
    --memory MEMORY \
    --gpu GPU_NUMBER \
    --gpu-type GPU_TYPE \
    --GPU_ZONAL_REDUNDANCY
    

Ganti kode berikut:

  • WORKER_POOL: nama worker pool Cloud Run Anda.
  • IMAGE_URL: referensi ke image container yang berisi worker pool, seperti us-docker.pkg.dev/cloudrun/container/worker-pool:latest.
  • CPU: jumlah CPU. Untuk GPU NVIDIA RTX PRO 6000 Blackwell, Anda harus menentukan setidaknya 20 CPU. Untuk GPU NVIDIA L4, Anda harus menentukan setidaknya CPU 4.
  • MEMORY: jumlah memori. Untuk GPU NVIDIA RTX PRO 6000 Blackwell, Anda harus menentukan setidaknya 80Gi (80 GiB). Untuk GPU NVIDIA L4, Anda harus menentukan setidaknya 16Gi (16 GiB).
  • GPU_NUMBER: nilai 1 (satu). Jika ini tidak ditentukan, tetapi GPU_TYPE ada, defaultnya adalah 1.
  • GPU_TYPE: jenis GPU. GPU NVIDIA RTX PRO 6000 Blackwell, masukkan nvidia-rtx-pro-6000. Untuk GPU L4, masukkan nilai nvidia-l4 (nvidia-L4 L huruf kecil, bukan nilai numerik empat belas).
  • GPU_ZONAL_REDUNDANCY: no-gpu-zonal-redundancy untuk menonaktifkan redundansi zona, atau gpu-zonal-redundancy untuk mengaktifkan redundansi zona.

YAML

  1. Jika Anda membuat worker pool baru, lewati langkah ini. Jika Anda mengupdate worker pool yang ada, download konfigurasi YAML-nya:

    gcloud run worker-pools describe WORKER_POOL --format export > worker-pool.yaml
  2. Perbarui atribut nvidia.com/gpu: dan nodeSelector:
    run.googleapis.com/accelerator:
    :

    apiVersion: run.googleapis.com/v1
    kind: WorkerPool
    metadata:
      name: WORKER_POOL
    spec:
      template:
        metadata:
          annotations:
            run.googleapis.com/gpu-zonal-redundancy-disabled: 'GPU_ZONAL_REDUNDANCY'
        spec:
          containers:
          - image: IMAGE_URL
            resources:
              limits:
                cpu: 'CPU'
                memory: 'MEMORY'
                nvidia.com/gpu: '1'
          nodeSelector:
            run.googleapis.com/accelerator: GPU_TYPE

    Ganti kode berikut:

    • WORKER_POOL: nama worker pool Cloud Run Anda.
    • IMAGE_URL: referensi ke image container yang berisi worker pool, seperti us-docker.pkg.dev/cloudrun/container/worker-pool:latest.
    • CPU: jumlah CPU. Untuk GPU NVIDIA RTX PRO 6000 Blackwell, Anda harus menentukan minimal 20 CPU. Untuk GPU L4, Anda harus menentukan setidaknya 4 CPU.
    • MEMORY: jumlah memori. Untuk GPU NVIDIA RTX PRO 6000 Blackwell, Anda harus menentukan setidaknya 80Gi (80 GiB). Untuk GPU L4, Anda harus menentukan setidaknya 16Gi (16 GiB).
    • GPU_TYPE: jenis GPU. Untuk GPU NVIDIA RTX PRO 6000 Blackwell, masukkan nvidia-rtx-pro-6000. Untuk GPU L4, masukkan nilai nvidia-l4 (nvidia-L4 L huruf kecil, bukan nilai numerik empat belas).
    • GPU_ZONAL_REDUNDANCY: false untuk mengaktifkan redundansi zona GPU, atau true untuk menonaktifkannya.
  3. Buat atau update worker pool menggunakan perintah berikut:

    gcloud run worker-pools replace worker-pool.yaml

    Perintah gcloud run worker-pools replace secara default menggunakan file worker-pool.yaml jika ada.

Terraform

Untuk mempelajari cara menerapkan atau menghapus konfigurasi Terraform, lihat Perintah dasar Terraform.

resource "google_cloud_run_v2_worker_pool" "default" {
  provider = google-beta
  name     = "WORKER_POOL"
  location = "REGION"

  template {
    gpu_zonal_redundancy_disabled = "GPU_ZONAL_REDUNDANCY"
    containers {
      image = "IMAGE_URL"
      resources {
        limits = {
          "cpu" = "CPU"
          "memory" = "MEMORY"
          "nvidia.com/gpu" = "1"
        }
      }
    }
    node_selector {
      accelerator = "GPU_TYPE"
    }
  }
}

Ganti kode berikut:

  • WORKER_POOL: nama worker pool Cloud Run Anda.
  • GPU_ZONAL_REDUNDANCY: false untuk mengaktifkan redundansi zona GPU, atau true untuk menonaktifkannya.
  • IMAGE_URL: referensi ke image container yang berisi worker pool, seperti us-docker.pkg.dev/cloudrun/container/worker-pool:latest.
  • CPU: jumlah CPU. Untuk GPU NVIDIA RTX PRO 6000 Blackwell, Anda harus menentukan setidaknya 20 CPU. Untuk GPU NVIDIA L4, Anda harus menentukan setidaknya CPU 4.
  • MEMORY: jumlah memori. Untuk GPU NVIDIA RTX PRO 6000 Blackwell, Anda harus menentukan setidaknya 80Gi (80 GiB). Untuk GPU NVIDIA L4, Anda harus menentukan setidaknya 16Gi (16 GiB).
  • GPU_TYPE: jenis GPU. GPU NVIDIA RTX PRO 6000 Blackwell, masukkan nvidia-rtx-pro-6000. Untuk GPU L4, masukkan nilai nvidia-l4 (nvidia-L4 L huruf kecil, bukan nilai numerik empat belas).

Melihat setelan GPU

Untuk melihat setelan GPU saat ini untuk worker pool Cloud Run, gunakan konsol Google Cloud atau Google Cloud CLI:

Konsol

  1. Di konsol Google Cloud , buka halaman worker pool Cloud Run:

    Buka worker pool Cloud Run

  2. Klik worker pool untuk membuka halaman Worker pools details.

  3. Klik Edit and deploy new revision.

  4. Temukan setelan GPU di detail konfigurasi.

gcloud

  1. Jalankan perintah berikut:

    gcloud run worker-pools describe WORKER_POOL
  2. Temukan setelan GPU di konfigurasi yang ditampilkan.

Menghapus GPU

Anda dapat menghapus GPU menggunakan konsol Google Cloud , Google Cloud CLI, atau YAML.

Konsol

  1. Di konsol Google Cloud , buka Cloud Run:

    Buka Cloud Run

  2. Pilih Worker Pools dari menu navigasi Cloud Run, lalu klik Deploy container untuk mengonfigurasi worker pool baru. Jika Anda mengonfigurasi worker pool yang ada, klik worker pool, lalu klik Edit and deploy new revision.

  3. Jika Anda mengonfigurasi worker pool baru, isi halaman setelan worker pool awal, lalu klik Containers, Networking, Security untuk meluaskan halaman konfigurasi worker pool.

  4. Klik tab Containers.

gambar

  • Hapus centang pada kotak GPU.
  1. Klik Buat atau Deploy.

gcloud

Untuk menghapus GPU, tetapkan jumlah GPU ke 0:

  gcloud run worker-pools update WORKER_POOL --gpu 0
  

Ganti WORKER_POOL dengan nama worker pool Cloud Run Anda.

YAML

  1. Jika Anda membuat worker pool baru, lewati langkah ini. Jika Anda mengupdate worker pool yang ada, download konfigurasi YAML-nya:

    gcloud run worker-pools describe WORKER_POOL --format export > worker-pool.yaml
  2. Hapus baris nvidia.com/gpu: dan nodeSelector: run.googleapis.com/accelerator: GPU_TYPE.

  3. Buat atau update worker pool menggunakan perintah berikut:

    gcloud run worker-pools replace worker-pool.yaml

    Perintah gcloud run worker-pools replace secara default menggunakan file worker-pool.yaml jika ada.

Library driver

Secara default, semua library driver GPU NVIDIA RTX PRO 6000 Blackwell dan GPU NVIDIA L4 dipasang di /usr/local/nvidia/lib64. Cloud Run otomatis menambahkan jalur ini ke variabel lingkungan LD_LIBRARY_PATH (yaitu ${LD_LIBRARY_PATH}:/usr/local/nvidia/lib64) container dengan GPU. Hal ini memungkinkan penaut dinamis menemukan library driver NVIDIA. Penaut menelusuri dan me-resolve jalur dalam urutan yang Anda cantumkan dalam variabel lingkungan LD_LIBRARY_PATH. Setiap nilai yang Anda tentukan dalam variabel ini akan lebih diprioritaskan daripada jalur library driver Cloud Run default /usr/local/nvidia/lib64.

Jika Anda ingin menggunakan versi CUDA yang lebih tinggi dari 13.0, cara termudah adalah mengandalkan image dasar NVIDIA yang lebih baru dengan paket kompatibilitas maju yang sudah diinstal. Opsi lainnya adalah menginstal paket kompatibilitas maju NVIDIA secara manual dan menambahkannya ke LD_LIBRARY_PATH. Lihat matriks kompatibilitas NVIDIA untuk menentukan versi CUDA yang kompatibel dengan versi driver NVIDIA yang disediakan.