---
id: pr-vllm-22035
repo: vllm-project/vllm
pr: 22035
title: '[Kernels] Clean up FusedMoeMethodBase and modular kernel setup.  Remove extra arguments from modular kernel methods.'
author: bnellnm
date: '2025-08-15'
url: https://github.com/vllm-project/vllm/pull/22035
source_category: upstream-code
architectures:
- sm100
tags: []
techniques: []
hardware_features: []
kernel_types: []
languages: []
captured_at: '2026-05-16'
status: merged
merge_sha: 8ad7285ea28ad3bcc898fa99812120bcda8ea7b4
inclusion_reason: defer
changed_paths:
- .buildkite/test-pipeline.yaml
- docs/design/fused_moe_modular_kernel.md
- examples/offline_inference/data_parallel.py
- tests/kernels/moe/modular_kernel_tools/common.py
- tests/kernels/moe/modular_kernel_tools/mk_objects.py
- tests/kernels/moe/modular_kernel_tools/profile_modular_kernel.py
- tests/kernels/moe/modular_kernel_tools/utils.py
- tests/kernels/moe/test_batched_moe.py
- tests/kernels/moe/test_block_fp8.py
- tests/kernels/moe/test_block_int8.py
- tests/kernels/moe/test_cutlass_grouped_gemm.py
- tests/kernels/moe/test_deepep_deepgemm_moe.py
- tests/kernels/moe/test_deepgemm.py
- tests/kernels/moe/test_flashinfer_moe.py
- tests/kernels/moe/test_modular_kernel_combinations.py
- tests/kernels/moe/test_nvfp4_moe.py
- tests/kernels/moe/test_pplx_cutlass_moe.py
- tests/kernels/moe/test_pplx_moe.py
- tests/kernels/moe/utils.py
- vllm/distributed/device_communicators/base_device_communicator.py
- vllm/model_executor/layers/fused_moe/__init__.py
- vllm/model_executor/layers/fused_moe/batched_deep_gemm_moe.py
- vllm/model_executor/layers/fused_moe/batched_triton_or_deep_gemm_moe.py
- vllm/model_executor/layers/fused_moe/config.py
- vllm/model_executor/layers/fused_moe/cutlass_moe.py
- vllm/model_executor/layers/fused_moe/deep_gemm_moe.py
- vllm/model_executor/layers/fused_moe/deepep_ht_prepare_finalize.py
- vllm/model_executor/layers/fused_moe/deepep_ll_prepare_finalize.py
- vllm/model_executor/layers/fused_moe/flashinfer_cutlass_moe.py
- vllm/model_executor/layers/fused_moe/flashinfer_cutlass_prepare_finalize.py
- vllm/model_executor/layers/fused_moe/fused_batched_moe.py
- vllm/model_executor/layers/fused_moe/fused_moe.py
- vllm/model_executor/layers/fused_moe/gpt_oss_triton_kernels_moe.py
- vllm/model_executor/layers/fused_moe/layer.py
- vllm/model_executor/layers/fused_moe/modular_kernel.py
- vllm/model_executor/layers/fused_moe/pplx_prepare_finalize.py
- vllm/model_executor/layers/fused_moe/prepare_finalize.py
- vllm/model_executor/layers/fused_moe/triton_deep_gemm_moe.py
- vllm/model_executor/layers/fused_moe/utils.py
- vllm/model_executor/layers/quantization/auto_round.py
- vllm/model_executor/layers/quantization/awq.py
- vllm/model_executor/layers/quantization/awq_marlin.py
- vllm/model_executor/layers/quantization/bitsandbytes.py
- vllm/model_executor/layers/quantization/compressed_tensors/compressed_tensors_moe.py
- vllm/model_executor/layers/quantization/experts_int8.py
- vllm/model_executor/layers/quantization/fp8.py
- vllm/model_executor/layers/quantization/gguf.py
- vllm/model_executor/layers/quantization/gptq_marlin.py
- vllm/model_executor/layers/quantization/modelopt.py
- vllm/model_executor/layers/quantization/moe_wna16.py
- vllm/model_executor/layers/quantization/mxfp4.py
- vllm/model_executor/layers/quantization/quark/quark_moe.py
- vllm/model_executor/layers/quantization/rtn.py
- vllm/model_executor/layers/quantization/utils/flashinfer_fp4_moe.py
artifact_dir: evidence/pull-bundles/vllm/gh-22035
head_ref_oid: 13ba1b10c6b760c06322f43e1d7f289b312b1795
---
# [Kernels] Clean up FusedMoeMethodBase and modular kernel setup.  Remove extra arguments from modular kernel methods.

- Repository: `vllm-project/vllm`
- PR: [22035](https://github.com/vllm-project/vllm/pull/22035)
- Decision: `defer`
- Reason: defer

## Changed Paths

- `.buildkite/test-pipeline.yaml`
- `docs/design/fused_moe_modular_kernel.md`
- `examples/offline_inference/data_parallel.py`
- `tests/kernels/moe/modular_kernel_tools/common.py`
- `tests/kernels/moe/modular_kernel_tools/mk_objects.py`
- `tests/kernels/moe/modular_kernel_tools/profile_modular_kernel.py`
- `tests/kernels/moe/modular_kernel_tools/utils.py`
- `tests/kernels/moe/test_batched_moe.py`
- `tests/kernels/moe/test_block_fp8.py`
- `tests/kernels/moe/test_block_int8.py`
- `tests/kernels/moe/test_cutlass_grouped_gemm.py`
- `tests/kernels/moe/test_deepep_deepgemm_moe.py`
- `tests/kernels/moe/test_deepgemm.py`
- `tests/kernels/moe/test_flashinfer_moe.py`
- `tests/kernels/moe/test_modular_kernel_combinations.py`
- `tests/kernels/moe/test_nvfp4_moe.py`
- `tests/kernels/moe/test_pplx_cutlass_moe.py`
- `tests/kernels/moe/test_pplx_moe.py`
- `tests/kernels/moe/utils.py`
- `vllm/distributed/device_communicators/base_device_communicator.py`
- `vllm/model_executor/layers/fused_moe/__init__.py`
- `vllm/model_executor/layers/fused_moe/batched_deep_gemm_moe.py`
- `vllm/model_executor/layers/fused_moe/batched_triton_or_deep_gemm_moe.py`
- `vllm/model_executor/layers/fused_moe/config.py`
- `vllm/model_executor/layers/fused_moe/cutlass_moe.py`
- `vllm/model_executor/layers/fused_moe/deep_gemm_moe.py`
- `vllm/model_executor/layers/fused_moe/deepep_ht_prepare_finalize.py`
- `vllm/model_executor/layers/fused_moe/deepep_ll_prepare_finalize.py`
- `vllm/model_executor/layers/fused_moe/flashinfer_cutlass_moe.py`
- `vllm/model_executor/layers/fused_moe/flashinfer_cutlass_prepare_finalize.py`
- `vllm/model_executor/layers/fused_moe/fused_batched_moe.py`
- `vllm/model_executor/layers/fused_moe/fused_moe.py`
- `vllm/model_executor/layers/fused_moe/gpt_oss_triton_kernels_moe.py`
- `vllm/model_executor/layers/fused_moe/layer.py`
- `vllm/model_executor/layers/fused_moe/modular_kernel.py`
- `vllm/model_executor/layers/fused_moe/pplx_prepare_finalize.py`
- `vllm/model_executor/layers/fused_moe/prepare_finalize.py`
- `vllm/model_executor/layers/fused_moe/triton_deep_gemm_moe.py`
- `vllm/model_executor/layers/fused_moe/utils.py`
- `vllm/model_executor/layers/quantization/auto_round.py`
- `vllm/model_executor/layers/quantization/awq.py`
- `vllm/model_executor/layers/quantization/awq_marlin.py`
- `vllm/model_executor/layers/quantization/bitsandbytes.py`
- `vllm/model_executor/layers/quantization/compressed_tensors/compressed_tensors_moe.py`
- `vllm/model_executor/layers/quantization/experts_int8.py`
- `vllm/model_executor/layers/quantization/fp8.py`
- `vllm/model_executor/layers/quantization/gguf.py`
- `vllm/model_executor/layers/quantization/gptq_marlin.py`
- `vllm/model_executor/layers/quantization/modelopt.py`
- `vllm/model_executor/layers/quantization/moe_wna16.py`
- `vllm/model_executor/layers/quantization/mxfp4.py`
- `vllm/model_executor/layers/quantization/quark/quark_moe.py`
- `vllm/model_executor/layers/quantization/rtn.py`
- `vllm/model_executor/layers/quantization/utils/flashinfer_fp4_moe.py`

## Evidence Bundle

`evidence/pull-bundles/vllm/gh-22035`
