בדף הזה מוסבר איך מגדירים GPU לשירותי Cloud Run. מעבדי GPU מתאימים לעומסי עבודה של הסקת מסקנות מ-AI, כמו מודלים גדולים של שפה (LLM) או תרחישי שימוש אחרים שדורשים הרבה כוח מחשוב ולא קשורים ל-AI, כמו טרנסקוד של סרטונים ורינדור תלת-ממדי. Google מספקת GPU NVIDIA RTX PRO 6000 Blackwell עם זיכרון GPU (VRAM) בנפח 96GB ו-GPU NVIDIA L4 עם זיכרון GPU (VRAM) בנפח 24GB, שהוא נפרד מזיכרון המופע.
השימוש ב-GPU ב-Cloud Run מנוהל באופן מלא, ולא נדרשים מנהלי התקנים או ספריות נוספים. תכונת ה-GPU מציעה זמינות על פי דרישה ללא צורך בהזמנות, בדומה לאופן שבו מעבד על פי דרישה וזיכרון על פי דרישה פועלים ב-Cloud Run. אם מגדירים שירות Cloud Run לשימוש ב-GPU, אפשר להקטין את מספר המופעים שלו לאפס כדי לחסוך בעלויות כשהוא לא בשימוש.
מופעים של Cloud Run עם יחידת GPU מסוג NVIDIA RTX PRO 6000 Blackwell או L4 עם דרייברים מותקנים מראש מתחילים לפעול תוך כ-5 שניות, ובשלב הזה התהליכים שפועלים בקונטיינר יכולים להתחיל להשתמש ב-GPU.
אפשר להגדיר GPU אחד לכל מופע של Cloud Run. אם משתמשים במאגרי sidecar, חשוב לזכור שאפשר לצרף את ה-GPU רק למאגר אחד.
סוגי GPU נתמכים
Cloud Run תומך בשני סוגים של יחידות GPU:
- NVIDIA RTX PRO 6000 Blackwell GPU עם גרסת הדרייבר הנוכחית של NVIDIA: 580.x.x (13.0). כדי להשתמש ב-GPU NVIDIA RTX PRO 6000 Blackwell, צריך להשתמש ב-20 ליבות CPU ובזיכרון בנפח 80GiB לפחות.
- L4 GPU עם גרסת הדרייבר הנוכחית של NVIDIA: 535.x.x (12.2). ב-GPU מסוג L4, צריך להשתמש ב-4 מעבדים לפחות ובזיכרון בנפח 16GiB.
אזורים נתמכים
האזורים הבאים נתמכים על ידי NVIDIA RTX PRO 6000 Blackwell GPU:
asia-southeast1(סינגפור).asia-south2(דלהי, הודו).europe-west4(הולנד)רמה נמוכה של CO2
us-central1(אייווה)רמה נמוכה של CO2
האזורים הבאים נתמכים על ידי L4 GPU:
asia-southeast1(סינגפור)asia-south1(מומבאי) . האזור הזה זמין רק בהזמנה. אם אתם מעוניינים באזור הזה, תוכלו לפנות לצוות התמיכה בחשבונות Google.europe-west1(בלגיה)רמה נמוכה של CO2
europe-west4(הולנד)רמה נמוכה של CO2
us-central1(אייווה)רמה נמוכה של CO2 . יכול להיות שיהיה צורך לשלוח בקשה להגדלת המכסה כדי להרחיב את השימוש במשאבים באזור הזה. אם אתם מעוניינים באזור הזה, תוכלו לפנות לצוות התמיכה בחשבונות Google.
us-east4(צפון וירג'יניה) . יכול להיות שיהיה צורך לשלוח בקשה להגדלת המכסה כדי להרחיב את השימוש במשאבים באזור הזה. אם אתם מעוניינים באזור הזה, תוכלו לפנות לצוות התמיכה בחשבונות Google.
השפעה על התמחור
פרטים על תמחור של GPU זמינים במאמר תמחור של Cloud Run. שימו לב לדרישות ולשיקולים הבאים:
- אין עמלות לכל בקשה. כדי להשתמש בתכונת ה-GPU, צריך להשתמש בחיוב לפי מופע. מופעים מינימליים מחויבים במחיר מלא גם כשהם בלי פעילות.
- יש הבדל בעלות בין יתירות אזורית של GPU לבין יתירות לא אזורית. פרטים על תמחור של GPU זמינים במאמר תמחור של Cloud Run.
- כשפורסים שירות או פונקציה של Cloud Run מקוד מקור עם מעבדי GPU מופעלים, Cloud Run משתמש בסוג המכונה
e2-highcpu-8במקום בסוג המכונה שמוגדר כברירת מחדלe2-standard-2כדי ליצור את קוד המקור. סוג המכונה הגדול יותר מספק תמיכה טובה יותר במעבד ורוחב פס גבוה יותר ברשת, וכתוצאה מכך זמני פיתוח מהירים יותר. - הגדרות המעבד (CPU) והזיכרון של המשאב.
- החיוב על ה-GPU מתבצע לכל משך מחזור החיים של המופע.
אפשרויות יתירות אזורית של GPU
כברירת מחדל, Cloud Run פורס את השירות שלכם בכמה אזורים בתוך אזור מסוים. הארכיטקטורה הזו מספקת חוסן מובנה: אם יש הפסקת חשמל באזור מסוים, Cloud Run מעביר באופן אוטומטי את התעבורה מהאזור המושפע לאזורים תקינים באותו אזור.
כשעובדים עם משאבי GPU, חשוב לזכור שיש מגבלות קיבולת ספציפיות למשאבי GPU. במהלך הפסקת חשמל אזורית, מנגנון היתירות כשל הרגיל לעומס עבודה של GPU מסתמך על כך שקיבולת GPU פנויה מספקת זמינה באזורים הבריאים שנותרו. בגלל המגבלות של יחידות GPU, יכול להיות שהקיבולת הזו לא תמיד תהיה זמינה.
כדי להגדיל את הזמינות של השירותים שמוּאצו על ידי GPU במהלך הפסקות זמניות באזור, אתם יכולים להגדיר יתירות אזורית במיוחד עבור GPU:
הפעלה של יתירות אזורית (ברירת מחדל): Cloud Run שומר קיבולת GPU לשירות שלכם בכמה אזורים. כך גדל הסיכוי שהשירות שלכם יוכל לטפל בהצלחה בתנועה שהופנתה מחדש מאזור מושפע, ותוכלו ליהנות מאמינות גבוהה יותר במהלך כשלים אזוריים, עם עלות נוספת לכל שנייה של GPU.
יתירות אזורית מושבתת: Cloud Run מנסה לבצע מעבר לגיבוי במקרה של כשל בעומסי עבודה של GPU, על בסיס האפשרות הטובה ביותר. התעבורה מנותבת לתחומים אחרים רק אם יש מספיק קיבולת של GPU באותו רגע. האפשרות הזו לא מבטיחה קיבולת שמורה לתרחישי יתירות כשל, אבל העלות שלה נמוכה יותר לשנייה של GPU.
SLA
הסכם ה-SLA ל-GPU ב-Cloud Run תלוי באפשרות של יתירות אזורית או לא אזורית שבה נעשה שימוש בשירות. פרטים נוספים זמינים בדף הסכם רמת השירות.
שליחת בקשה להגדלת המכסה
המיכסה של יחידות GPU ב-Cloud Run nvidia-rtx-pro-6000 ניתנת במילי-GPU.
לפרויקטים שמשתמשים ב-nvidia-rtx-pro-6000 GPU באזור בפעם הראשונה, תוקצה אוטומטית מכסת 3,000 milliGPU (יתירות אזורית מושבתת) כשיוצרים את הפריסה הראשונה. זה שווה ל-3 יחידות GPU. כשיוצרים פריסה ראשונה בפרויקטים שמשתמשים ב-GPU של Cloud Runnvidia-l4 באזור מסוים בפעם הראשונה, מקבלים אוטומטית מכסת GPU של 3 (יתירות אזורית מושבתת).
אם אתם צריכים עוד יחידות GPU ב-Cloud Run, אתם צריכים לבקש הגדלה של המכסה לשירות Cloud Run. כדי לבקש את המכסה שדרושה לכם, לוחצים על הקישורים שמופיעים בלחצנים הבאים.
| נדרשת מכסה | קישור למכסה |
|---|---|
| NVIDIA RTX PRO 6000 Blackwell GPU עם יתירות אזורית מושבתת (מחיר נמוך יותר) | בקשת מכסת GPU בלי יתירות אזורית |
| NVIDIA RTX PRO 6000 Blackwell GPU עם יתירות אזורית מופעלת (מחיר גבוה יותר) | בקשת מכסת GPU עם יתירות אזורית |
| L4 GPU עם יתירות אזורית מושבתת (מחיר נמוך יותר) | בקשת מכסת GPU בלי יתירות אזורית |
| L4 GPU עם יתירות אזורית מופעלת (מחיר גבוה יותר) | בקשת מכסת GPU עם יתירות אזורית |
מידע נוסף על בקשות להגדלת מכסות זמין במאמר איך מגדילים את המכסה.
לפני שמתחילים
ברשימה הבאה מפורטות הדרישות והמגבלות כשמשתמשים ב-GPU ב-Cloud Run:
- נכנסים לחשבון Google Cloud . אם אתם משתמשים חדשים ב- Google Cloud, צרו חשבון כדי שתוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
-
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.
-
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.
מפעילים את Cloud Run API.
תפקידים שנדרשים להפעלת ממשקי API
כדי להפעיל ממשקי API, צריך את תפקיד ה-IAM 'אדמין של Service Usage' (
roles/serviceusage.serviceUsageAdmin), שכולל את ההרשאהserviceusage.services.enable. איך מקצים תפקידים- שליחת בקשה להגדלת המכסה
- מומלץ לעיין במאמר שיטות מומלצות: הסקת מסקנות מ-AI ב-Cloud Run עם GPU כדי לקבל המלצות ליצירת קובץ אימג' של קונטיינר ולטעינת מודלים גדולים.
- מוודאים שלשירות Cloud Run יש את ההגדרות הבאות:
- מגדירים את הגדרות החיוב לחיוב לפי מופע. חשוב לזכור ששירותים שהוגדר להם חיוב לפי מופע עדיין יכולים להתרחב לאפס.
- עבור NVIDIA RTX PRO 6000 Blackwell GPU, צריך להגדיר מינימום של 20 CPU ומינימום של 80 GiB של זיכרון.
- למעבד L4 GPU, צריך להגדיר לפחות 4 מעבדי CPU לשירות, מומלץ להגדיר 8 מעבדי CPU, ולפחות 16GiB של זיכרון, מומלץ להגדיר 32GiB.
- קובעים ומגדירים מקסימום מקביליות אופטימלי לשימוש ב-GPU.
- הערך של Maximum instances (מספר המכונות המקסימלי) צריך להיות נמוך מהמכסה המותרת לכל פרויקט לכל אזור עבור GPU. מידע נוסף זמין במאמר מידע על יחידות GPU ומספר מקסימלי של מכונות וירטואליות.
התפקידים הנדרשים
כדי לקבל את ההרשאות שדרושות להגדרה ולפריסה של שירותי Cloud Run, אתם צריכים לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים בשירותים:
- Cloud Run Developer (
roles/run.developer) – שירות Cloud Run - משתמש בחשבון שירות (
roles/iam.serviceAccountUser) – זהות השירות
אם אתם פורסים שירות או פונקציה מקוד מקור, אתם צריכים גם לקבל תפקידים נוספים בפרויקט ובחשבון השירות של Cloud Build.
רשימת ההרשאות והתפקידים ב-IAM שמשויכים ל-Cloud Run מופיעה במאמרים תפקידי IAM ב-Cloud Run והרשאות IAM ב-Cloud Run. אם שירות Cloud Run שלכם מתקשר עםGoogle Cloud ממשקי API, כמו ספריות לקוח ב-Cloud, כדאי לעיין במדריך להגדרת זהות שירות. מידע נוסף על מתן תפקידים זמין במאמרים הרשאות פריסה וניהול גישה.
הגדרת שירות Cloud Run עם GPU
כל שינוי בהגדרות מוביל ליצירה של גרסה חדשה. גם גרסאות מתוקנות עתידיות יקבלו את הגדרת התצורה הזו באופן אוטומטי, אלא אם תבצעו עדכונים מפורשים כדי לשנות אותה.
אפשר להשתמש במסוף Google Cloud , ב-Google Cloud CLI או ב-YAML כדי להגדיר GPU.
המסוף
נכנסים ל-Cloud Run במסוף Google Cloud :
בתפריט הניווט של Cloud Run, בוחרים באפשרות Services (שירותים) ולוחצים על Deploy container (פריסת קונטיינר) כדי להגדיר שירות חדש. אם אתם מגדירים שירות קיים, לוחצים על השירות ואז על עריכה ופריסה של עדכון חדש.
אם אתם מגדירים שירות חדש, ממלאים את דף ההגדרות הראשוניות של השירות ואז לוחצים על Containers, Networking, Security (מאגרי נתונים, רשתות, אבטחה) כדי להרחיב את דף הגדרות השירות.
לוחצים על הכרטיסייה מאגר תגים.
- מגדירים את המעבד (CPU), הזיכרון, הבו-זמניות (concurrency), סביבת ההרצה ובקשת בדיקת התקינות (probe) בהתאם להמלצות שבקטע לפני שמתחילים.
- מסמנים את תיבת הסימון GPU, בוחרים את סוג ה-GPU בתפריט סוג ה-GPU ואת מספר ה-GPU בתפריט מספר ה-GPU.
- כברירת מחדל, בשירותים חדשים מופעלת יתירות אזורית. כדי לשנות את ההגדרה הנוכחית, מסמנים את התיבה לצד GPU כדי להציג את האפשרויות של GPU redundancy.
- בוחרים באפשרות ללא יתירות אזורית כדי להשבית את היתירות האזורית.
- בוחרים באפשרות יתירות אזורית כדי להפעיל יתירות אזורית.
לוחצים על יצירה או על פריסה.
gcloud
כדי ליצור שירות עם GPU מופעל, משתמשים בפקודה gcloud run deploy:
כדי לפרוס קונטיינר:
gcloud run deploy SERVICE \ --image IMAGE_URL \ --gpu 1
מחליפים את מה שכתוב בשדות הבאים:
- SERVICE: השם של שירות Cloud Run.
- IMAGE_URL: הפניה לקובץ אימג' של קונטיינר, לדוגמה,
us-docker.pkg.dev/cloudrun/container/hello:latest. אם אתם משתמשים ב-Artifact Registry, צריך ליצור מראש את המאגר REPO_NAME. כתובת ה-URL היא בפורמטLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG.
כדי לפרוס מקוד המקור:
gcloud run deploy SERVICE \ --source . \ --gpu 1
כדי לעדכן את הגדרת ה-GPU של שירות, משתמשים בפקודה gcloud run services update. לדוגמה, כדי לעדכן שירות קיים שמציין תמונת קונטיינר:
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
מחליפים את מה שכתוב בשדות הבאים:
- SERVICE: השם של שירות Cloud Run.
- IMAGE_URL: הפניה לקובץ אימג' של קונטיינר, לדוגמה,
us-docker.pkg.dev/cloudrun/container/hello:latest. אם אתם משתמשים ב-Artifact Registry, צריך ליצור מראש את המאגר REPO_NAME. כתובת ה-URL היא בפורמטLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG. - CPU: מספר ליבות ה-CPU. בשביל NVIDIA RTX PRO 6000 Blackwell GPU,
צריך לציין לפחות
20CPU. ב-L4 GPU, צריך לציין לפחות4מעבדים. - MEMORY: נפח הזיכרון. בשביל NVIDIA RTX PRO 6000
Blackwell GPU, צריך לציין לפחות
80Gi(80 GiB). ב-L4 GPU, צריך לציין לפחות16Gi(16 GiB). - GPU_NUMBER: הערך
1(אחד). אם לא מציינים את הפרמטר הזה אבל מציינים GPU_TYPE, ברירת המחדל היא1. - GPU_TYPE: סוג ה-GPU. NVIDIA RTX PRO 6000 Blackwell GPU,
enter
nvidia-rtx-pro-6000. עבור L4 GPU, מזינים את הערךnvidia-l4(nvidia-L4 באותיות קטנות, לא הערך המספרי 14). - MAX_INSTANCE: המספר המקסימלי של המופעים. המספר הזה לא יכול להיות גבוה ממכסת ה-GPU שהוקצתה לפרויקט.
- GPU_ZONAL_REDUNDANCY:
no-gpu-zonal-redundancyכדי להשבית את יתירות האזורים, אוgpu-zonal-redundancyכדי להפעיל את יתירות האזורים.
YAML
אם אתם יוצרים שירות חדש, דלגו על השלב הזה. אם אתם מעדכנים שירות קיים, אתם צריכים להוריד את הגדרות ה-YAML שלו:
gcloud run services describe SERVICE --format export > service.yaml
מעדכנים את המאפיין
nvidia.com/gpu:ואתnodeSelector::
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
מחליפים את מה שכתוב בשדות הבאים:
- SERVICE: השם של שירות Cloud Run.
- IMAGE_URL: הפניה לקובץ אימג' של קונטיינר, לדוגמה,
us-docker.pkg.dev/cloudrun/container/hello:latest. אם אתם משתמשים ב-Artifact Registry, צריך ליצור מראש את המאגר REPO_NAME. כתובת ה-URL היא בפורמטLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG. - CONTAINER_PORT: קבוצת יציאות הקונטיינר שהוגדרה לשירות.
- CPU: מספר ליבות ה-CPU. עבור NVIDIA RTX PRO 6000 Blackwell
GPU, צריך לציין לפחות
20מעבדים. במקרה של L4 GPU, צריך לציין לפחות4יחידות CPU. - MEMORY: נפח הזיכרון. בשביל NVIDIA RTX PRO 6000
Blackwell GPU, צריך לציין לפחות
80Gi(80 GiB). ב-L4 GPU, צריך לציין לפחות16Gi(16 GiB). - GPU_TYPE: סוג ה-GPU. NVIDIA RTX PRO 6000 Blackwell GPU,
enter
nvidia-rtx-pro-6000. עבור L4 GPU, מזינים את הערךnvidia-l4(nvidia-L4 באותיות קטנות, לא הערך המספרי 14). - MAX_INSTANCE: המספר המקסימלי של המופעים. המספר הזה לא יכול להיות גבוה ממכסת ה-GPU שהוקצתה לפרויקט.
- GPU_ZONAL_REDUNDANCY:
falseכדי להפעיל יתירות אזורית של GPU, אוtrueכדי להשבית אותה.
יוצרים או מעדכנים את השירות באמצעות הפקודה הבאה:
gcloud run services replace service.yaml
Terraform
כדי ללמוד איך להחיל הגדרות ב-Terraform או להסיר אותן, ראו פקודות בסיסיות ב-Terraform.
מוסיפים את השורות הבאות למשאבgoogle_cloud_run_v2_service בתצורת Terraform: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"
}
}
}
מחליפים את מה שכתוב בשדות הבאים:
- SERVICE: השם של שירות Cloud Run.
- GPU_ZONAL_REDUNDANCY:
falseכדי להפעיל יתירות אזורית של GPU, אוtrueכדי להשבית אותה. - IMAGE_URL: הפניה לקובץ אימג' של קונטיינר, לדוגמה,
us-docker.pkg.dev/cloudrun/container/hello:latest. אם אתם משתמשים ב-Artifact Registry, צריך ליצור מראש את המאגר REPO_NAME. כתובת ה-URL היא בפורמטLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG. - CPU: מספר ליבות ה-CPU. בשביל NVIDIA RTX PRO 6000 Blackwell GPU,
צריך לציין לפחות
20CPU. ב-L4 GPU, צריך לציין לפחות4מעבדים. - MEMORY: נפח הזיכרון. אם משתמשים ב-GPU מסוג NVIDIA RTX PRO 6000 Blackwell, צריך לציין לפחות
80Gi(80 GiB). ב-GPU מסוג L4, צריך לציין לפחות16Gi (16GiB). - GPU_TYPE: סוג ה-GPU. ל-GPU NVIDIA RTX PRO 6000 Blackwell, מזינים
nvidia-rtx-pro-6000. עבור L4 GPU, מזינים את הערךnvidia-l4(nvidia-L4 באותיות קטנות, לא הערך המספרי 14).
הצגת ההגדרות של GPU
כדי לראות את הגדרות ה-GPU הנוכחיות בשירות Cloud Run:
המסוף
נכנסים לדף Services של Cloud Run במסוף Google Cloud :
לוחצים על השירות שרוצים לראות כדי לפתוח את הדף פרטי השירות.
לוחצים על הכרטיסייה עדכונים.
בחלונית הפרטים שמשמאל, הגדרת ה-GPU מופיעה בכרטיסייה Container.
gcloud
משתמשים בפקודה הבאה:
gcloud run services describe SERVICE
מאתרים את הגדרת ה-GPU בתצורה שמוחזרת.
הסרת ה-GPU
אפשר להסיר GPU באמצעות מסוף Google Cloud , Google Cloud CLI או YAML.
המסוף
נכנסים ל-Cloud Run במסוף Google Cloud :
בתפריט הניווט של Cloud Run, בוחרים באפשרות Services (שירותים) ולוחצים על Deploy container (פריסת קונטיינר) כדי להגדיר שירות חדש. אם אתם מגדירים שירות קיים, לוחצים על השירות ואז על עריכה ופריסה של עדכון חדש.
אם אתם מגדירים שירות חדש, ממלאים את דף ההגדרות הראשוניות של השירות ואז לוחצים על Containers, Networking, Security (מאגרי נתונים, רשתות, אבטחה) כדי להרחיב את דף הגדרות השירות.
לוחצים על הכרטיסייה מאגר תגים.
- מבטלים את הסימון של תיבת הסימון GPU.
לוחצים על יצירה או על פריסה.
gcloud
כדי להסיר את ה-GPU, מגדירים את מספר יחידות ה-GPU ל-0 באמצעות הפקודה gcloud run services update:
gcloud run services update SERVICE --gpu 0
מחליפים את SERVICE בשם של שירות Cloud Run.
YAML
אם אתם יוצרים שירות חדש, דלגו על השלב הזה. אם אתם מעדכנים שירות קיים, אתם צריכים להוריד את הגדרות ה-YAML שלו:
gcloud run services describe SERVICE --format export > service.yaml
מוחקים את השורות
nvidia.com/gpu:ו-nodeSelector: run.googleapis.com/accelerator: GPU_TYPE.יוצרים או מעדכנים את השירות באמצעות הפקודה הבאה:
gcloud run services replace service.yaml
ספריות של מנהלי התקנים
כברירת מחדל, כל ספריות הדרייברים של NVIDIA RTX PRO 6000 Blackwell GPU ו-NVIDIA L4 GPU מותקנות בתיקייה /usr/local/nvidia/lib64. Cloud Run מוסיף את הנתיב הזה באופן אוטומטי למשתנה הסביבה LD_LIBRARY_PATH (כלומר ${LD_LIBRARY_PATH}:/usr/local/nvidia/lib64) של הקונטיינר עם ה-GPU. כך המקשר הדינמי יכול למצוא את ספריות מנהלי ההתקנים של NVIDIA. ה-linker מחפש ומזהה נתיבים לפי הסדר שמופיע במשתנה הסביבה LD_LIBRARY_PATH. לכל ערך שמציינים במשתנה הזה יש עדיפות על פני נתיב ברירת המחדל של ספריות מנהלי התקנים של Cloud Run /usr/local/nvidia/lib64.
אם רוצים להשתמש בגרסת CUDA שגבוהה מ-12.2, הדרך הכי קלה היא להסתמך על תמונת בסיס חדשה יותר של NVIDIA עם חבילות תאימות קדימה שכבר מותקנות. אפשרות נוספת היא להתקין ידנית את חבילות התאימות קדימה של NVIDIA ולהוסיף אותן ל-LD_LIBRARY_PATH. כדאי לעיין בטבלת התאימות של NVIDIA כדי לדעת אילו גרסאות של CUDA תואמות לגרסת מנהל ההתקן של NVIDIA שצוינה.
מידע על יחידות GPU ומספר האינסטנסים המקסימלי
מספר המקרים עם יחידות GPU מוגבל בשתי דרכים:
- ההגדרה Maximum instances (מספר מופעים מקסימלי) מגבילה את מספר המופעים לכל שירות. אי אפשר להגדיר ערך גבוה יותר מהמכסה של GPU לכל פרויקט לכל אזור עבור GPU.
- המכסה של יחידות GPU שמותרות לכל פרויקט בכל אזור. ההגדרה הזו מגבילה את מספר המופעים בשירותים באותו אזור.
המאמרים הבאים
תוכלו להיעזר במדריכים שבמאמר הרצת היקש של AI ב-Cloud Run באמצעות יחידות GPU.