@tduncan / Nvidia-Optimization-Stack-VLLM Mirror · read-only / commits / a5a623d961
Fork 0

A high-throughput and memory-efficient inference and serving engine for LLMs

Mirrored from https://github.com/tduncan-lum/Nvidia-Optimization-Stack---VLLM.git

Synced Nov 5, 13:30 UTC

[Bugfix] Re-enable Renormalize routing for TRT-LLM MoE experts (#38859)

Signed-off-by: Yifan Zong <yzong@redhat.com>

yzong-rh committed Apr 3, 2026 at 13:48 UTC a5a623d9616337ed53e8fa0e1376e2d17b505e38
2 files changed +7 -12
vllm/model_executor/layers/fused_moe/experts/trtllm_bf16_moe.py
+2 -5
@@ -79,11 +79,8 @@ class TrtLlmBf16Experts(mk.FusedMoEExpertsMonolithic):
79 RoutingMethodType.Default,
80 RoutingMethodType.DeepSeekV3,
81 RoutingMethodType.Llama4,
82 - # NOTE: TRTLLM Kernel has issue with Qwen3.5 router.
83 - # Re-enable once the issue is resolved.
84 - # https://github.com/vllm-project/vllm/issues/37591
85 - # RoutingMethodType.Renormalize,
86 - # RoutingMethodType.RenormalizeNaive
82 + RoutingMethodType.Renormalize,
83 + RoutingMethodType.RenormalizeNaive,
84 ]
85
86 @staticmethod
vllm/model_executor/layers/fused_moe/experts/trtllm_fp8_moe.py
+5 -7
@@ -277,13 +277,7 @@ class TrtLlmFp8ExpertsMonolithic(TrtLlmFp8ExpertsBase, mk.FusedMoEExpertsMonolit
277 weight_key: QuantKey | None,
278 activation_key: QuantKey | None,
279 ) -> bool:
280 - """Monolithic kernels need to express router support.
281 - Renormalize/RenormalizeNaive are excluded: the monolithic kernel's
282 - internal routing for these methods produces output uncorrelated
283 - with the modular kernel's output and with Triton kernel's output
284 - for Qwen3.5-35B-A3B-FP8.
285 - See: https://github.com/vllm-project/vllm/issues/37591
286 - """
280 + """Monolithic kernels need to express router support."""
281 # NOTE(dbari): TopK routing could also be enabled, but need to validate models
282 # NOTE(dbari): Default is not implemented and should not be enabled until it is
283
@@ -295,6 +289,8 @@ class TrtLlmFp8ExpertsMonolithic(TrtLlmFp8ExpertsBase, mk.FusedMoEExpertsMonolit
289 return routing_method in [
290 RoutingMethodType.DeepSeekV3,
291 RoutingMethodType.Simulated,
292 + RoutingMethodType.Renormalize,
293 + RoutingMethodType.RenormalizeNaive,
294 ]
295 elif (weight_key, activation_key) == (kFp8StaticTensorSym, kFp8StaticTensorSym):
296 # NOTE(dbari): as above, potentially allow others here.
@@ -302,6 +298,8 @@ class TrtLlmFp8ExpertsMonolithic(TrtLlmFp8ExpertsBase, mk.FusedMoEExpertsMonolit
298 RoutingMethodType.DeepSeekV3,
299 RoutingMethodType.Llama4,
300 RoutingMethodType.Simulated,
301 + RoutingMethodType.Renormalize,
302 + RoutingMethodType.RenormalizeNaive,
303 ]
304 else:
305 raise ValueError("Unsupported quantization scheme.")