---
id: pr-flashinfer-2398
repo: flashinfer-ai/flashinfer
pr: 2398
title: 'feat: cuteDSL fp4 moe for better DSR1 performance.'
author: nv-yunzheq
date: '2026-02-07'
url: https://github.com/flashinfer-ai/flashinfer/pull/2398
source_category: upstream-code
architectures:
- sm100
tags:
- fp4
- gemm
- grouped-gemm
- kernel-fusion
- moe
- pipeline-stages
techniques:
- kernel-fusion
- pipeline-stages
hardware_features:
- fp4
kernel_types:
- gemm
- grouped-gemm
- moe
languages:
- cuda-cpp
- cute-dsl
captured_at: '2026-04-27'
status: merged
merge_sha: 99562e5eeaa26b08ba5e514bfe22d84404390ca6
inclusion_reason: kernel file changes
changed_paths:
- benchmarks/bench_moe_deepseek.py
- csrc/moe_utils_binding.cu
- csrc/nv_internal/include/tensorrt_llm/common/config.h
- csrc/nv_internal/tensorrt_llm/kernels/cuteDslKernels/moeUtils.cu
- csrc/nv_internal/tensorrt_llm/kernels/cuteDslKernels/moeUtils.h
- csrc/nv_internal/tensorrt_llm/kernels/cutlass_kernels/moe_gemm/moe_kernels.cuh
- flashinfer/__init__.py
- flashinfer/cute_dsl/__init__.py
- flashinfer/cute_dsl/utils.py
- flashinfer/fused_moe/__init__.py
- flashinfer/fused_moe/cute_dsl/__init__.py
- flashinfer/fused_moe/cute_dsl/blackwell/__init__.py
- flashinfer/fused_moe/cute_dsl/blackwell/blockscaled_contiguous_gather_grouped_gemm_swiglu_fusion.py
- flashinfer/fused_moe/cute_dsl/blackwell/blockscaled_contiguous_grouped_gemm.py
- flashinfer/fused_moe/cute_dsl/blackwell/blockscaled_contiguous_grouped_gemm_finalize_fusion.py
- flashinfer/fused_moe/cute_dsl/blackwell/blockscaled_contiguous_grouped_gemm_swiglu_fusion.py
- flashinfer/fused_moe/cute_dsl/blackwell/custom_pipeline.py
- flashinfer/fused_moe/cute_dsl/blackwell/utils.py
- flashinfer/fused_moe/cute_dsl/blockscaled_contiguous_gather_grouped_gemm_swiglu_fusion.py
- flashinfer/fused_moe/cute_dsl/blockscaled_contiguous_grouped_gemm.py
- flashinfer/fused_moe/cute_dsl/blockscaled_contiguous_grouped_gemm_finalize_fusion.py
- flashinfer/fused_moe/cute_dsl/blockscaled_contiguous_grouped_gemm_swiglu_fusion.py
- flashinfer/fused_moe/cute_dsl/fused_moe.py
- flashinfer/fused_moe/cute_dsl/moe_utils.py
- flashinfer/fused_moe/cute_dsl/tuner.py
- flashinfer/gemm/kernels/grouped_gemm_masked_blackwell.py
- flashinfer/jit/__init__.py
- flashinfer/jit/moe_utils.py
- tests/moe/__init__.py
- tests/moe/test_cute_dsl_fused_moe.py
head_ref_oid: 0c2582dc12ca3ad40241a626a0b0c4fdef52df89
artifact_dir: evidence/pull-bundles/flashinfer/gh-2398
---
# feat: cuteDSL fp4 moe for better DSR1 performance.

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

## Changed Paths

- `benchmarks/bench_moe_deepseek.py`
- `csrc/moe_utils_binding.cu`
- `csrc/nv_internal/include/tensorrt_llm/common/config.h`
- `csrc/nv_internal/tensorrt_llm/kernels/cuteDslKernels/moeUtils.cu`
- `csrc/nv_internal/tensorrt_llm/kernels/cuteDslKernels/moeUtils.h`
- `csrc/nv_internal/tensorrt_llm/kernels/cutlass_kernels/moe_gemm/moe_kernels.cuh`
- `flashinfer/__init__.py`
- `flashinfer/cute_dsl/__init__.py`
- `flashinfer/cute_dsl/utils.py`
- `flashinfer/fused_moe/__init__.py`
- `flashinfer/fused_moe/cute_dsl/__init__.py`
- `flashinfer/fused_moe/cute_dsl/blackwell/__init__.py`
- `flashinfer/fused_moe/cute_dsl/blackwell/blockscaled_contiguous_gather_grouped_gemm_swiglu_fusion.py`
- `flashinfer/fused_moe/cute_dsl/blackwell/blockscaled_contiguous_grouped_gemm.py`
- `flashinfer/fused_moe/cute_dsl/blackwell/blockscaled_contiguous_grouped_gemm_finalize_fusion.py`
- `flashinfer/fused_moe/cute_dsl/blackwell/blockscaled_contiguous_grouped_gemm_swiglu_fusion.py`
- `flashinfer/fused_moe/cute_dsl/blackwell/custom_pipeline.py`
- `flashinfer/fused_moe/cute_dsl/blackwell/utils.py`
- `flashinfer/fused_moe/cute_dsl/blockscaled_contiguous_gather_grouped_gemm_swiglu_fusion.py`
- `flashinfer/fused_moe/cute_dsl/blockscaled_contiguous_grouped_gemm.py`
- `flashinfer/fused_moe/cute_dsl/blockscaled_contiguous_grouped_gemm_finalize_fusion.py`
- `flashinfer/fused_moe/cute_dsl/blockscaled_contiguous_grouped_gemm_swiglu_fusion.py`
- `flashinfer/fused_moe/cute_dsl/fused_moe.py`
- `flashinfer/fused_moe/cute_dsl/moe_utils.py`
- `flashinfer/fused_moe/cute_dsl/tuner.py`
- `flashinfer/gemm/kernels/grouped_gemm_masked_blackwell.py`
- `flashinfer/jit/__init__.py`
- `flashinfer/jit/moe_utils.py`
- `tests/moe/__init__.py`
- `tests/moe/test_cute_dsl_fused_moe.py`

## Evidence Bundle

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