Skip to content
BotServBotServ
OllamaPerformanceGPUQuantisierungOptimierung

Ollama Performance optimieren

Ollama schneller machen. GPU-Nutzung, Kontextlänge, Quantisierung, Batch-Grössen und praktische Tuning-Tipps.

S

schutzgeist

3 min read
Ollama Performance optimieren

Ollama Performance optimieren

Was dieser Artikel über Ollama-Performance behandelt

  • Wie man erkennt, wo Ollama bremst.
  • Wie GPU-Nutzung und Treiber geprüft werden.
  • Wie Quantisierung und Modellgrösse die Geschwindigkeit beeinflussen.
  • Wie Kontextlänge, Batch-Grösse und Parameter optimiert werden.
  • Wichtige Tuning-Tipps und Stolpersteine.

Einleitung: Ollama Performance optimieren

Ollama ist einfach zu bedienen, aber die Geschwindigkeit hängt stark von Hardware, Modellgrösse und Konfiguration ab. Wer grössere Modelle oder lange Dokumente verarbeiten will, merkt schnell, dass die Antwortzeiten steigen. Mit einigen gezielten Einstellungen lässt sich Ollama oft deutlich beschleunigen, ohne gleich mehr Hardware kaufen zu müssen.

Dieser Artikel zeigt, wo man bei der Ollama-Performance ansetzt und welche Hebel am effektivsten sind.

Wichtige Begriffe

  • Prompt-Eval: Verarbeitung der Eingabe durch das Modell.
  • Generation: Erzeugung der Antwort.
  • Tokens pro Sekunde: Metrik für die Generierungsgeschwindigkeit.
  • Context Window: Maximale Anzahl Tokens im Kontext.
  • KV-Cache: Zwischenspeicher für bereits verarbeitete Tokens.
  • Batch Size: Anzahl parallel verarbeiteter Tokens.
  • Quantisierung: Reduktion der Bitanzahl der Modellgewichte.
  • Offload: Verteilung der Berechnung zwischen CPU und GPU.

Ursachen für langsame Performance

  • Zu grosses Modell: Passt nicht in den VRAM, läuft teilweise auf der CPU.
  • Zu lange Kontexte: Mehr Kontext bedeutet mehr Berechnung.
  • CPU statt GPU: Ollama erkennt GPU nicht, weil Treiber fehlen.
  • Langsame Speicher: System-RAM zu langsam oder nicht Dual-Channel.
  • Falsche Modellgrösse: 70B-Modell statt passender 8B-Variante.
  • Zu viele Modelle geladen: VRAM ist fragmentiert.

GPU-Nutzung prüfen

ollama ps
nvidia-smi

Wenn Ollama nicht auf der GPU läuft, prüfe die Treiber. Bei Nvidia muss der proprietäre Treiber installiert sein. Bei AMD hängt es von ROCm ab.

Treiber installieren

Nvidia

sudo apt install -y nvidia-driver-535 nvidia-utils-535

AMD

sudo apt install -y amdgpu-install
sudo amdgpu-install -y --usecase=rocm

Achtung: Ältere AMD-GPUs wie GCN 1.0 werden nicht von ROCm unterstützt.

Modellgrösse wählen

Für die meisten Aufgaben reichen kleinere Modelle:

  • Qwen 2.5 7B oder 14B: Gute allgemeine Leistung.
  • Llama 3.1 8B: Breite Unterstützung.
  • Mistral 7B oder Nemo 12B: Solide Multilingualität.

Grössere Modelle sind besser, aber nur, wenn sie in den VRAM passen. Sonst ist die Performance schlechter als bei kleineren Modellen, die vollständig auf der GPU laufen.

Quantisierung

4-Bit-Quantisierung ist der Standard. Bei geringer VRAM kann man 3-Bit oder 2-Bit testen, mit Qualitätseinbussen. Für Coding und Reasoning ist 5-Bit oft besser.

ollama pull qwen2.5:14b-q4_K_M
ollama pull qwen2.5:14b-q5_K_M

Kontextlänge einstellen

Nicht jedes Modell unterstützt jede Kontextlänge. Zu grosse num_ctx Werte verlangsamen die Verarbeitung. Oft reichen 2048 oder 4096 Tokens.

PARAMETER num_ctx 4096

Im Modelfile:

FROM qwen2.5:14b
PARAMETER num_ctx 4096

Ollama-Umgebungsvariablen

In der Datei /etc/systemd/system/ollama.service.d/override.conf oder im Docker-Setup:

[Service]
Environment="OLLAMA_NUM_PARALLEL=4"
Environment="OLLAMA_MAX_LOADED_MODELS=2"
Environment="OLLAMA_GPU_OVERHEAD=1GB"

Danach:

sudo systemctl daemon-reload
sudo systemctl restart ollama

Parallelität

OLLAMA_NUM_PARALLEL legt fest, wie viele Anfragen gleichzeitig bearbeitet werden. Für Server-Setups sinnvoll, für Einzelnutzer meist 1.

CPU-Inferenz beschleunigen

Wenn keine GPU verfügbar ist:

  • Aktuelle CPU mit AVX2 oder AVX512 verwenden.
  • Genug RAM bereitstellen.
  • Mehrere Threads erlauben:
PARAMETER num_thread 8

Monitoring

Regelmässig prüfen:

ollama ps
free -h
nvidia-smi

Wenn das Modell im Speicher auslagert, wird es langsam.

Typische Stolpersteine

  • GPU wird nicht erkannt: Treiber fehlen oder falsche Version.
  • Modell wird auf CPU ausgeführt: Zu gross für VRAM.
  • Zu hohe Kontextlänge: Verlangsamt und führt zu Fehlern.
  • Mehrere Modelle gleichzeitig: Fragmentierter VRAM.
  • Alte Ollama-Version: Updates bringen oft Performance-Verbesserungen.

FAQ: Ollama Performance

Wie prüfe ich, ob Ollama meine GPU nutzt? ollama ps zeigt, ob ein Modell CPU oder GPU nutzt.

Warum ist meine GPU so langsam? Möglicherweise ist das Modell zu gross und läuft teilweise auf der CPU.

Hilft mehr VRAM? Ja, vor allem um grössere Modelle vollständig in die GPU zu laden.

Ist 3-Bit-Quantisierung empfohlen? Nur, wenn 4-Bit nicht in den Speicher passt, da die Qualität leidet.

Sollte ich num_ctx auf Maximum setzen? Nein, nur so viel wie wirklich benötigt wird.

Quellen und weiterführende Literatur

Zusammenfassung: Ollama Performance optimieren

Ollama-Performance lässt sich durch passende Modellgrösse, Quantisierung, Treiber, Kontextlänge und Ollama-Parameter deutlich verbessern. Die wichtigste Regel lautet: das Modell sollte vollständig in den GPU-Speicher passen. Grösser ist nicht immer besser, wenn dadurch Berechnungen auf die CPU ausweichen. Wer regelmässig ollama ps, nvidia-smi und die Systemressourcen im Blick behält, findet schnell die grössten Bremsen.

Zurück zum KI Blog
Share:

Ähnliche Beiträge