已关闭
[Requirement|需求建议]: 支持 QuantMatmul 动态 T-C 量化 bias #3975
ddssz创建于  7月9日关闭于  7月13日
ddssz
ddssz成员
7月9日 创建

Thanks for sending an requirement! Please fill in the following template to help quickly solve your problem.

Backgroud(背景信息)

当前 aclnnQuantMatmulV5 在 Ascend950 动态 T-C 量化场景下,FLOAT8_E4M3FN、FLOAT8_E5M2、HIFLOAT8 输入配合 FLOAT x1Scale/x2Scale 时,checker 会限制 bias 必须为空。文档中也存在“动态T-C量化场景下,不支持bias”的说明。

本需求希望放开该限制,使动态 T-C 量化场景可以传入 FLOAT bias,并与接口数据类型组合表中 bias 支持 null/FLOAT32 的能力保持一致。

Origin(信息来源)

对应 PR:https://gitcode.com/cann/ops-nn/pull/7259
对应提交:40bda3f35b227c80a0468a2a922afd43b7e83d51

涉及文件:

  • matmul/quant_batch_matmul_v3/op_api/quant_matmul_checker.cpp
  • matmul/quant_batch_matmul_v3/op_host/op_tiling/arch35/quant_batch_matmul_v3_checker.cpp
  • matmul/quant_batch_matmul_v4/docs/aclnnQuantMatmulV5.md
  • matmul/quant_batch_matmul_v4/tests/ut/op_host/test_aclnn_quant_matmul_v5_api.csv

Benefit / Necessity (价值/作用)

放开 FLOAT bias 后,动态 T-C 量化可以支持需要 bias 的 QuantMatmul V5 使用场景,覆盖 FP8/HIF8 输入下的推理计算诉求,同时消除代码校验、文档约束与类型组合表之间的不一致。

该改动只删除动态 T-C 场景下的 bias 空值限制,仍保留 bias dtype 校验,风险范围集中在 QuantMatmul V5 FP8/HIF8 动态 T-C + FLOAT bias 场景。

Design(设计方案)

  1. 删除 QuantMatmulChecker::CheckDoubleScaleAndFp8Hif8PertokenPerblock 中动态 T-C 场景要求 bias 必须为空的检查,保留 bias dtype 必须为 FLOAT 的校验。
  2. 删除 QuantBatchMatmulV3Checker::BiasShapeCheck 中同一动态 T-C 组合下的 bias 空值限制。
  3. 更新 aclnnQuantMatmulV5.md,删除“动态T-C量化场景下,不支持bias”的限制说明。
  4. 在 V5 API UT CSV 中新增 3 个 Ascend950 成功用例,覆盖 FLOAT8_E4M3FN、FLOAT8_E5M2、HIFLOAT8 动态 T-C + FLOAT bias,期望返回 ACLNN_SUCCESS。
likedislike
ddsszddssz成员
7月9日 添加了label:requirement
ddssz
ddssz成员
7月9日 评论:

/assign

likedislike
CANN-robotCANN-robot成员
7月9日 将 smdbha 设为负责人
ddsszddssz成员
7月9日 修改标题为 “[Requirement|需求建议]: 支持 QuantMatmul 动态 T-C 量化 bias”,原标题为“[Requirement|需求建议]: 1”
ddsszddssz成员
7月9日 修改了issue 的描述
CANN-robotCANN-robot成员
7月13日 关闭了 issue
CANN-robotCANN-robot成员
7月13日 添加了label:resolved