patdev commited on
Commit
696a1ff
·
verified ·
1 Parent(s): 801b252

corrections : ONNX sans avantage (135,7 vs 134,1), EP TensorRT inaccessible depuis GenAI, A12B degenere

Browse files
reports/2026-08-23-banc-a12b-multisession.md CHANGED
@@ -4,6 +4,17 @@ Mesures sur RTX 6000 Ada (sm89), vLLM 0.27.1, checkpoint
4
  `patdev/Qwen3.8-MoE-27B-A12B-W4A16` (INT4 groupwise, noyau Marlin WNA16 MoE), contexte 32 k,
5
  `gpu-memory-utilization 0.90`. Prompt : génération d'une fonction Python avec docstring et test.
6
 
 
 
 
 
 
 
 
 
 
 
 
7
  ## Ce que ONNX et TensorRT ne peuvent pas faire ici
8
 
9
  La demande initiale était « A12B en ONNX GenAI et en TensorRT, avec plusieurs sessions ».
 
4
  `patdev/Qwen3.8-MoE-27B-A12B-W4A16` (INT4 groupwise, noyau Marlin WNA16 MoE), contexte 32 k,
5
  `gpu-memory-utilization 0.90`. Prompt : génération d'une fonction Python avec docstring et test.
6
 
7
+
8
+ > **AVERTISSEMENT ajouté après coup (23/08, 04:30).** Un contrôle de qualité de sortie
9
+ > (proportion de 4-grammes distincts) donne **0,000 — DÉGÉNÉRÉ** sur
10
+ > `Qwen3.8-MoE-27B-A12B-W4A16` : le modèle produit des points et des retours à la ligne en
11
+ > boucle, pas du texte. **Tous les débits de l'A12B rapportés ci-dessous mesurent donc un modèle
12
+ > qui ne génère rien d'utilisable**, et le gain de +183 % attribué à la spéculation n-gram était
13
+ > un artefact — elle prédisait une répétition infinie, ce qui est trivial. Deux causes sont en
14
+ > cours de départage : la fusion du routeur (moyenne de 4 lignes) et la quantification INT4
15
+ > effectuée **sans données de calibration** (`DataFreePipeline`). La re-partition des experts,
16
+ > elle, a été vérifiée exacte (formes et sommes de poids).
17
+
18
  ## Ce que ONNX et TensorRT ne peuvent pas faire ici
19
 
20
  La demande initiale était « A12B en ONNX GenAI et en TensorRT, avec plusieurs sessions ».
reports/2026-08-23-banc-quatre-modeles-ada.md CHANGED
@@ -3,6 +3,30 @@
3
  Toutes les mesures sur la même carte (RTX 6000 Ada, sm89), vLLM 0.27.1, `--max-num-seqs 64`,
4
  `gpu-memory-utilization 0.92`, prompts identiques (génération de code, et prose pour comparaison).
5
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6
  ## Le tableau d'ensemble
7
 
8
  | modèle | actifs/jeton | solo | 8 sessions | 32 sessions | cache KV | démarrage |
 
3
  Toutes les mesures sur la même carte (RTX 6000 Ada, sm89), vLLM 0.27.1, `--max-num-seqs 64`,
4
  `gpu-memory-utilization 0.92`, prompts identiques (génération de code, et prose pour comparaison).
5
 
6
+
7
+ > **AVERTISSEMENT ajouté après coup (23/08, 04:30).** Un contrôle de qualité de sortie
8
+ > (proportion de 4-grammes distincts) donne **0,000 — DÉGÉNÉRÉ** sur
9
+ > `Qwen3.8-MoE-27B-A12B-W4A16` : le modèle produit des points et des retours à la ligne en
10
+ > boucle, pas du texte. **Tous les débits de l'A12B rapportés ci-dessous mesurent donc un modèle
11
+ > qui ne génère rien d'utilisable**, et le gain de +183 % attribué à la spéculation n-gram était
12
+ > un artefact — elle prédisait une répétition infinie, ce qui est trivial. Deux causes sont en
13
+ > cours de départage : la fusion du routeur (moyenne de 4 lignes) et la quantification INT4
14
+ > effectuée **sans données de calibration** (`DataFreePipeline`). La re-partition des experts,
15
+ > elle, a été vérifiée exacte (formes et sommes de poids).
16
+
17
+
18
+ > **CORRECTION (23/08, 04:50).** Le chiffre de **163,2 tok/s** attribué à ONNX GenAI **ne se
19
+ > reproduit pas**. Remesuré dans une exécution contrôlée, rodage exclu du chronomètre, sur la même
20
+ > carte : **135,7 tok/s** (4-grammes distincts 0,949, texte sain) — soit **à égalité avec vLLM**
21
+ > (134,1), et non les +22 % annoncés. La mesure initiale était optimiste. **ONNX GenAI n'a donc
22
+ > aucun avantage de débit sur vLLM**, et reste dépourvu de batching continu.
23
+ >
24
+ > Par ailleurs, l'EP TensorRT est **inaccessible depuis ONNX GenAI** :
25
+ > `RuntimeError: Unknown provider name 'tensorrt'` — la roue GenAI ne connaît que DML, QNN,
26
+ > OpenVINO, SNPE... L'EP fonctionne bien dans `onnxruntime-gpu` classique (`TRT_EP_ACTIF`), mais
27
+ > celui-ci n'a pas de boucle de génération : il faudrait écrire la gestion du cache KV à la main,
28
+ > pour un graphe que TensorRT fragmenterait de toute façon (601 nœuds `com.microsoft` sur 1 976).
29
+
30
  ## Le tableau d'ensemble
31
 
32
  | modèle | actifs/jeton | solo | 8 sessions | 32 sessions | cache KV | démarrage |
reports/2026-08-23-mxfp4-deblocage-trtllm-et-familles-moe.md CHANGED
@@ -4,6 +4,19 @@ Deux questions tranchées, toutes deux par de la lecture de code et de l'arithm
4
  plutôt que par des essais successifs : **pourquoi TensorRT-LLM refusait nos modèles**, et
5
  **quelles variantes MoE sont réellement fabricables** à partir de Qwen3.8 et de Kimi K3.
6
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7
  ## 1. Le mur TensorRT-LLM : trois formats, une seule issue
8
 
9
  Le mode de quantification `536`, longtemps opaque, se décode depuis `QuantMode` :
 
4
  plutôt que par des essais successifs : **pourquoi TensorRT-LLM refusait nos modèles**, et
5
  **quelles variantes MoE sont réellement fabricables** à partir de Qwen3.8 et de Kimi K3.
6
 
7
+
8
+ > **CORRECTION (23/08, 04:50).** Le chiffre de **163,2 tok/s** attribué à ONNX GenAI **ne se
9
+ > reproduit pas**. Remesuré dans une exécution contrôlée, rodage exclu du chronomètre, sur la même
10
+ > carte : **135,7 tok/s** (4-grammes distincts 0,949, texte sain) — soit **à égalité avec vLLM**
11
+ > (134,1), et non les +22 % annoncés. La mesure initiale était optimiste. **ONNX GenAI n'a donc
12
+ > aucun avantage de débit sur vLLM**, et reste dépourvu de batching continu.
13
+ >
14
+ > Par ailleurs, l'EP TensorRT est **inaccessible depuis ONNX GenAI** :
15
+ > `RuntimeError: Unknown provider name 'tensorrt'` — la roue GenAI ne connaît que DML, QNN,
16
+ > OpenVINO, SNPE... L'EP fonctionne bien dans `onnxruntime-gpu` classique (`TRT_EP_ACTIF`), mais
17
+ > celui-ci n'a pas de boucle de génération : il faudrait écrire la gestion du cache KV à la main,
18
+ > pour un graphe que TensorRT fragmenterait de toute façon (601 nœuds `com.microsoft` sur 1 976).
19
+
20
  ## 1. Le mur TensorRT-LLM : trois formats, une seule issue
21
 
22
  Le mode de quantification `536`, longtemps opaque, se décode depuis `QuantMode` :