Zuerst rechnen: Wie viel VRAM zieht das Modell wirklich?
Die häufigste Fehlplanung besteht darin, den Speicherbedarf nur an der Modellgröße festzumachen. Die Gewichte sind der leicht berechenbare Teil, den Rest holen sich Kontextfenster und gleichzeitige Anfragen.
Die Gewichte belegen Parameterzahl mal Bytes je Parameter. In FP16 oder BF16 sind das zwei Byte, bei 8-Bit-Quantisierung eines, bei 4-Bit-Quantisierung etwa ein halbes. Dazu kommt der KV-Cache, der mit Kontextlänge und Zahl gleichzeitiger Anfragen wächst, plus Reserve für die Laufzeit. Rechne die Gewichte exakt und plane für den Rest großzügig.
Grober Bedarf der reinen Gewichte
| Quantisierung | Bytes je Parameter | 8 Mrd. Parameter | 70 Mrd. Parameter |
|---|---|---|---|
| FP16 / BF16 | 2 | rund 16 GB | rund 140 GB |
| 8 Bit | 1 | rund 8 GB | rund 70 GB |
| 4 Bit | etwa 0,5 | rund 4,5 GB | rund 40 GB |
nvidia-smi --query-gpu=index,name,memory.total,memory.used,utilization.gpu,power.draw --format=csv
# Welcher Prozess hält wie viel VRAM?
nvidia-smi --query-compute-apps=pid,process_name,used_memory --format=csv
# Persistenzmodus an: der Treiber bleibt geladen, das spart Anlaufzeit
sudo nvidia-smi -pm 1memory.total ist nicht dein Budget. Ziehe Reserve für Laufzeit und Fragmentierung ab und plane die Karte nicht bis zum letzten Gigabyte voll, sonst bricht der Dienst genau dann ab, wenn die Last steigt.