---
id: pr-tensorrt-llm-12320
repo: NVIDIA/TensorRT-LLM
pr: 12320
title: '[None][feat] Support update weight for nvfp4'
author: shuyixiong
date: '2026-05-02'
url: https://github.com/NVIDIA/TensorRT-LLM/pull/12320
source_category: upstream-code
architectures:
- sm100
tags:
- cutlass
- gemm_quant
- nvfp4
- trtllmgen
techniques:
- fine-grained-quantization
- kernel-fusion
hardware_features:
- fp4
- nvfp4
kernel_types:
- attention
- gemm
- moe
languages:
- cuda-cpp
- cute-dsl
captured_at: '2026-05-16'
status: merged
merge_sha: 2a87087384e0dd0dc204034389f87d49b169b703
inclusion_reason: Inspect scale layout, accumulator type, tile/schedule choice, epilogue fusion, and partial-tile guards before deriving a candidate.
changed_paths:
- cpp/tensorrt_llm/kernels/cutlass_kernels/include/moe_kernels.h
- cpp/tensorrt_llm/kernels/cutlass_kernels/moe_gemm/moe_kernels.cu
- cpp/tensorrt_llm/thop/moeOp.cpp
- tensorrt_llm/_torch/custom_ops/torch_custom_ops.py
- tensorrt_llm/_torch/model_config.py
- tensorrt_llm/_torch/models/checkpoints/hf/qwen3_next_weight_mapper.py
- tensorrt_llm/_torch/models/checkpoints/hf/weight_mapper.py
- tensorrt_llm/_torch/modules/attention.py
- tensorrt_llm/_torch/modules/fused_moe/fused_moe_cutlass.py
- tensorrt_llm/_torch/modules/fused_moe/interface.py
- tensorrt_llm/_torch/modules/fused_moe/ops/moe_op_cutlass.py
- tensorrt_llm/_torch/modules/fused_moe/quantization.py
- tensorrt_llm/_torch/modules/linear.py
- tensorrt_llm/llmapi/llm_utils.py
- tests/unittest/_torch/modules/moe/test_moe_backend.py
- tests/unittest/_torch/ray_orchestrator/multi_gpu/test_llm_update_weights_multi_gpu.py
artifact_dir: evidence/pull-bundles/tensorrt-llm/gh-12320
head_ref_oid: 18d1db755d48ad6a69ff30eb03756749d07a4e18
---
# [None][feat] Support update weight for nvfp4

- Repository: `NVIDIA/TensorRT-LLM`
- PR: [12320](https://github.com/NVIDIA/TensorRT-LLM/pull/12320)
- Decision: `Inspect scale layout, accumulator type, tile/schedule choice, epilogue fusion, and partial-tile guards before deriving a candidate.`
- Reason: Inspect scale layout, accumulator type, tile/schedule choice, epilogue fusion, and partial-tile guards before deriving a candidate.

## Changed Paths

- `cpp/tensorrt_llm/kernels/cutlass_kernels/include/moe_kernels.h`
- `cpp/tensorrt_llm/kernels/cutlass_kernels/moe_gemm/moe_kernels.cu`
- `cpp/tensorrt_llm/thop/moeOp.cpp`
- `tensorrt_llm/_torch/custom_ops/torch_custom_ops.py`
- `tensorrt_llm/_torch/model_config.py`
- `tensorrt_llm/_torch/models/checkpoints/hf/qwen3_next_weight_mapper.py`
- `tensorrt_llm/_torch/models/checkpoints/hf/weight_mapper.py`
- `tensorrt_llm/_torch/modules/attention.py`
- `tensorrt_llm/_torch/modules/fused_moe/fused_moe_cutlass.py`
- `tensorrt_llm/_torch/modules/fused_moe/interface.py`
- `tensorrt_llm/_torch/modules/fused_moe/ops/moe_op_cutlass.py`
- `tensorrt_llm/_torch/modules/fused_moe/quantization.py`
- `tensorrt_llm/_torch/modules/linear.py`
- `tensorrt_llm/llmapi/llm_utils.py`
- `tests/unittest/_torch/modules/moe/test_moe_backend.py`
- `tests/unittest/_torch/ray_orchestrator/multi_gpu/test_llm_update_weights_multi_gpu.py`

## Evidence Bundle

`evidence/pull-bundles/tensorrt-llm/gh-12320`
