---
id: pr-tensorrt-llm-11897
repo: NVIDIA/TensorRT-LLM
pr: 11897
title: '[TRTLLM-10990][feat] Fuse SwiGLU and quant into shared expert'
author: peaceh-nv
date: '2026-05-07'
url: https://github.com/NVIDIA/TensorRT-LLM/pull/11897
source_category: upstream-code
architectures:
- sm100
tags:
- arch_pipeline
- blackwell
- compiler_runtime
- cute dsl
- fp4
- gemm_quant
- moe_routing
- norm_elementwise
- nvfp4
techniques:
- fine-grained-quantization
- kernel-fusion
- pipeline-stages
hardware_features:
- blackwell
- fp4
- nvfp4
kernel_types:
- compiler
- gemm
- moe
- norm
- runtime
languages:
- cuda-cpp
- cute-dsl
captured_at: '2026-05-16'
status: merged
merge_sha: 0d32e49ad6529ded6d61560dceabd171c5cfd4b5
inclusion_reason: Inspect scale layout, accumulator type, tile/schedule choice, epilogue fusion, and partial-tile guards before deriving a candidate.
changed_paths:
- tensorrt_llm/_torch/custom_ops/__init__.py
- tensorrt_llm/_torch/custom_ops/cute_dsl_custom_ops.py
- tensorrt_llm/_torch/cute_dsl_kernels/blackwell/dense_blockscaled_gemm_swiglu_fusion.py
- tensorrt_llm/_torch/modules/fused_moe/fused_moe_densegemm.py
- tensorrt_llm/_torch/modules/gated_mlp.py
- tensorrt_llm/_torch/modules/linear.py
- tests/integration/defs/accuracy/test_llm_api_pytorch.py
- tests/integration/test_lists/qa/llm_function_core.txt
- tests/scripts/cute_dsl_kernels/run_dense_blockscaled_gemm_swiglu_fusion.py
- tests/unittest/_torch/thop/parallel/test_moe_densegemm.py
artifact_dir: evidence/pull-bundles/tensorrt-llm/gh-11897
head_ref_oid: e895e3abf6a85cbabb62e4a1eebb4f28e7acf595
---
# [TRTLLM-10990][feat] Fuse SwiGLU and quant into shared expert

- Repository: `NVIDIA/TensorRT-LLM`
- PR: [11897](https://github.com/NVIDIA/TensorRT-LLM/pull/11897)
- 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

- `tensorrt_llm/_torch/custom_ops/__init__.py`
- `tensorrt_llm/_torch/custom_ops/cute_dsl_custom_ops.py`
- `tensorrt_llm/_torch/cute_dsl_kernels/blackwell/dense_blockscaled_gemm_swiglu_fusion.py`
- `tensorrt_llm/_torch/modules/fused_moe/fused_moe_densegemm.py`
- `tensorrt_llm/_torch/modules/gated_mlp.py`
- `tensorrt_llm/_torch/modules/linear.py`
- `tests/integration/defs/accuracy/test_llm_api_pytorch.py`
- `tests/integration/test_lists/qa/llm_function_core.txt`
- `tests/scripts/cute_dsl_kernels/run_dense_blockscaled_gemm_swiglu_fusion.py`
- `tests/unittest/_torch/thop/parallel/test_moe_densegemm.py`

## Evidence Bundle

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