100 lines
5.3 KiB
Markdown
100 lines
5.3 KiB
Markdown
# DFlash2 auf Athena: Ein-Slot-Vergleich
|
|
|
|
20.09.2026, im Anschluss an den gescheiterten Zwei-Slot-Kurztest.
|
|
|
|
**Ein Slot mit Draft auf der RTX 3060 funktioniert im Kurztest. Ein klarer
|
|
Geschwindigkeitsvorteil gegenüber der gespeicherten MTP-Referenz ist nicht
|
|
sichtbar. Kein produktiver Wechsel.**
|
|
|
|
## Gewünschte Reihenfolge und Ergebnis
|
|
|
|
| Priorität | Konfiguration | Ergebnis |
|
|
|---|---|---|
|
|
| 1 | Ein Slot, Qwen 80:20, Draft auf 5080 | Initialisierung scheitert an Gerätezuordnung der geteilten Ausgabematrix |
|
|
| 2 | Ein Slot, Qwen 80:20, Draft auf 3060 | Laden, Deutsch, Code und kurze Prefill-/Recall-Probe bestanden |
|
|
| 3 | Ein Slot, mehr Qwen auf 3060 (70:30), Draft auf 5080 | Nicht ausgeführt: nur als Rückfall bei Fehlschlag von Priorität 2 vorgesehen |
|
|
|
|
Beim ersten Ein-Slot-Lauf scheitert die Laufzeit mit
|
|
`pre-allocated tensor (output.weight) in a buffer (CUDA1) that cannot run the operation (NONE)`.
|
|
Der Draft ist auf CUDA0 begrenzt, während die verwendete Ausgabematrix auf CUDA1
|
|
liegt. Anders als beim ursprünglichen Zwei-Slot-Versuch ist dies kein gemeldeter
|
|
CUDA-Malloc-Fehler. Der Testprozess brach ab, der Host blieb erreichbar.
|
|
|
|
## Durchsatz
|
|
|
|
| Messung | DFlash2, ein Slot, 160K Kontext | Gespeicherte Pure/MTP-Zwei-GPU-Referenz |
|
|
|---|---:|---:|
|
|
| Deutsche Erklärung, Ausgabe | 37,8 tok/s | 57,3 tok/s |
|
|
| Python-Code, Ausgabe | 75,5 tok/s | 73,4 tok/s |
|
|
| Prefill, 4.196 Eingabetokens | 1.437,6 tok/s | kein gleicher 4K-Messpunkt dieses Referenzprofils |
|
|
| Ausgabe nach dieser 4K-Eingabe | 41,1 tok/s | kein gleicher 4K-Messpunkt dieses Referenzprofils |
|
|
| Recall der drei eingebauten Fakten | 3/3 | — |
|
|
|
|
Die Referenz verwendet dasselbe Pure-Modell, 80:20-Layer-Split und Microbatch 128,
|
|
aber **262.144 statt 160.000 Kontext, MTP2 statt DFlash2**. Das sind Vergleiche
|
|
vollständiger Konfigurationen, keine isolierten DFlash-Beschleunigungsfaktoren.
|
|
Es wurde kein neuer Qwen-Referenzlauf durchgeführt.
|
|
|
|
Deutsch erzeugte 768 Tokens in 20,29 Sekunden, Code endete nach 671 Tokens in
|
|
8,87 Sekunden; die Referenz erzeugte in beiden Aufgaben 768 Tokens. Gleiche
|
|
Eingaben und Seeds bedeuten bei unterschiedlicher spekulativer Verarbeitung
|
|
keine identischen Ausgaben. Ein Durchlauf je Aufgabe; geringe Unterschiede
|
|
wie die rund 3 % beim Code sind kein belastbarer allgemeiner Geschwindigkeitsgewinn.
|
|
|
|
DFlash-Draft-Akzeptanz: Deutsch 417/2444 = 17,1 %, Code 517/1071 = 48,3 %, kurze
|
|
Recall-Aufgabe 300/1460 = 20,5 %. Das sind angenommene Draft-Tokens, keine
|
|
Qualitätswerte; der Zusatzaufwand lohnt bei geringer Annahme weniger.
|
|
|
|
## Speicher und Kontext
|
|
|
|
Getestet: Pure IQ4_XS, bestehendes llama.cpp-Image b29c606, Q4_K_M-DFlash2,
|
|
160.000 Kontext, ein Slot, q4_0-K/V für Hauptmodell und Draft, Microbatch 128,
|
|
Batch 2048, Draft-Länge 7. Text ohne Vision-Projektor, TTS auf 3060 resident.
|
|
|
|
| GPU | Belegung nach Laden | Höchste gesampelte Belegung | Freier Speicher am gemessenen Peak |
|
|
|---|---:|---:|---:|
|
|
| RTX 5080 | 14.632 MiB | 14.660 MiB | 1.643 MiB |
|
|
| RTX 3060, inklusive TTS | 10.320 MiB | 10.378 MiB | 1.910 MiB |
|
|
|
|
Die Konfiguration mit 160K Kontext wurde geladen. **Die tatsächlich größte
|
|
Testeingabe hatte 4.196 Tokens.** Damit ist weder ein voller 160K-Langkontexttest
|
|
noch die Stabilität bei Vision oder paralleler Last erbracht. Die gemessenen
|
|
Reserven rechtfertigen keine automatische Hochrechnung einer maximalen Kapazität.
|
|
|
|
## Antwortqualität
|
|
|
|
Alle drei synthetischen Fakten wurden gefunden. Das Codebeispiel besteht den
|
|
geprüften Fehlerpfad „erste Aufgabe scheitert, spätere gelingt“. Wenn alle
|
|
Aufgaben scheitern, erzeugt es jedoch einen **NameError**, weil `builtins` ohne
|
|
Import verwendet wird. Die manuell geprüfte Antwort und der reproduzierbare
|
|
Teiltest sind archiviert. Die Deutschantwort enthält sprachliche und sachliche
|
|
Unschärfen; die Ausgabe endet am festgelegten Tokenlimit.
|
|
|
|
Diese kleinen Durchsatzaufgaben erlauben keine Freigabe als qualitativ gleichwertig
|
|
und belegen auch keinen durch DFlash verursachten Intelligenzverlust. Eine
|
|
allgemeine Qualitätsbewertung oder deterministische Äquivalenzprüfung wurde
|
|
in diesem kurzen Versuch nicht durchgeführt.
|
|
|
|
## Abschluss
|
|
|
|
Das bisherige Medium-Profil mit seinen ursprünglichen zwei Slots wurde nach
|
|
jedem Versuch wiederhergestellt; die Ein-Slot-Änderung war nur im isolierten
|
|
Testcontainer aktiv. Medium, Router, Controller, Gateway und TTS gesund,
|
|
Router readiness und minimale Modellantwort geprüft. Keine Xid-, OOM-Kill-,
|
|
Kernel-Panic- oder GPU-fallen-off-Meldungen im geprüften Kerneljournal.
|
|
Keine Treiber-, Kernel- oder Netzwerkänderungen, kein Neustart des Hosts.
|
|
|
|
Ein aktiver Produktionsrequest verzögerte beide Teststarts; der zweite musste
|
|
auf die Verarbeitung einer langen Eingabe warten. Keine laufende Anfrage wurde
|
|
absichtlich abgebrochen. Der gespeicherte Supervisor wartet künftig zusätzlich
|
|
auf gesunde Router-/Controller-Checks, bevor er die Wiederherstellung meldet.
|
|
|
|
**Empfehlung:** DFlash2 ist in dieser Ein-Slot-Anordnung technisch nutzbar,
|
|
aber nach diesem Kurztest kein überzeugender Ersatz für das vorhandene MTP.
|
|
Weitere Arbeit wäre gezieltes Draft-/Platzierungs-Tuning mit anschließender
|
|
Qualitäts- und Langkontextprüfung, keine produktive Aktivierung des jetzigen Falls.
|
|
|
|
Konfigurationen, Rohantworten, Serverlogs, GPU-Samples und Prüfbelege:
|
|
`experiments/dflash2-medium-20260920/` im Repository, entsprechend
|
|
`/data/benchmarks/dflash2-medium-20260920/` auf Athena.
|