Avoid unnecessary CPU offload and expose full GPU profile mode

This commit is contained in:
Mikei386
2026-09-28 21:18:54 +02:00
parent 13ed059aaf
commit f99cd26b1d
8 changed files with 39 additions and 11 deletions
+17
View File
@@ -0,0 +1,17 @@
# Medium-Leistungsvergleich, 28.09.2026
Synthetische Textanfragen direkt an llama-server, je eine Aufwärmrunde plus drei Messungen: 87 Eingabe-Token, 256 Ausgabe-Token, Seed 1234, Temperature 1, Top-p 0,95, Top-k 20, Prompt-Cache aus. Keine Benutzerinhalte gelesen oder gespeichert.
| Aufbau | Ausgabe Token/s (Mittel) |
|---|---:|
| Alter Medium-Container | 64,44 |
| Deck bisher, GPU-Limit 65 | 38,38 |
| Deck volle GPU, CPU-Budget 2 | 64,99 |
| Deck volle GPU, CPU-Budget 6 | 65,06 |
| Deck volle GPU, zurück auf CPU-Budget 2 | 65,03 |
Deck-Varianten mit identischem Build, gespeichertem Medium-Profil (160000 Kontext, 1 Slot, MTP2 / p-min 0,05, Split85:15) und identischen Requests. Änderung nur Speicherreserve/Offloading und danach CPU-Budget. Bei voller GPU-Ausführung keine CPU-Drosselereignisse während der Messungen. Der erste Versuch mit `docker update --cpus 0` war kein verlässlicher Nachweis eines aufgehobenen Limits (weiterhin Drosselereignisse) und wird nicht als Vergleich verwendet. Der zweite Vergleich prüfte cpu.max ausdrücklich: 200000/100000 und 600000/100000.
Ursache: Die frühere Reserve max(1024 MiB, 5 Prozent) verhinderte volle GPU-Belegung knapp und reduzierte das Limit auf 65. Die Modellmetadaten enthalten 65 Blöcke einschließlich eines MTP-Blocks. Der geprüfte llama-model.cpp-Code legt bei begrenztem Offloading frühe Modellblöcke auf die CPU; die Ausgabeschicht liegt am Ende der GPU-Auswahl. Die erste Vermutung einer CPU-Ausgabeschicht war daher falsch. Mit max(512 MiB, 2,5 Prozent) besteht die Prognose einschließlich MTP-Kontext und alle Schichten passen. Das RAM-Limit und die übrigen Startparameter bleiben unverändert.
Kurzer Einzelnutzer-Test, keine Aussage zur Stabilität bei maximal gefülltem Kontext oder paralleler Last. Alter Router: 2 Slots, Vision-Projektor, anderer Build; kein ansonsten identischer Vergleich. Ursachennachweis daher durch die kontrollierten Deck-Varianten. Nach Abschluss: alter Medium-Container gestoppt, Deck läuft mit bisherigem Zwei-Kern-Limit, Testmodell entladen.