Zum Hauptinhalt springen
Version: 3.0.0-alpha (Diátaxis)

FAQ — GPU

Welche GPU-Modelle sind verfügbar?

Hikube bietet drei NVIDIA GPU-Familien:

GPUArchitekturSpeicherAnwendungsfall
L40SAda Lovelace48 GB GDDR6Inferenz, Grafik-Rendering
A100Ampere80 GB HBM2eML-Training, wissenschaftliches Rechnen
H100Hopper80 GB HBM3LLM, Exascale-Rechnen

Die in den Manifesten zu verwendenden Bezeichner:

gpus:
- name: "nvidia.com/AD102GL_L40S" # L40S
- name: "nvidia.com/GA100_A100_PCIE_80GB" # A100
- name: "nvidia.com/H100_94GB" # H100

Was ist der Unterschied zwischen GPU in VM und GPU in Kubernetes?

AspektGPU in VMGPU in Kubernetes
ZugriffsmodusExklusiver PCI PassthroughGeteiltes Device Plugin
IsolationGPU dediziert für die VMDurch K8s orchestriertes Scheduling
TreiberinstallationManuell (cloud-init)Automatisch (GPU Operator)
AnwendungsfallDedizierte Workstation, CUDA-EntwicklungContainerisierte Workloads, Batch

In der VM wird der GPU direkt über PCI Passthrough angehängt: die VM hat exklusiven Zugriff auf die Hardware. In Kubernetes verwaltet der GPU Operator die Treiber und das Scheduling ermöglicht die Teilung der GPU-Ressourcen zwischen mehreren Pods.


Welches CPU/GPU-Verhältnis wird empfohlen?

Für eine optimale Nutzung planen Sie 8 bis 16 vCPU pro GPU. Die Instanzen der Universal (u1)-Serie mit einem Verhältnis von 1:4 werden empfohlen:

KonfigurationInstanzvCPURAM
1 GPUu1.2xlarge832 GB
1 GPU (intensiv)u1.4xlarge1664 GB
Multi-GPUu1.8xlarge32128 GB

Wie werden die NVIDIA-Treiber installiert?

Die Installation hängt vom Nutzungsmodus ab:

In der VM: Manuell über cloud-init beim Start installieren:

vm-gpu.yaml
spec:
cloudInit: |
#cloud-config
runcmd:
- apt-get update
- apt-get install -y linux-headers-$(uname -r)
- apt-get install -y nvidia-driver-550 nvidia-utils-550

In Kubernetes: Den GPU Operator-Addon aktivieren, der die Treiber automatisch auf den GPU-Knoten installiert:

cluster-gpu.yaml
spec:
addons:
gpuOperator:
enabled: true

Wie überprüfe ich, ob der GPU erkannt wird?

In der VM:

nvidia-smi

Dieser Befehl zeigt die erkannten GPUs, ihre Speichernutzung und die aktiven Prozesse an.

In Kubernetes:

kubectl get nodes -o json | jq '.items[].status.allocatable["nvidia.com/gpu"]'

Sie können auch aus einem Pod heraus überprüfen:

kubectl exec -it <pod-name> -- nvidia-smi

Wie fordere ich einen GPU in einem Kubernetes-Pod an?

Geben Sie die Ressource nvidia.com/gpu in den Container-Limits an:

pod-gpu.yaml
apiVersion: v1
kind: Pod
metadata:
name: gpu-workload
spec:
containers:
- name: cuda-app
image: nvidia/cuda:12.0-base
resources:
limits:
nvidia.com/gpu: 1
Hinweis

Die in limits angeforderte GPU-Anzahl muss den physisch auf den Knoten verfügbaren GPUs entsprechen. Ein Pod kann keinen Bruchteil eines GPU anfordern.