Messung · 21. bis 23. September 2026 · 54 Messläufe
Langer Kontext auf dem HP ZBook Ultra G1a
halogen-flash-server 0.12.1 und 0.13.1 von 32.000 bis 990.000 Token
Autoren
Maschine
HP ZBook Ultra G1a
- SoC
- Ryzen AI Max+ PRO 395
- GPU
- Radeon 8060S, gfx1151
- Speicher
- 128 GiB LPDDR5X-8000, verlötet – als Unified Memory von CPU und GPU geteilt
- SSD
- Samsung 990 PRO, 4 TB, NVMe über PCIe 4.0 x4
- System
- Ubuntu 24.04,
140-W-Netzteil,
platform_profile=performance
Modell
Qwen3.8-Flash-Next
- Größe
- rund 180B – gemessen 176,9 Mrd. Parameter
- Bauart
- „512×56B“, 48 Blöcke, 512 Experten, davon 10 je Token aktiv
- Kontext
- nativ bis 262.144 Token, darüber YaRN mit Faktor 4
Engine
halogen-flash-server
- Stand
- Image
0.12.1und0.13.1, Podman – byteweise dieselben Token - Gewichte
w4b.hgn+ Qualitäts-Overlay, 5,53 bpw- Aufruf
HALOGEN_CTXje Länge bis 1.048.576,HALOGEN_ROPE_YARN=4über 262k- Budget
- 3.072 Token Ausgabe je Aufgabe, Temperatur 0, je Messlauf ein frischer Container
Aufgaben
Acht Fragen an ein Wetterprotokoll
- Text
- 651 Zeilen Messwerte von Wetterstationen, in jeder Länge dieselben
- Länge
- aufgefüllt mit einem fachfremden Wartungsjournal
- Art
- nachschlagen, vergleichen, zählen, summieren
- Gewertet
- sechs; die zwei Rechenaufgaben prüfen Arithmetik, nicht Kontext
1.194Token/s
Prompt-Verarbeitung bei der ersten Frage zu einem Text
27Sekunden
Ganzen Text einlesen einmal, bei der ersten Frage
1,8Sekunden
Folgefrage einlesen der Text selbst ist schon verarbeitet
47,2Token/s
Ausgabe beim Antworten auf Folgefragen
100,1GiB
Speicher belegt von 125,1 GiB; danach frei: 13,2 GiB
768Token/s
Prompt-Verarbeitung bei der ersten Frage zu einem Text
21,5Minuten
Ganzen Text einlesen einmal, bei der ersten Frage
2,3Sekunden
Folgefrage einlesen der Text selbst ist schon verarbeitet
40,9Token/s
Ausgabe beim Antworten auf Folgefragen
109,3GiB
Speicher belegt von 125,1 GiB; danach frei: 4,1 GiB
Mediane über alle Messläufe der jeweiligen Länge. Bei der ersten Frage zu einem Text liest die Maschine ihn vollständig ein. Bei jeder Folgefrage ist er schon verarbeitet, und nur die neue Frage kommt hinzu. Die Längen dazwischen zeigt Kapitel 02.
01 · Aufbau
Dieselbe Aufgabe in jeder Länge
Wer wissen will, ob ein Modell langen Kontext versteht, muss die Länge ändern und die Aufgabe festhalten. Gefragt wird deshalb immer nach demselben Wetterprotokoll: 651 Zeilen Messwerte von Wetterstationen, rund 32.000 Token, dazu acht Fragen mit eindeutiger Antwort. Auf die jeweilige Länge kommt der Text durch ein fachfremdes Wartungsjournal davor und dahinter, bei 990k mit 957.999 Token. Ändert sich das Ergebnis, kann es nur an der Länge liegen.
Bis 245k liefen je Stufe drei Fassungen des Wetterprotokolls mit anderen Zufallswerten, darüber eine: 21 Messläufe für das Verstehen. Für das Tempo zählen alle 54 gewerteten Messläufe dieser Tage, auch die mit anderen Dokumenten derselben Länge; wie schnell die Maschine einliest und antwortet, hängt an der Zahl der Token, nicht an ihrem Inhalt. Verworfen sind Aufwärmläufe, Wiederholungen desselben Dokuments und Vorläufe mit anderer Einstellung. Welcher Messlauf warum fehlt, steht in der Auswertung im Repository.
02 · Tempo
Einmal einlesen, dann antwortet es in Sekunden
Bei der ersten Frage zu einem Text liest die Maschine 1.194 Token je Sekunde bei 32k und 768 bei 990k. Jede Folgefrage zum selben Text braucht danach höchstens 2,3 Sekunden, in jeder Länge.
Für die Arbeit mit einem langen Dokument heißt das: Man wartet einmal, bei 245k 3,9 Minuten, und fragt danach im Gespräch weiter. Ein Agent, der seinen Verlauf fortschreibt, zahlt das Einlesen nur für das, was neu hinzukommt.
03 · Speicher
Den Speicher bestimmt der Pool, nicht der Prompt
halogen reserviert beim Start einen Pool für eine feste Zahl von Positionen und belegt ihn ganz, gleich wie lang der Text später ist. Bis 262k lief jeder Messlauf mit demselben Pool: 100,1 GiB, ob der Prompt 32.000 oder 245.000 Token lang war. Für 990k sind es 109,3 GiB von 125,1 GiB.
Oberhalb 262k lief halogen mit einem Generierungsbudget von 16.384 statt 32.768 Token. Das senkt den Arbeitsspeicher von 21,4 auf 12,5 GiB, und deshalb belegt der Pool für 396k weniger als der native.
Bei 990k wird es eng. Nach dem Start blieben dem Rechner 4,1 bis 5,6 GiB für alles andere, und schon beim Reservieren des Pools musste der Kernel den Speicher 534-mal verdichten; bei den kleineren Pools kein einziges Mal. Neben einem Pool dieser Größe sollte auf dem Notebook nichts Großes mehr laufen.
04 · Verstehen
Bis 262k hält das Verstehen, darüber lässt es nach
Bis 245k löst das Modell 106 von 108 wertbaren Aufgaben.
Innerhalb der nativen Grenze ist Länge für dieses Modell kein Hindernis. Die erste Fassung des Wetterprotokolls löst in jeder Stufe bis 245k alle acht Aufgaben, auch die zwei Rechenaufgaben; über alle 18 Messläufe fehlen 2 Antworten, verteilt auf 64k und 245k, nicht gehäuft am oberen Ende.
05 · Über 262k
Was zuerst ausfällt, ist das Nachschlagen
Oberhalb der nativen Grenze liegt es an der Länge. Dasselbe Wetterprotokoll ergibt bei 396k 6 von 8, bei 594k 4 von 8 und bei 990k 5 von 8 richtige Antworten.
Das Muster ist kein gleichmäßiger Verfall. Das Modell nennt eine echte Sensorkennung aus demselben Protokoll, nur aus der falschen Zeile; bei 245k greift es dieselbe Zeile noch sicher. Es verliert also nicht den Text, sondern die genaue Stelle darin.
Auch das Einlesen wird jenseits der Grenze teurer: bei 990k kostet jedes Token 35 Prozent mehr Zeit als bei 245k. Die Ausgabe bleibt davon fast unberührt.
06 · YaRN
Bei gleicher Länge ändert YaRN das Ergebnis nicht
Über 262.144 Token kommt das Modell nur mit YaRN, einer Streckung der Positionskodierung. Der Verdacht liegt nahe, dass sie den Abfall verursacht. Die Messung widerlegt ihn.
Zwei unabhängige Gegenproben stehen dahinter: ein Block von vier Messläufen in wechselnder Reihenfolge auf einem langen Wetterprotokoll von 4.993 Zeilen, und ein Messlauf mit dem kurzen Wetterprotokoll im Wartungsjournal, der genau an die native Reihe anschließt. Der Wortlaut der Antworten ändert sich mit YaRN, die Lösung nicht.
YaRN macht die Längen über 262k erst möglich, verursacht aber nicht, dass das Modell dort schlechter nachschlägt. Das liegt an der Länge selbst.
07 · Alle Zahlen
Die Ergebnisse je Längenstufe
Verstehen: das Wetterprotokoll im Wartungsjournal, die sechs wertbaren Aufgaben über alle Messläufe der Stufe. Tempo: Mediane über alle gewerteten Messläufe der Stufe. Aus diesen Werten sind alle Grafiken dieses Berichts gerechnet; die Werte je Messlauf stehen in docs/kontext-werte.json.
| Länge | Skalierung | Läufe | richtig |
|---|---|---|---|
| 32k | nativ | 3 | 18 / 18 |
| 64k | nativ | 3 | 17 / 18 |
| 96k | nativ | 3 | 18 / 18 |
| 128k | nativ | 3 | 18 / 18 |
| 192k | nativ | 3 | 18 / 18 |
| 245k | nativ | 3 | 17 / 18 |
| 396k | YaRN 4 | 1 | 5 / 6 |
| 594k | YaRN 4 | 1 | 4 / 6 |
| 990k | YaRN 4 | 1 | 4 / 6 |
| Länge | Läufe | Einlesen (s) | Einlesen (t/s) | Ausgabe (t/s) | Folgefrage (s) |
|---|---|---|---|---|---|
| 32k | 4 | 27,0 | 1.194 | 47,2 | 1,8 |
| 64k | 6 | 57,3 | 1.120 | 45,6 | 1,7 |
| 80k | 3 | 73,9 | 1.084 | 40,9 | 1,8 |
| 96k | 6 | 86,7 | 1.109 | 43,6 | 2,0 |
| 112k | 3 | 104,2 | 1.076 | 45,5 | 1,5 |
| 128k | 6 | 119,9 | 1.069 | 44,4 | 1,9 |
| 144k | 3 | 138,9 | 1.037 | 36,5 | 1,9 |
| 160k | 3 | 156,0 | 1.026 | 37,0 | 2,0 |
| 176k | 3 | 177,5 | 996 | 43,3 | 1,8 |
| 192k | 6 | 184,1 | 1.044 | 42,3 | 2,1 |
| 229k | 1 | 229,1 | 1.000 | 44,1 | 1,9 |
| 245k | 4 | 236,4 | 1.037 | 41,9 | 1,8 |
| 396k | 2 | 444,9 | 891 | 44,1 | 1,8 |
| 594k | 2 | 709,6 | 837 | 42,5 | 2,1 |
| 990k | 2 | 1.289,0 | 768 | 40,9 | 2,3 |
| Pool | Budget | Starts | Gewichte | KV-Pool | Arbeit | zusammen | danach frei |
|---|---|---|---|---|---|---|---|
| 393.216 | 32.768 | 9 | 68,0 | 10,8 | 21,4 | 100,1 | 13,2–13,7 |
| 425.984 | 16.384 | 2 | 68,0 | 11,7 | 12,5 | 92,1 | 21,1–21,7 |
| 622.592 | 16.384 | 2 | 68,0 | 17,1 | 12,5 | 97,6 | 15,3–16,3 |
| 1.048.576 | 16.384 | 2 | 68,0 | 28,8 | 12,5 | 109,3 | 4,1–5,6 |
08 · Grenzen
Was diese Arbeit nicht zeigt
Eine Fassung über 262k. Oberhalb der nativen Grenze lief je Länge eine Fassung des Wetterprotokolls. Bei Temperatur 0 wiederholt dasselbe Dokument dieselbe Antwort; die Streuung liegt zwischen Dokumenten und ist dort nicht gemessen. Dass 990k eine Aufgabe mehr löst als 594k, gehört dazu. Belastbar ist der Abstand: Dieselbe Fassung ist bis 245k fehlerfrei und ab 396k nicht mehr.
Ein Pool für alle Längen bis 262k. Bis 262k lief jeder Messlauf mit dem Alltagspool von 393.216 Positionen. Wie viel Speicher ein kleinerer Pool für kurze Texte spart, ist nicht gemessen.
Die kleinere Arena. Ab 396k arbeitet halogen mit einem Generierungsbudget von 16.384 statt 32.768 Token. Das ändert sich zugleich mit der Länge und ist nicht getrennt gemessen.
Eine Art Dokument. Die Aufgaben stellen Fragen an ein tabellarisches Messprotokoll. Für Quelltext, Fließtext oder Gespräche kann die Grenze anders liegen.
Eine Engine, eine Maschine. Gemessen ist halogen 0.12.1 und 0.13.1 auf dem HP ZBook Ultra G1a. Das Tempo gilt für diesen Stapel; ob llama.cpp bei denselben Längen dasselbe versteht, ist hier nicht gemessen.