---
id: pr-vllm-30014
repo: vllm-project/vllm
pr: 30014
title: '[Perf] Do FP4 quant before All gather on flashinfer trtllmgen MOE '
author: jiahanc
date: '2025-12-16'
url: https://github.com/vllm-project/vllm/pull/30014
source_category: upstream-code
architectures:
- sm100
tags:
- fp4
- kernel-fusion
- moe
- quantization
techniques:
- kernel-fusion
hardware_features:
- fp4
kernel_types:
- moe
- quantization
languages:
- cuda-cpp
captured_at: '2026-04-27'
status: merged
merge_sha: 254a7f8fd613d6b6964abc277b73ca1f0b823cdb
inclusion_reason: kernel file changes
changed_paths:
- vllm/distributed/device_communicators/all2all.py
- vllm/distributed/device_communicators/base_device_communicator.py
- vllm/distributed/device_communicators/cuda_communicator.py
- vllm/distributed/parallel_state.py
- vllm/model_executor/layers/fused_moe/fused_moe_method_base.py
- vllm/model_executor/layers/fused_moe/layer.py
- vllm/model_executor/layers/quantization/modelopt.py
- vllm/model_executor/layers/quantization/utils/flashinfer_fp4_moe.py
- vllm/utils/flashinfer.py
head_ref_oid: 15f9155a1dcb4c6ecbfd2c42033ea6d44437e282
artifact_dir: evidence/pull-bundles/vllm/gh-30014
---
# [Perf] Do FP4 quant before All gather on flashinfer trtllmgen MOE 

- Repository: `vllm-project/vllm`
- PR: [30014](https://github.com/vllm-project/vllm/pull/30014)
- Decision: `kernel file changes`
- Reason: kernel file changes

## Changed Paths

- `vllm/distributed/device_communicators/all2all.py`
- `vllm/distributed/device_communicators/base_device_communicator.py`
- `vllm/distributed/device_communicators/cuda_communicator.py`
- `vllm/distributed/parallel_state.py`
- `vllm/model_executor/layers/fused_moe/fused_moe_method_base.py`
- `vllm/model_executor/layers/fused_moe/layer.py`
- `vllm/model_executor/layers/quantization/modelopt.py`
- `vllm/model_executor/layers/quantization/utils/flashinfer_fp4_moe.py`
- `vllm/utils/flashinfer.py`

## Evidence Bundle

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