Files
nvfp4-megamoe-kernel/vllm
biondizzle b497b35a10 fix: dynamic activation quantization (quantize_to_nvfp4) + per-expert scale assembly
The checkpoint input_scale was a calibration value that doesn't match
runtime input magnitudes. This caused all block scales to saturate at
float8_e4m3fn max (448.0), producing garbage output.

Fix: use quantize_to_nvfp4 (computes global_scale from input amax) and
assemble_scales_2d_side (per-expert split, matches working layertest).

This breaks cudagraph (has .max() and .tolist() in forward). Will
re-enable cudagraph later with a warmup-based caching approach.
2026-05-17 06:06:10 +00:00
..