Halaman ini menjelaskan konfigurasi GPU untuk layanan Cloud Run Anda. GPU berfungsi dengan baik untuk workload inferensi AI, seperti model bahasa besar (LLM) atau kasus penggunaan non-AI yang sarat komputasi lainnya seperti transcoding video dan rendering 3D. 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 layanan Cloud Run yang telah dikonfigurasi untuk menggunakan GPU dapat diperkecil skalanya hingga nol untuk menghemat biaya saat tidak digunakan.
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)CO2 Rendah
us-central1(Iowa)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)CO2 Rendah
europe-west4(Belanda)CO2 Rendah
us-central1(Iowa)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:
- Tidak ada biaya per permintaan. Anda harus menggunakan penagihan berbasis instance untuk menggunakan fitur GPU. Instance minimum dikenai biaya penuh meskipun dalam status tidak ada aktivitas.
- Ada perbedaan biaya antara redundansi zona GPU dan redundansi non-zona. Lihat harga Cloud Run untuk mengetahui detail harga GPU.
- Saat Anda men-deploy layanan atau fungsi Cloud Run dari kode sumber dengan GPU diaktifkan, Cloud Run menggunakan jenis mesin
e2-highcpu-8, bukan jenis mesine2-standard-2default untuk membangun kode sumber Anda. Jenis mesin yang lebih besar memberikan dukungan CPU yang lebih tinggi, dan bandwidth jaringan yang lebih tinggi, sehingga menghasilkan waktu build yang lebih cepat. - Konfigurasi CPU dan memori resource Anda.
- GPU ditagih selama seluruh durasi siklus proses instance.
Opsi redundansi zona GPU
Secara default, Cloud Run men-deploy layanan 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 layanan yang diakselerasi GPU selama pemadaman layanan di zona, Anda dapat mengonfigurasi redundansi zona khusus untuk GPU:
Redundansi Zona Diaktifkan (default): Cloud Run mencadangkan kapasitas GPU untuk layanan Anda di beberapa zona. Hal ini secara signifikan meningkatkan kemungkinan bahwa layanan 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 Cloud Run GPU bergantung pada apakah layanan 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 layanan 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:
-
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
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.- Minta kuota yang diperlukan.
- Lihat Praktik terbaik: Inferensi AI di Cloud Run dengan GPU untuk mendapatkan rekomendasi tentang cara membangun image container dan memuat model besar.
- Pastikan layanan Cloud Run Anda memiliki konfigurasi berikut:
- Konfigurasikan setelan penagihan ke penagihan berbasis instance. Perhatikan bahwa layanan yang ditetapkan ke penagihan berbasis instance tetap dapat diskalakan hingga nol.
- Untuk GPU NVIDIA RTX PRO 6000 Blackwell, konfigurasikan minimal 20 CPU dan minimal memori 80 GiB.
- Untuk GPU L4, konfigurasi minimal 4 CPU untuk layanan 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.
- Instance maksimum harus ditetapkan ke angka yang lebih rendah daripada kuota per project per region untuk GPU yang diizinkan. Lihat Tentang GPU dan instance maksimum.
Peran yang diperlukan
Untuk mendapatkan izin yang Anda perlukan untuk mengonfigurasi dan men-deploy layanan Cloud Run, minta administrator untuk memberi Anda peran IAM berikut pada layanan:
- Developer Cloud Run (
roles/run.developer) - layanan Cloud Run - Service Account User (
roles/iam.serviceAccountUser) - pengguna akun layanan
Jika Anda men-deploy layanan atau fungsi dari kode sumber, Anda juga harus memiliki peran tambahan yang diberikan kepada Anda di project dan akun layanan Cloud Build.
Untuk mengetahui daftar peran dan izin IAM yang terkait dengan Cloud Run, lihat peran IAM Cloud Run dan izin IAM Cloud Run. Jika layanan Cloud Run Anda berinteraksi dengan Google Cloud API, seperti Library Klien Cloud, lihat panduan konfigurasi identitas layanan. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat izin deployment dan mengelola akses.
Mengonfigurasi layanan 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
Di konsol Google Cloud , buka Cloud Run:
Pilih Services dari menu navigasi Cloud Run:
Jika Anda mengonfigurasi layanan baru, klik Deploy container dan isi halaman setelan layanan awal. Kemudian, klik Containers, Networking, Security untuk meluaskan halaman konfigurasi layanan.
Jika Anda mengonfigurasi layanan yang ada, klik layanan tersebut.
Klik tab Containers.
Konfigurasikan CPU, memori, konkurensi, lingkungan eksekusi, dan pemeriksaan startup dengan mengikuti rekomendasi di Sebelum memulai.
Centang kotak GPU, lalu pilih GPU type dan Number of GPU dari menu masing-masing.
Secara default, redundansi zona diaktifkan untuk layanan baru. Memilih kotak centang GPU akan menampilkan opsi GPU redundancy.
- Untuk menonaktifkan redundansi zona, pilih No zonal redundancy.
- Untuk mengaktifkan redundansi zona, pilih Zonal redundancy.
Klik Create untuk layanan baru. Klik View diff & redeploy, lalu Deploy changes untuk layanan yang ada.
gcloud
Untuk membuat layanan dengan GPU yang diaktifkan, gunakan perintah gcloud run deploy:
Untuk men-deploy container:
gcloud run deploy SERVICE \ --image IMAGE_URL \ --gpu 1
Ganti kode berikut:
- SERVICE: nama layanan Cloud Run Anda.
IMAGE_URL: referensi ke image container, misalnya,us-docker.pkg.dev/cloudrun/container/hello:latest. Jika Anda menggunakan Artifact Registry, repositori REPO_NAME harus sudah dibuat. URL mengikuti formatLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG.
Untuk men-deploy dari kode sumber:
gcloud run deploy SERVICE \ --source . \ --gpu 1
Untuk memperbarui konfigurasi GPU untuk layanan, gunakan perintah
gcloud run services update. Misalnya, untuk mengupdate layanan yang sudah ada yang menentukan image container:
gcloud run services update SERVICE \ --image IMAGE_URL \ --cpu CPU \ --memory MEMORY \ --no-cpu-throttling \ --gpu GPU_NUMBER \ --gpu-type GPU_TYPE \ --max-instances MAX_INSTANCE --GPU_ZONAL_REDUNDANCY
Ganti kode berikut:
- SERVICE: nama layanan Cloud Run Anda.
IMAGE_URL: referensi ke image container, misalnya,us-docker.pkg.dev/cloudrun/container/hello:latest. Jika Anda menggunakan Artifact Registry, repositori REPO_NAME harus sudah dibuat. URL mengikuti formatLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG.- CPU: jumlah CPU. Untuk GPU NVIDIA RTX PRO 6000 Blackwell, Anda harus menentukan setidaknya
20CPU. Untuk GPU L4, Anda harus menentukan setidaknya4CPU. - MEMORY: jumlah memori. Untuk GPU NVIDIA RTX PRO 6000 Blackwell, Anda harus menentukan setidaknya
80Gi(80 GiB). Untuk GPU L4, Anda harus menentukan setidaknya16Gi(16 GiB). - GPU_NUMBER: nilai
1(satu). Jika ini tidak ditentukan, tetapi GPU_TYPE ada, defaultnya adalah1. - GPU_TYPE: jenis GPU. GPU NVIDIA RTX PRO 6000 Blackwell,
masukkan
nvidia-rtx-pro-6000. Untuk GPU L4, masukkan nilainvidia-l4(nvidia-L4 L huruf kecil, bukan nilai numerik empat belas). - MAX_INSTANCE: jumlah maksimum instance. Jumlah ini tidak boleh melebihi kuota GPU yang dialokasikan untuk project Anda.
- GPU_ZONAL_REDUNDANCY:
no-gpu-zonal-redundancyuntuk menonaktifkan redundansi zona, ataugpu-zonal-redundancyuntuk mengaktifkan redundansi zona.
YAML
Jika Anda membuat layanan baru, lewati langkah ini. Jika Anda mengupdate layanan yang ada, download konfigurasi YAML-nya:
gcloud run services describe SERVICE --format export > service.yaml
Perbarui atribut
nvidia.com/gpu:dannodeSelector::
run.googleapis.com/accelerator:apiVersion: serving.knative.dev/v1 kind: Service metadata: name: SERVICE spec: template: metadata: annotations: autoscaling.knative.dev/maxScale: 'MAX_INSTANCE' run.googleapis.com/cpu-throttling: 'false' run.googleapis.com/gpu-zonal-redundancy-disabled: 'GPU_ZONAL_REDUNDANCY' spec: containers: - image: IMAGE_URL ports: - containerPort: CONTAINER_PORT name: http1 resources: limits: cpu: 'CPU' memory: 'MEMORY' nvidia.com/gpu: '1' # Optional: use a longer startup probe to allow long starting containers startupProbe: failureThreshold: 1800 periodSeconds: 1 tcpSocket: port: CONTAINER_PORT timeoutSeconds: 1 nodeSelector: run.googleapis.com/accelerator: GPU_TYPE
Ganti kode berikut:
- SERVICE: nama layanan Cloud Run Anda.
IMAGE_URL: referensi ke image container, misalnya,us-docker.pkg.dev/cloudrun/container/hello:latest. Jika Anda menggunakan Artifact Registry, repositori REPO_NAME harus sudah dibuat. URL mengikuti formatLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG.- CONTAINER_PORT: port container yang ditetapkan untuk layanan Anda.
- CPU: jumlah CPU. Untuk GPU NVIDIA RTX PRO 6000 Blackwell, Anda harus menentukan minimal
20CPU. Untuk GPU L4, Anda harus menentukan minimal4CPU. - MEMORY: jumlah memori. Untuk GPU NVIDIA RTX PRO 6000 Blackwell, Anda harus menentukan setidaknya
80Gi(80 GiB). Untuk GPU L4, Anda harus menentukan setidaknya16Gi(16 GiB). - GPU_TYPE: jenis GPU. GPU NVIDIA RTX PRO 6000 Blackwell,
masukkan
nvidia-rtx-pro-6000. Untuk GPU L4, masukkan nilainvidia-l4(nvidia-L4 L huruf kecil, bukan nilai numerik empat belas). - MAX_INSTANCE: jumlah maksimum instance. Jumlah ini tidak boleh melebihi kuota GPU yang dialokasikan untuk project Anda.
- GPU_ZONAL_REDUNDANCY:
falseuntuk mengaktifkan redundansi zona GPU, atautrueuntuk menonaktifkannya.
Buat atau update layanan menggunakan perintah berikut:
gcloud run services replace service.yaml
Perintah
gcloud run services replacesecara default menggunakan fileservice.yamljika ada.
Terraform
Untuk mempelajari cara menerapkan atau menghapus konfigurasi Terraform, lihat Perintah dasar Terraform.
Tambahkan kode berikut ke resourcegoogle_cloud_run_v2_service
di konfigurasi Terraform Anda:resource "google_cloud_run_v2_service" "default" {
provider = google-beta
name = "SERVICE"
location = "europe-west1"
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:
- SERVICE: nama layanan Cloud Run Anda.
- GPU_ZONAL_REDUNDANCY:
falseuntuk mengaktifkan redundansi zona GPU, atautrueuntuk menonaktifkannya. IMAGE_URL: referensi ke image container, misalnya,us-docker.pkg.dev/cloudrun/container/hello:latest. Jika Anda menggunakan Artifact Registry, repositori REPO_NAME harus sudah dibuat. URL mengikuti formatLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG.- CPU: jumlah CPU. Untuk GPU NVIDIA RTX PRO 6000 Blackwell, Anda harus menentukan setidaknya
20CPU. Untuk GPU L4, Anda harus menentukan setidaknya4CPU. - MEMORY: jumlah memori. Untuk GPU NVIDIA RTX PRO 6000 Blackwell, Anda harus menentukan
setidaknya
80Gi(80 GiB). Untuk GPU L4, Anda harus menentukan minimal16Gi(16 GiB). - GPU_TYPE: jenis GPU. Untuk GPU NVIDIA RTX PRO 6000 Blackwell,
masukkan
nvidia-rtx-pro-6000. Untuk GPU L4, masukkan nilainvidia-l4(nvidia-L4 L huruf kecil, bukan nilai numerik empat belas).
Melihat setelan GPU
Untuk melihat setelan GPU saat ini untuk layanan Cloud Run Anda:
Konsol
Di konsol Google Cloud , buka halaman Services Cloud Run:
Klik layanan yang Anda minati untuk membuka halaman Detail layanan.
Klik tab Containers untuk melihat setelan.
gcloud
Gunakan perintah berikut:
gcloud run services describe SERVICE
Temukan setelan GPU di konfigurasi yang ditampilkan.
Menghapus GPU
Anda dapat menghapus GPU menggunakan konsol Google Cloud , Google Cloud CLI, atau YAML.
Konsol
Di konsol Google Cloud , buka Cloud Run:
Pilih Services dari menu navigasi Cloud Run:
Jika Anda mengonfigurasi layanan baru, klik Deploy container dan isi halaman setelan layanan awal. Kemudian, klik Containers, Networking, Security untuk meluaskan halaman konfigurasi layanan.
Jika Anda mengonfigurasi layanan yang ada, klik layanan tersebut.
Klik tab Containers.
Batalkan pilihan pada kotak centang GPU.
Klik Create untuk layanan baru. Klik View diff & redeploy, lalu Deploy changes untuk layanan yang ada.
gcloud
Untuk menghapus GPU, tetapkan jumlah GPU ke 0 menggunakan perintah gcloud run services update:
gcloud run services update SERVICE --gpu 0
Ganti SERVICE dengan nama layanan Cloud Run Anda.
YAML
Jika Anda membuat layanan baru, lewati langkah ini. Jika Anda mengupdate layanan yang ada, download konfigurasi YAML-nya:
gcloud run services describe SERVICE --format export > service.yaml
Hapus baris
nvidia.com/gpu:dannodeSelector: run.googleapis.com/accelerator: GPU_TYPE.Buat atau update layanan menggunakan perintah berikut:
gcloud run services replace service.yaml
Perintah
gcloud run services replacesecara default menggunakan fileservice.yamljika 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.
Tentang GPU dan instance maksimum
Jumlah instance dengan GPU dibatasi dengan dua cara:
- Setelan Instance maksimum membatasi jumlah instance per layanan. Nilai ini tidak boleh ditetapkan lebih tinggi dari kuota GPU per project per region untuk GPU.
- Kuota GPU yang diizinkan per project per region. Tindakan ini membatasi jumlah instance di seluruh layanan di region yang sama.
Langkah berikutnya
Lihat Menjalankan inferensi AI di Cloud Run dengan GPU untuk mengetahui tutorialnya.