已关闭
[Bug-Report|缺陷反馈]: quant_matmul_activation_quant部分shape下存在精度问题、aclnn中函数名拼写错误、校验缺失 #4891
十方君主创建于  20 天前关闭于  13 天前
十方君主
十方君主成员
20 天前 创建

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

Describe the current behavior / 问题描述 (Mandatory / 必填)

Ascend950 上 QuantMatmulActivationQuant 的 AscendC 实现存在以下几个问题:

  1. 在部分shape下,kernel中实际计算的块的baseN大小非32对齐,此时存在精度问题;
  2. bias是3维时,存在精度问题;
  3. aclnn_quant_matmul_activation_quant_weight_nz.cpp中函数名CheckOptioanlAlg()拼写错误;
  4. tiling中未使用的tiling结构体未删除;
  5. 架构校验缺失,aclnn中一些地方缺少使用前判空。

Environment / 环境信息 (Mandatory / 必填)

  • Hardware: Ascend950
  • Repository/branch: cann/ops-nn master,matmul/quant_matmul_activation_quant
  • Dtypes: E4M3

Steps to reproduce the issue / 重现步骤 (Mandatory / 必填)

切换到master分支,涉及到的文件如下:

  • matmul/quant_batch_matmul_v3/op_host/op_tiling/arch35/adaptive_sliding_window_tiling.h
  • matmul/quant_matmul_activation_quant/op_api/aclnn_quant_matmul_activation_quant_weight_nz.cpp
  • matmul/quant_matmul_activation_quant/op_host/op_tiling/quant_matmul_activation_quant_helper.cpp
  • matmul/quant_matmul_activation_quant/op_host/op_tiling/quant_matmul_activation_quant_helper.h
  • matmul/quant_matmul_activation_quant/op_host/op_tiling/quant_matmul_activation_quant_mx_tiling.cpp
  • matmul/quant_matmul_activation_quant/op_kernel/arch35/quant_matmul_activation_quant_tiling_data.h

Describe the expected behavior / 预期结果 (Mandatory / 必填)

  1. 在问题shape下,kernel中实际计算的块的baseN满足32对齐;
  2. bias是3维时精度没有问题;
  3. aclnn_quant_matmul_activation_quant_weight_nz.cpp中函数名拼写正确;
  4. 删除tiling中未使用的tiling结构体;
  5. 补充架构校验和使用前判空。

参考已合入 master 的 PR:
add quantmatmulactivationquant

Special notes for this issue/备注 (Optional / 选填)

likedislike
十方君主十方君主成员
20 天前 添加了label:bug-report
yuning_chenyuning_chen成员
20 天前 将 pan_yao 设为负责人
CANN-robotCANN-robot成员
13 天前 关闭了 issue
CANN-robotCANN-robot成员
13 天前 添加了label:resolved