← Tableau de bord

Rapport de performance — Strata UD-Q4_K_XL — cartes seules et combinaisons GPU

Série solo (une carte à la fois) + comparatif multi-GPU — 7/7 combinaisons terminées · Qwen3.8-Flash-Next Unsloth UD-Q4_K_XL · machine Ultra9 (192.168.1.112) · multi-GPU 2026-10-16 → 17 (terminés 17:0x, 17:5x, 18:4x EDT, run D 02:00 EDT) · solo 2026-10-16 → 17 (terminés 22:45, 23:25, 00:38 EDT)
Verdict multi-GPU : run 3 — 5090PCI + 3090TB5 + 5090TB5 reste la référence prefill — jusqu'à +52,9 % de prefill (96K), +69,3 % de decode chat et +25,0 % de decode agent vs run 1 — 5090PCI + 3090TB5. run D — 5090PCI + 5090TB5 est le meilleur decode de la série (agent 116,3 tok/s, +9,6 % vs run 3 ; chat 82,5 ≈ run 3) et libère le GPU 1 (3090TB5). La paire run 2 — 3090TB5 + 5090TB5 reste le choix quand la 5090PCI doit rester libre : decode proche (chat +8,8 % vs run 1 — 5090PCI + 3090TB5) mais prefill -62 à -64 %.

Verdict solo : 5090PCI seule bat toutes les configurations multi-GPU sur le prefill (2 323–3 894 tok/s vs 1 012–3 385) et reste à −2,3 % du run 3 en decode agent (103,7 vs 106,1) — une carte seule au lien natif (42,5 GB/s) coûte moins cher que trois cartes dont deux sur le TB5 partagé. Le goulot du Q4 en carte seule est le lien PCIe : le prefill sature le lien à 16K et reste plat jusqu'à 96K, proportionnel à la bande mesurée (plateaux ~3 894 / ~768 / ~565 tok/s).

run D [0,2] — les deux 5090 (2026-10-17 02:00 EDT, bat C:\Strata\5090_5090_q4.bat, instance lancée par l'agent — documenté dans C:\Strata\STATUS.md) : prefill entre run 1 et run 3 (2 451 tok/s à 32K, plateau 2 755/2 827 à 64-96K), meilleur decode agent de la série — la 7e et dernière combinaison des 3 cartes, série terminée 7/7.

1. Machine et cartes (mesuré au chargement)

Modèle 71,73 Go chargés · engine Strata 0.1.44.1 · contexte 262 144 · KV int8 · serveur port 8080 · 223 Go RAM · Windows WDDM · thinking désactivé sur tous les runs.
Cartenvidia-smiLienBande passante mesuréeRôle dans le comparatif
5090PCI (RTX 5090, PCIe natif)0PCIe natif42,5-42,6 GB/sruns 1, 3, D et A (solo) — multi-GPU : porte le gros du modèle (L0-32 sur D, L3-47 sur 1, L3-32 sur 3 + le plus gros cache d'experts) · solo : test de la bande du lien natif ; carte d'affichage du PC
3090TB5 (RTX 3090)1Thunderbolt 5 (partagé)5,0-5,1 GB/sruns 1, 2, 3 et C (solo) — multi-GPU : en tête du split (couches 0-2 + petit cache) sur 1/2/3 ; libérée sur run D · solo : test de la bande TB5 de la 24 Go
5090TB5 (RTX 5090, Thunderbolt)2Thunderbolt 5 (partagé)5,9 GB/sruns 2, 3, D et B (solo) — multi-GPU : run 2 porte presque tout (L3-47), runs 3 et D la fin (L33-47 + head) · solo : test de la bande TB5 de la 32 Go
Les deux cartes TB5 partagent un seul lien Thunderbolt 5 ; l'engine sonde la vitesse par carte et pondère le coût de miss. « 5090PCI », « 3090TB5 », « 5090TB5 » sont les noms utilisés partout dans ce document.

2. Configurations (identiques 1:1, seuls GPU et split changent)

run 1 5090PCI + 3090TB5run 2 3090TB5 + 5090TB5run 3 5090PCI + 3090TB5 + 5090TB5run D 5090PCI + 5090TB5
cartes (indices nvidia-smi du "gpu" de config)0 + 11 + 20 + 1 + 20 + 2
split auto (couches · cache experts)3090TB5 : L0-2 · 1 536 slots
5090PCI : L3-47 · 7 311 slots
3090TB5 : L0-2 · 1 536 slots
5090TB5 : L3-47 · 7 475 slots
3090TB5 : L0-2 · 1 536 slots
5090PCI : L3-32 · 7 981 slots
5090TB5 : L33-47+head · 7 501 slots
5090PCI : L0-32 · 7 995 slots
5090TB5 : L33-47+head · 7 448 slots
masse d'experts routée en VRAM~96,9 %~96,9 %~98,8 %~98,5 %
pipeline-windows 2 / adapt-async 1ouiouinon — désactivés par l'engine sur 3 stages ou plusoui / non — 2 stages : pipeline-windows actif, adapt-async désactivé par l'engine
instancedouble-clic userdouble-clic userdouble-clic user (bascule 18:19 EDT)lancée par l'agent 2026-10-17 02:00 EDT — les 3 double-clics de l'user sur le bat ne laissaient aucune trace (pas de cmd.exe, pas de python, pas de log engine ; bat + config byte-perfect, gardes verts, re-vérifiés 01:43 EDT) ; arrêtée par l'agent après le bench (documenté dans C:\Strata\STATUS.md)
Tout le reste identique : pack Q4_K_XL, modèles sur NVMe W:, --ple-io ram, spec 4, MTP, pool-workers 15, conv-cache 24 576 MiB, même env dans les bats. Slots de conv-cache : 3 sur les multi-GPU, 16 sur la série solo (consigne user 2026-10-16 : 16 conversations garées, 24 Go conservés).

Série solo — une carte à la fois (2026-10-16 → 17)

A 5090PCI seuleB 5090TB5 seuleC 3090TB5 seule
bat / config5090_pci_q4.bat
strata-unsloth-ud-q4_k_xl-pci16-solo.json
5090_tb5_q4.bat
strata-unsloth-ud-q4_k_xl-tb5-solo.json
3090_tb5_q4.bat
strata-unsloth-ud-q4_k_xl-3090-solo.json
carte (nvidia-smi)021
lien mesuré au chargement42,5 GB/s (pcie_frac 0,55)5,9 GB/s (pcie_frac 0,16)5,1 GB/s (pcie_frac 0,14)
cache experts7 802 slots / 23 322 MiB7 802 slots / 23 322 MiB5 256 slots / 15 697 MiB
VRAM restante au chargement385 MiB *385 MiB *444 → 312 MiB *
vram-reserve-later-mib / pipeline1187 (carte d'affichage) / — (1 stage)— / —— / —
instance validée2026-10-16 22:30 EDT2026-10-17 00:12 EDT2026-10-16 22:47 EDT
* marge mince acceptée : l'engine émet un WARNING « below 1024 MiB », la marge a tenu sur les 44 requêtes des deux suites sans aucun stall (logs engine lus en entier). Le Q4 (71,73 Go) ne tient pas dans une carte : les experts hors VRAM sont streamés depuis la RAM (arène 6 Go épinglée) — chaque run solo est un test de la bande du lien PCIe de la carte. Runs solo lancés sans --pipeline-windows (1 stage, rien à pipeliner).

3. VRAM par GPU et RAM dédiée

VRAM utilisée par carte (calculée capacity − libre « with everything loaded », logs engine de chaque run ; inclut poids des couches, cache d'experts, KV et buffers de session) :
ConfigCarteRôle dans le splitCapacitéVRAM utiliséeLibre au chargement
run 1 5090PCI + 3090TB5 3090TB5L0-2 + cache 1 536 slots (4,83 Go) + buffers prompt 3,73 Go24,0 Go≈ 16,2 Go7,99 Go
5090PCIL3-47 + head + cache 7 311 slots (21,20 Go)32 Go
31,84 utiles
≈ 31,3 Go0,73 Go
run 2 3090TB5 + 5090TB5 3090TB5L0-2 + cache 1 536 slots (4,83 Go) + buffers prompt 3,73 Go24,0 Go≈ 15,7 Go8,28 Go
5090TB5L3-47 + head + cache 7 475 slots (21,68 Go)32 Go≈ 31,7 Go0,25 Go *
run 3 5090PCI + 3090TB5 + 5090TB5 3090TB5L0-2 + cache 1 536 slots (4,83 Go) + buffers prompt 3,73 Go24,0 Go≈ 17,0 Go7,03 Go
5090PCIL3-32 + cache 7 981 slots (23,10 Go)32 Go≈ 31,1 Go0,94 Go
5090TB5L33-47 + head + cache 7 501 slots (21,93 Go)32 Go≈ 31,3 Go0,67 Go
run D 5090PCI + 5090TB5 5090PCIL0-32 + cache 7 995 slots (23,34 Go) + buffers prompt 3,73 Go32 Go
31,84 utiles
≈ 31,4 Go0,44 Go *
5090TB5L33-47 + head + cache 7 448 slots (21,78 Go) + buffers prompt 3,73 Go32 Go≈ 31,1 Go0,73 Go *
Total VRAM occupée—47,5 Go (r1) · 47,4 Go (r2) · 79,4 Go (r3) · 62,5 Go (rD)8,7 / 8,5 / 8,9 / 1,2 Go
* run 2 : le 5090TB5 descend à 0,25 Go libre (warning - LOW au chargement) ; les graphes de fenêtre s'y capturent ensuite jusqu'à 0,19 Go sans aucun stall — 44 requêtes tenues. Le « libre » est mesuré avant la capture des graphes (quelques centaines de MiB de plus consommées après). La 5090PCI garde 1 187 MiB réservés à la carte d'affichage (--vram-reserve-later-mib 1187). La 3090TB5 reste à ~7-8 Go libres dans les trois configs — sa part du modèle est petite (couches 0-2). * run D : 447 MiB (5090PCI, après la réserve d'affichage) et 743 MiB (5090TB5) au chargement — même WARNING WDDM « below 1024 MiB » que les solos, la marge a tenu sur les 44 requêtes sans stall.
RAM système dédiée — identique dans les trois configurations (c'est le même moteur et les mêmes réglages, seule la répartition GPU change) :
PosteTailleSource (mesurée)
Table PLE / n-gram (320 001 536 lignes, format IQ4_NL) verrouillée en RAM par --ple-io ram≈ 28,8 Golog « PLE table locked in RAM in 10,9 s » ; format de table IQ4_NL = 28,8 Go (docs/DETAILS.md)
Arène d'experts épinglée (4 tranches ; plafond WDDM multi-GPU 8 Go)6,0 Golog « 4 slices pinned (6 GiB) »
KV streaming épinglé (pages hors VRAM)0,26 Golog « the K/V in 0,26 GiB of pinned RAM »
Cache de conversations parkées — budget (plafond, pas une réservation) ; pic observé aujourd'hui ≈ 8,0 Go24,0 Go max--conversation-cache-mib 24576 ; log « bytes=8 583 667 960 » (pic de la journée)
Total dédié≈ 35 Go fermes
+ 24 Go de budget
≈ 59 Go au pire sur 223 Go de RAM
Les 103,7 Go de fichiers du modèle sur le NVMe W: ne sont pas dédiés : Windows les met en cache-lecture opportuniste et l'engine stream les experts manquants par l'arène épinglée de 6 Go. La table PLE en RAM est la raison du fix des crashes du matin (lecture NAS à ~1 Mo/s → watchdog) : 10,9 s de verrouillage au démarrage, plus aucune attente disque ensuite.

4. Série solo — suite officielle (médianes)

TestA 5090PCI seuleB 5090TB5 seuleC 3090TB5 seule
chat decode (tok/s)64,359,636,6
chat TTFT (s)0,630,671,06
4K prefill (tok/s)2 323,0383,5289,3
16K prefill (tok/s)3 741,7753,8564,9
32K prefill (tok/s)3 891,4764,6565,7
agent TTFT par tour (s)2,0710,3913,90
agent decode (tok/s)103,780,852,0
agent cache hit (%)68,72 (4 jetons re-lus)68,62 (72)68,46 (142)
durée wall officielle (s)114,1434,5588,3

5. Série solo — extension longs contextes (médianes)

TestA 5090PCI seuleB 5090TB5 seuleC 3090TB5 seule
prefill 64K (tok/s)3 993,4769,5563,3
prefill 96K (tok/s)3 894,3768,4564,8
decode ctx 64K (tok/s, ~1 000 jetons)96,078,447,0
decode ctx 32K (tok/s, ~1 000 jetons)113,478,947,0
durée wall extension (s)256,61 089,91 503,5

Prefill (tok/s — plus long = plus rapide)

4K

5090PCI seule
2 323,0
5090TB5 seule
383,5
3090TB5 seule
289,3

16K

5090PCI seule
3 741,7
5090TB5 seule
753,8
3090TB5 seule
564,9

32K

5090PCI seule
3 891,4
5090TB5 seule
764,6
3090TB5 seule
565,7

64K (extension)

5090PCI seule
3 993,4
5090TB5 seule
769,5
3090TB5 seule
563,3

96K (extension)

5090PCI seule
3 894,3
5090TB5 seule
768,4
3090TB5 seule
564,8

Decode (tok/s)

chat court

5090PCI seule
64,3
5090TB5 seule
59,6
3090TB5 seule
36,6

agent (6 tours, outils)

5090PCI seule
103,7
5090TB5 seule
80,8
3090TB5 seule
52,0

contexte 64K (~1 000 jetons)

5090PCI seule
96,0
5090TB5 seule
78,4
3090TB5 seule
47,0

contexte 32K (~1 000 jetons)

5090PCI seule
113,4
5090TB5 seule
78,9
3090TB5 seule
47,0

6. Lecture — série solo

7. Multi-GPU — suite officielle (médianes)

Test5090PCI + 3090TB53090TB5 + 5090TB55090PCI + 3090TB5 + 5090TB5run D 5090PCI + 5090TB5Δ run D vs run 3Δ 3 cartes vs 5090PCI + 3090TB5Δ 3 cartes vs 3090TB5 + 5090TB5
chat decode (tok/s)48,652,982,382,5+0,2 %+69,3 %+55,6 %
chat TTFT (s)10,76 *0,640,430,43≈ 0——
4K prefill (tok/s)1 012,0383,71 081,01 045,9−3,2 %+6,8 %+181,7 %
16K prefill (tok/s)2 049,4757,82 315,72 168,3−6,4 %+13,0 %+205,6 %
32K prefill (tok/s)2 167,7780,32 868,42 451,0−14,6 %+32,3 %+267,6 %
agent TTFT par tour (s)3,9210,593,923,99+1,8 % (temps)≈ 0-63,0 % de temps
agent decode (tok/s)84,966,0106,1116,3+9,6 %+25,0 %+60,8 %
agent cache hit (%)68,5768,5968,5868,60≈ 0≈ 0≈ 0
* run 1 : TTFT chat contaminé par la file d'autres sessions Grok de l'user sur le même serveur (les timings engine restent propres). TTFT = côté client ; vitesses = timings engine.

Prefill (tok/s — plus long = plus rapide)

4K

5090PCI + 3090TB5
1 012,0
3090TB5 + 5090TB5
383,7
5090PCI + 3090TB5 + 5090TB5
1 081,0
5090PCI + 5090TB5 (run D)
1 045,9

16K

5090PCI + 3090TB5
2 049,4
3090TB5 + 5090TB5
757,8
5090PCI + 3090TB5 + 5090TB5
2 315,7
5090PCI + 5090TB5 (run D)
2 168,3

32K

5090PCI + 3090TB5
2 167,7
3090TB5 + 5090TB5
780,3
5090PCI + 3090TB5 + 5090TB5
2 868,4
5090PCI + 5090TB5 (run D)
2 451,0

64K (extension)

5090PCI + 3090TB5
2 223,6
3090TB5 + 5090TB5
789,2
5090PCI + 3090TB5 + 5090TB5
3 258,1
5090PCI + 5090TB5 (run D)
2 754,9

96K (extension)

5090PCI + 3090TB5
2 213,3
3090TB5 + 5090TB5
789,7
5090PCI + 3090TB5 + 5090TB5
3 384,8
5090PCI + 5090TB5 (run D)
2 826,6

Decode (tok/s)

chat court

5090PCI + 3090TB5
48,6
3090TB5 + 5090TB5
52,9
5090PCI + 3090TB5 + 5090TB5
82,3
5090PCI + 5090TB5 (run D)
82,5

agent (6 tours, outils)

5090PCI + 3090TB5
84,9
3090TB5 + 5090TB5
66,0
5090PCI + 3090TB5 + 5090TB5
106,1
5090PCI + 5090TB5 (run D)
116,3

contexte 64K (~1 000 jetons)

5090PCI + 3090TB5
88,2
3090TB5 + 5090TB5
73,8
5090PCI + 3090TB5 + 5090TB5
98,1
5090PCI + 5090TB5 (run D)
102,6

contexte 32K (~1 000 jetons)

5090PCI + 3090TB5
87,7
3090TB5 + 5090TB5
75,7
5090PCI + 3090TB5 + 5090TB5
103,3
5090PCI + 5090TB5 (run D)
100,6

8. Multi-GPU — extension longs contextes (médianes)

Test5090PCI + 3090TB53090TB5 + 5090TB55090PCI + 3090TB5 + 5090TB5run D 5090PCI + 5090TB5Δ run D vs run 3Δ 3 cartes vs 5090PCI + 3090TB5Δ 3 cartes vs 3090TB5 + 5090TB5
prefill 64K (tok/s)2 223,6789,23 258,12 754,9−15,4 %+46,5 %+312,8 %
prefill 96K (tok/s)2 213,3789,73 384,82 826,6−16,5 %+52,9 %+328,6 %
decode ctx 64K (tok/s)88,273,898,1102,6+4,6 %+11,2 %+32,9 %
decode ctx 32K (tok/s)87,775,7103,3100,6−2,6 %+17,8 %+36,5 %

9. Lecture — multi-GPU (4 voies)

10. Cache de conversations parkées (mesuré en production le 2026-10-16)

Coût d'une conversation parkée (KV int8, lignes conversation cache du log) : ~240 Mo fixes + ~20 Ko/jeton.
ConversationJetonsRAM du snapshot
session agent (cette conversation)194 1424,04 Go
session agent (autre)219 2034,45 Go
bench 64K64 0651,65 Go
petite requête590,24 Go
Budget 24 576 MiB ≈ 1,2 M de jetons parkés au total ; les slots sont un plafond de nombre, le budget est la limite dure (éviction gracieuse, la conversation évictée relit son histoire à ~2 950 tok/s). Config actuelle : 16 slots (tiennent si la moyenne des sessions reste sous ~65K jetons).

11. Propreté des mesures

12. Fichiers sources

Généré le 2026-10-17 à 03:15 EDT · toutes les heures locales sont Est (EDT) · vitesses = médianes de 3 runs, timings engine · VRAM/RAM = logs engine de chaque run · 7/7 combinaisons terminées (runs 1/2/3/D + solos A/B/C) · page autonome (aucune ressource externe).