---
id: pr-flashinfer-2159
repo: flashinfer-ai/flashinfer
pr: 2159
title: 'feat: MxInt4 x Bf16 TRT-LLM Gen MoE support'
author: nekorobov
date: '2025-12-05'
url: https://github.com/flashinfer-ai/flashinfer/pull/2159
source_category: upstream-code
architectures:
- sm100
tags:
- fp4
- gemm
- kernel-fusion
- moe
- quantization
- tma
techniques:
- kernel-fusion
hardware_features:
- fp4
- tma
kernel_types:
- gemm
- moe
- quantization
languages:
- cuda-cpp
captured_at: '2026-04-27'
status: merged
merge_sha: 6930085e116e32b5dd612b40cd6c3e2bd97105e2
inclusion_reason: kernel file changes
changed_paths:
- csrc/nv_internal/cpp/kernels/quantization.cu
- csrc/nv_internal/tensorrt_llm/kernels/quantization.h
- csrc/nv_internal/tensorrt_llm/thop/fp4Op.cpp
- csrc/trtllm_fused_moe_kernel_launcher.cu
- flashinfer/artifacts.py
- flashinfer/fp4_quantization.py
- flashinfer/fused_moe/__init__.py
- flashinfer/fused_moe/core.py
- flashinfer/utils.py
- include/flashinfer/trtllm/batched_gemm/trtllmGen_bmm_export/BatchedGemmInterface.h
- include/flashinfer/trtllm/batched_gemm/trtllmGen_bmm_export/BatchedGemmOptions.h
- include/flashinfer/trtllm/batched_gemm/trtllmGen_bmm_export/Enums.h
- include/flashinfer/trtllm/batched_gemm/trtllmGen_bmm_export/GemmGatedActOptions.h
- include/flashinfer/trtllm/batched_gemm/trtllmGen_bmm_export/GemmOptions.h
- include/flashinfer/trtllm/batched_gemm/trtllmGen_bmm_export/KernelParams.h
- include/flashinfer/trtllm/batched_gemm/trtllmGen_bmm_export/KernelTraits.h
- include/flashinfer/trtllm/batched_gemm/trtllmGen_bmm_export/TmaDescriptor.h
- include/flashinfer/trtllm/batched_gemm/trtllmGen_bmm_export/trtllm/gen/CudaArchDecl.h
- include/flashinfer/trtllm/batched_gemm/trtllmGen_bmm_export/trtllm/gen/DtypeDecl.h
- tests/moe/test_trtllm_gen_fused_moe.py
- tests/moe/utils.py
head_ref_oid: a5b7681436137777747aeb9e0cb80e27e6b6a467
artifact_dir: evidence/pull-bundles/flashinfer/gh-2159
---
# feat: MxInt4 x Bf16 TRT-LLM Gen MoE support

- Repository: `flashinfer-ai/flashinfer`
- PR: [2159](https://github.com/flashinfer-ai/flashinfer/pull/2159)
- Decision: `kernel file changes`
- Reason: kernel file changes

## Changed Paths

- `csrc/nv_internal/cpp/kernels/quantization.cu`
- `csrc/nv_internal/tensorrt_llm/kernels/quantization.h`
- `csrc/nv_internal/tensorrt_llm/thop/fp4Op.cpp`
- `csrc/trtllm_fused_moe_kernel_launcher.cu`
- `flashinfer/artifacts.py`
- `flashinfer/fp4_quantization.py`
- `flashinfer/fused_moe/__init__.py`
- `flashinfer/fused_moe/core.py`
- `flashinfer/utils.py`
- `include/flashinfer/trtllm/batched_gemm/trtllmGen_bmm_export/BatchedGemmInterface.h`
- `include/flashinfer/trtllm/batched_gemm/trtllmGen_bmm_export/BatchedGemmOptions.h`
- `include/flashinfer/trtllm/batched_gemm/trtllmGen_bmm_export/Enums.h`
- `include/flashinfer/trtllm/batched_gemm/trtllmGen_bmm_export/GemmGatedActOptions.h`
- `include/flashinfer/trtllm/batched_gemm/trtllmGen_bmm_export/GemmOptions.h`
- `include/flashinfer/trtllm/batched_gemm/trtllmGen_bmm_export/KernelParams.h`
- `include/flashinfer/trtllm/batched_gemm/trtllmGen_bmm_export/KernelTraits.h`
- `include/flashinfer/trtllm/batched_gemm/trtllmGen_bmm_export/TmaDescriptor.h`
- `include/flashinfer/trtllm/batched_gemm/trtllmGen_bmm_export/trtllm/gen/CudaArchDecl.h`
- `include/flashinfer/trtllm/batched_gemm/trtllmGen_bmm_export/trtllm/gen/DtypeDecl.h`
- `tests/moe/test_trtllm_gen_fused_moe.py`
- `tests/moe/utils.py`

## Evidence Bundle

`evidence/pull-bundles/flashinfer/gh-2159`
