Prhub

#44122 [Refactor] Remove dead code fp quant

原始 PR 作者 yewentao256 合并时间 2026-06-04 02:22 文件变更 1 提交数 2 评论 0 代码增减 +0 / -21

执行摘要

移除 FPQuant 中的死代码

根据 PR 标题和 body,目的是清理不再使用的代码(dead code),提升代码可维护性。

建议合并,属于常规代码清理,无技术风险,有助于保持代码库整洁。

讨论亮点

该 PR 没有 review 评论,仅获得一名 reviewer 的 Approval,表明变更清晰无争议。

实现拆解

  1. 核心源码路径
    - vllm/model_executor/layers/quantization/fp_quant.py(data-contract):源码主路径;包含 控制流调整、配置键调整、异常路径调整;+0/-21
文件 模块 状态 重要度
vllm/model_executor/layers/quantization/fp_quant.py 量化层 modified 6.78

关键源码片段

vllm/model_executor/layers/quantization/fp_quant.py data-contract

移除了 `pseudoquantization` 参数及其配置解析逻辑,以及 `backward_hadamard_matrix` 权重注册。

class FPQuantConfig(QuantizationConfig):
    """Config class for FPQuant."""
    # 移除 pseudoquantization 参数,该参数始终为 False 且对应 ValueError 分支已删除
    def __init__(
        self,
        hadamard_group_size: int = 32,
        forward_dtype: str = "mxfp4",
        forward_method: str = "abs_max",
        modules_to_not_convert: list[str] | None = None,
    ) -> None:
        super().__init__()
        self.hadamard_group_size = hadamard_group_size
        self.forward_dtype = forward_dtype
        self.forward_method = forward_method
        self.modules_to_not_convert = modules_to_not_convert
        # 原 pseudoquantization 检查已被移除,因为该功能从未被使用class FPQuantLinearMethod(LinearMethodBase):
    # ...
    def create_weights(self, layer, input_size_per_partition, output_partition_sizes, ...):
        # ...
        layer.register_parameter("forward_hadamard_matrix", forward_hadamard_matrix)
        # backward_hadamard_matrix 已移除,因为其在 forward 中从未被使用
        # layer.register_parameter("backward_hadamard_matrix", backward_hadamard_matrix) # 已删除

评论区精华

没有提炼出高价值讨论线程

当前评论区没有形成足够清晰的争议点或结论,后续有更多讨论时会体现在这里。

风险与影响

风险极低。移除的参数和权重在代码中已无实际使用路径,且通过移除 pseudoquantization 检查(原为立即 raise ValueError)进一步清理了死分支。但需确认无下游代码隐性依赖 backward_hadamard_matrix 属性。

影响范围仅限 FPQuantConfigFPQuantLinearMethod 类的内部实现,外部调用者不受影响,因为移除的均为内部未使用字段。

关联 Issue

未识别关联 Issue

当前没有检测到明确关联的 Issue 链接,后续同步到相关引用后会出现在这里。

完整报告

参与讨论