← Tableau de bord

Rapport de performance — Strata UD-Q4_K_XL — toutes les combinaisons GPU

9 runs · 7/7 combinaisons des 3 cartes · la paire 5090PCI + 5090TB5 testée 3 fois (runs D/E/F) · Qwen3.8-Flash-Next Unsloth UD-Q4_K_XL · machine Ultra9 (192.168.1.112) · 2026-10-16 → 17 · rouge = meilleur score de toutes les combinaisons pour ce modèle
Comment lire ce rapport : chaque métrique est une médiane de 3 runs, timings engine. En rouge, la meilleure valeur de la ligne toutes combinaisons confondues (tok/s : la plus élevée ; TTFT : la plus basse).

Verdict : le prefill appartient à la 5090PCI seule — elle bat toutes les combinaisons multi-GPU de 4K à 96K (2 323 → 3 993 tok/s) : une carte au lien natif 42,5 GB/s coûte moins cher qu'un split dont une carte est sur le Thunderbolt 5 partagé (5-6 GB/s).
Le decode appartient à la paire DEF 5090PCI + 5090TB5 : chat 87,9 (run E), agent 154,2 et contexte 64K/32K 128,1 / 130,5 (run F) — soit +45,3 % d'agent et +30,6 % de decode à 64K vs les 3 cartes (run 3).
run 3 (3 cartes) reste la référence multi-GPU de prefill à grand contexte (3 258 / 3 385 tok/s à 64-96K) mais perd tous les decode face à la paire 2×5090.

La paire [0,2] a été mesurée 3 fois (run D 02:20 EDT, run E 14:1x EDT, run F 17:0x EDT — même config, même split) : decode agent 116,3 → 134,8 → 154,2 tok/s en progressant dans la journée — variance intra-journée, la machine montant en température ; le decode 64K/32K gagne +24 à +27 % de D à E/F. Les trois runs sont propres (0 échec, 0 jeton réutilisé, 0 incident moteur).

1. Meilleurs scores — toutes les combinaisons (médianes)

TestABCrun 1run 2run 3run Drun Erun FMeilleur
chat decode (tok/s)64,359,636,648,652,982,382,587,987,5run E
chat TTFT (s)0,630,671,0610,760,640,430,430,500,35run F
4K prefill (tok/s)2 323,0383,5289,31 012,0383,71 081,01 045,91 033,11 084,6A
16K prefill (tok/s)3 741,7753,8564,92 049,4757,82 315,72 168,32 133,32 200,1A
32K prefill (tok/s)3 891,4764,6565,72 167,7780,32 868,42 451,02 689,02 687,5A
agent decode (tok/s)103,780,852,084,966,0106,1116,3134,8154,2run F
agent TTFT par tour (s)2,0710,3913,903,9210,593,923,993,773,73A
prefill 64K (tok/s)3 993,4769,5563,32 223,6789,23 258,12 754,92 738,22 760,7A
prefill 96K (tok/s)3 894,3768,4564,82 213,3789,73 384,82 826,63 001,23 041,8A
decode ctx 64K (tok/s)96,078,447,088,273,898,1102,6126,8128,1run F
decode ctx 32K (tok/s)113,478,947,087,775,7103,3100,6128,2130,5run F
9 runs : A/B/C = cartes seules · run 1 = 5090PCI + 3090TB5 · run 2 = 3090TB5 + 5090TB5 · run 3 = les 3 cartes · runs D/E/F = 5090PCI + 5090TB5 (3 mesures indépendantes). Rouge = meilleur score de la ligne toutes combinaisons confondues ; pour les TTFT le meilleur score est le plus bas. Prefill 64K/96K et decode contexte = suite d'extension ; le reste = suite officielle --long.

2. 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/E/F et A (solo) — multi-GPU : porte le gros du modèle (L0-32 sur D/E/F, L3-47 sur 1, L3-32 sur 3 + le plus gros cache d'experts) · 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 D/E/F (les llama-servers de l'user y restent) · solo : test de la bande TB5 de la 24 Go
5090TB5 (RTX 5090, Thunderbolt)2Thunderbolt 5 (partagé)5,9 GB/sruns 2, 3, D/E/F et B (solo) — multi-GPU : run 2 porte presque tout (L3-47), runs 3 et D/E/F 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.

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

run 1 5090PCI + 3090TB5run 2 3090TB5 + 5090TB5run 3 les 3 cartesrun D 5090PCI + 5090TB5run E 5090PCI + 5090TB5run F 5090PCI + 5090TB5
cartes (indices nvidia-smi du "gpu" de config)0 + 11 + 20 + 1 + 20 + 20 + 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 — identique sur D, E et F (même config strata-unsloth-ud-q4_k_xl-pci-tb5.json)
masse d'experts routée en VRAM~96,9 %~96,9 %~98,8 %~98,5 %~98,5 %~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 — le bat 5090_5090_q4.bat était alors en fins de ligne LF (double-clic silencieux) ; commande exacte du bat lancée à la main, arrêtée après le benchlancée par l'agent 13:34 EDT via le bat réparé en CRLF (1re preuve du correctif) ; arrêtée après le benchlancée par l'user par double-clic sur le bat réparé (~16:45 EDT, 3e preuve du correctif) ; laissée en ligne après le bench
Tout le reste identique sur les 9 runs : 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 (STRATA_PREFILL_HELP=1 + STRATA_SPLIT_MTP_BATCH=1). Slots de conv-cache : 3 sur les multi-GPU, 16 sur la série solo (consigne user 2026-10-16). Le bat C:\Strata(90_5090_q4.bat a été réparé LF→CRLF le 17-10 13:3x EDT (cause racine des double-clics silencieux) ; les 3 bats frères solo ont été réparés de la même façon à 17:0x EDT.

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 *
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).

4. 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 les 3 cartes 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 DEF 5090PCI + 5090TB5 5090PCIL0-32 + cache 7 995 slots (23,34 Go) + buffers prompt 3,73 Go32 Go
31,84 utiles
≈ 31,4 Go (30 976 MiB relevés sur F)0,44 Go *
5090TB5L33-47 + head + cache 7 448 slots (21,78 Go) + buffers prompt 3,73 Go32 Go≈ 31,1 Go (30 680 MiB relevés sur F)0,73 Go *
* WARNING WDDM « below 1024 MiB » présent dès la première requête sur les runs concernés (2 : 0,25 Go ; D/E/F : 447 MiB + 743 MiB ; solos : 385/385/444→312 MiB) — la marge a tenu sur les 44 requêtes de chaque run, zéro stall sur les 9 runs. La 5090PCI garde 1 187 MiB réservés à la carte d'affichage (--vram-reserve-later-mib 1187). Runs E et F : même config et même split que D, même régime VRAM (vérifié nvidia-smi avant le bench F : GPU0 30 976 MiB · GPU2 30 680 MiB · GPU1 23 850 MiB = llama-server de l'user intact).
RAM système dédiée — identique dans les neuf 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é ≈ 8,0 Go24,0 Go max--conversation-cache-mib 24576 ; log « bytes=8 583 667 960 »
Total dédié≈ 35 Go fermes
+ 24 Go de budget
≈ 59 Go au pire sur 223 Go de RAM

5. 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 jetons re-lus)68,46 (142 jetons re-lus)
durée wall officielle (s)114,1434,5588,3
Rouge = meilleur score toutes combinaisons confondues (les 9 runs), pas seulement de la série solo.

6. 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

7. Lecture — série solo

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

Testrun 1 5090PCI + 3090TB5run 2 3090TB5 + 5090TB5run 3 les 3 cartesrun D 2×5090run E 2×5090run F 2×5090Δ meilleur [0,2] vs run 3
chat decode (tok/s)48,652,982,382,587,987,5+6,8 %
chat TTFT (s)10,760,640,430,430,500,35—
4K prefill (tok/s)1 012,0383,71 081,01 045,91 033,11 084,6+0,3 %
16K prefill (tok/s)2 049,4757,82 315,72 168,32 133,32 200,1−5,0 %
32K prefill (tok/s)2 167,7780,32 868,42 451,02 689,02 687,5−6,3 %
agent TTFT par tour (s)3,9210,593,923,993,773,73—
agent decode (tok/s)84,966,0106,1116,3134,8154,2+45,3 %
agent cache hit (%)68,5768,5968,5868,6068,5868,72≈ 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. Rouge = meilleur score des 9 runs.

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 (D)
1 045,9
5090PCI + 5090TB5 (E)
1 033,1
5090PCI + 5090TB5 (F)
1 084,6

16K

5090PCI + 3090TB5
2 049,4
3090TB5 + 5090TB5
757,8
5090PCI + 3090TB5 + 5090TB5
2 315,7
5090PCI + 5090TB5 (D)
2 168,3
5090PCI + 5090TB5 (E)
2 133,3
5090PCI + 5090TB5 (F)
2 200,1

32K

5090PCI + 3090TB5
2 167,7
3090TB5 + 5090TB5
780,3
5090PCI + 3090TB5 + 5090TB5
2 868,4
5090PCI + 5090TB5 (D)
2 451,0
5090PCI + 5090TB5 (E)
2 689,0
5090PCI + 5090TB5 (F)
2 687,5

64K (extension)

5090PCI + 3090TB5
2 223,6
3090TB5 + 5090TB5
789,2
5090PCI + 3090TB5 + 5090TB5
3 258,1
5090PCI + 5090TB5 (D)
2 754,9
5090PCI + 5090TB5 (E)
2 738,2
5090PCI + 5090TB5 (F)
2 760,7

96K (extension)

5090PCI + 3090TB5
2 213,3
3090TB5 + 5090TB5
789,7
5090PCI + 3090TB5 + 5090TB5
3 384,8
5090PCI + 5090TB5 (D)
2 826,6
5090PCI + 5090TB5 (E)
3 001,2
5090PCI + 5090TB5 (F)
3 041,8

Decode (tok/s)

chat court

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

agent (6 tours, outils)

5090PCI + 3090TB5
84,9
3090TB5 + 5090TB5
66,0
5090PCI + 3090TB5 + 5090TB5
106,1
5090PCI + 5090TB5 (D)
116,3
5090PCI + 5090TB5 (E)
134,8
5090PCI + 5090TB5 (F)
154,2

contexte 64K (~1 000 jetons)

5090PCI + 3090TB5
88,2
3090TB5 + 5090TB5
73,8
5090PCI + 3090TB5 + 5090TB5
98,1
5090PCI + 5090TB5 (D)
102,6
5090PCI + 5090TB5 (E)
126,8
5090PCI + 5090TB5 (F)
128,1

contexte 32K (~1 000 jetons)

5090PCI + 3090TB5
87,7
3090TB5 + 5090TB5
75,7
5090PCI + 3090TB5 + 5090TB5
103,3
5090PCI + 5090TB5 (D)
100,6
5090PCI + 5090TB5 (E)
128,2
5090PCI + 5090TB5 (F)
130,5

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

Testrun 1 5090PCI + 3090TB5run 2 3090TB5 + 5090TB5run 3 les 3 cartesrun D 2×5090run E 2×5090run F 2×5090Δ meilleur [0,2] vs run 3
prefill 64K (tok/s)2 223,6789,23 258,12 754,92 738,22 760,7−15,3 %
prefill 96K (tok/s)2 213,3789,73 384,82 826,63 001,23 041,8−10,1 %
decode ctx 64K (tok/s)88,273,898,1102,6126,8128,1+30,6 %
decode ctx 32K (tok/s)87,775,7103,3100,6128,2130,5+26,3 %

10. Lecture — multi-GPU

11. 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).

12. Propreté des mesures (9 runs)

13. Fichiers sources

Généré le 2026-10-17 à 17:31 EDT · toutes les heures locales sont Est (EDT) · vitesses = médianes de 3 runs, timings engine · VRAM/RAM = logs engine de chaque run · 9 runs · 7/7 combinaisons des 3 cartes (la paire [0,2] mesurée 3 fois : D/E/F) · rouge = meilleur score toutes combinaisons confondues pour ce modèle · page autonome (aucune ressource externe).