| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
docs: 更新Shrink/DataFormatDimMap/ActULQClampGrad README产品支持情况 Co-authored-by: Coder_Nerd<shishuai5@huawei.com> # message auto-generated for no-merge-commit merge: !9343 merge docs/heaviside-op-api-support into master docs: 更新Shrink/DataFormatDimMap/ActULQClampGrad README产品支持情况 Created-by: Coder_Nerd Commit-by: Coder_Nerd Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> Shrink/DataFormatDimMap/ActULQClampGrad README产品支持情况与实际支持情况不符合 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5255 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9343 | 16 天前 | |
docs: 更新Shrink/DataFormatDimMap/ActULQClampGrad README产品支持情况 Co-authored-by: Coder_Nerd<shishuai5@huawei.com> # message auto-generated for no-merge-commit merge: !9343 merge docs/heaviside-op-api-support into master docs: 更新Shrink/DataFormatDimMap/ActULQClampGrad README产品支持情况 Created-by: Coder_Nerd Commit-by: Coder_Nerd Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> Shrink/DataFormatDimMap/ActULQClampGrad README产品支持情况与实际支持情况不符合 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5255 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9343 | 16 天前 | |
acts_ulq算子readme修改 Co-authored-by: h1234515<huangzhiyuan21@huawei.com> # message auto-generated for no-merge-commit merge: !9212 merge acts_ulq_readme into master acts_ulq算子readme修改 Created-by: h1234515 Commit-by: h1234515 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修正 ActsUlq 算子 README 中关于 clamp_min/clamp_max 与 x shape 约束的描述。 原 README 将 clamp_min/clamp_max 描述为需要与 x 满足 broadcast 关系的张量、y 的 shape 为三者 broadcast 后的结果,与实际实现不符。实际实现中 clamp_min/clamp_max 为标量(shape 必须为 1),y 的 shape 与 x 一致,不存在 broadcast。本次按真实行为更正文档,避免误导用户。 具体改动: - 参数说明 x:删除"shape 需要与 clamp_min、clamp_max 满足 broadcast 关系",改为"shape 维度支持 0-8 维"。 - 参数说明 y:shape 由"x、clamp_min、clamp_max broadcast 后的结果 shape"改为"与 x 一致"。 - 约束说明:由"x、clamp_min、clamp_max 的 shape 需要满足 broadcast 关系"改为"clamp_min、clamp_max 的 shape 必须为 1(标量),x 的 shape 维度支持 0-8 维"。 - 同步更新 example(test_geir_acts_ulq.cpp)golden 注释:由"broadcast to all elements"改为"shape must be 1"。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5187 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9212 | 18 天前 | |
fix(proto): 统一 OPS_PROTO_DEF 去重宏保护格式 Co-authored-by: Coder_Nerd<shishuai5@huawei.com> # message auto-generated for no-merge-commit merge: !9265 merge docs/heaviside-op-api-support into master fix(proto): 统一 OPS_PROTO_DEF 去重宏保护格式 Created-by: Coder_Nerd Commit-by: Coder_Nerd Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 补充去重宏(2 个算子): - norm/bn_infer_grad:BNInferGrad 补充 OPS_PROTO_DEF_BNINFERGRAD - optim/fused_mul_apply_momentum:FusedMulApplyMomentum 补充 OPS_PROTO_DEF_FUSEDMULAPPLYMOMENTUM 清理格式(3 个算子): - quant/act_ulq_clamp_max_grad:移除去重宏内多余空行 - quant/act_ulq_clamp_min_grad:移除去重宏内多余空行 - quant/acts_ulq_input_grad:移除去重宏内多余空行 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5193 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9265 | 17 天前 | |
modify anti_mx_quant kernel ut Co-authored-by: pyq17870581669<pengyongqiang5@huawei.com> # message auto-generated for no-merge-commit merge: !9977 merge AntiMxQuant0907 into master modify anti_mx_quant kernel ut Created-by: pyq17870581669 Commit-by: pyq17870581669 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> kernel UT 零校验——输入未初始化、输出不校验,需要修改 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5610 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 本地UT测试 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!9977 | 5 天前 | |
将norm,quant目录下 MicroAPI 命名空间统一替换为 Reg Co-authored-by: m0_71149169<1907825139@qq.com> # message auto-generated for no-merge-commit merge: !9291 merge norm-quant-microapi-to-reg into master 将norm,quant目录下 MicroAPI 命名空间统一替换为 Reg Created-by: m0_71149169 Commit-by: m0_71149169 Merged-by: cann-robot Description: ## 描述 MicroAPI → Reg 命名空间迁移: norm,quant CANN 头文件 kernel_macros.h 中存在命名空间别名 namespace MicroAPI = Reg;,MicroAPI 只是 Reg 的别名。为统一命名规范,将 nn 仓所有算子 kernel 代码中的 MicroAPI 替换为 Reg,并通过对比替换前后 binary .o 文件 MD5 验证替换无影响。 覆盖范围 - nn 主仓目录:norm,quant ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> 关联Issue [#5098](https://gitcode.com/cann/ops-nn/issues/5098) ## 测试 验证方法 严格按四步流程,逐算子验证: 1. Step 1:编译原始代码,保存 baseline binary .o 文件 MD5 2. Step 2:执行 MicroAPI → Reg 替换 3. Step 3:编译替换后代码,保存 after binary .o 文件 MD5 4. Step 4:对比 A_before.md5 与 B_after.md5 平台:ascend950,编译参数:--soc=ascend950 --ops=<op> -j16 验证替换前后 binary 产物 MD5 完全一致。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: norm,quant目录下MicroAPI → Reg 命名空间迁移 See merge request: cann/ops-nn!9291 | 17 天前 | |
更新A5空tensor处理逻辑 Co-authored-by: clwsy1<wangsiyang3@huawei.com> # message auto-generated for no-merge-commit merge: !9695 merge dev into master 更新A5空tensor处理逻辑 Created-by: clwsy1 Commit-by: clwsy1 Merged-by: cann-robot Description: ## 描述 修复A5对空tensor处理逻辑与A2不一致的问题。 ## 关联的Issue #5492 ## 测试 进行了空tensor测试,结果与A2一致 ## 文档更新 更新了aclnnAscendAntiQuant.md文档 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9695 | 11 天前 | |
算子插件迁移 Co-authored-by: welt_lester<songlizhe1@h-partners.com> Co-authored-by: x00842564<xuyanke@huawei.com> # message auto-generated for no-merge-commit merge: !8474 merge master into master 算子插件迁移 Created-by: welt_lester Commit-by: x00842564;welt_lester Merged-by: cann-robot Description: ## 描述 落实issue #4279,将adaptive_avg_pool2d、adaptive_max_pool2d、ascend_anti_quant、ascend_dequant、ascend_quant、batch_mat_mul_v3、batch_norm、celu_v2、instance_norm_v3、ascend_quant、log_softmax_v2、mat_mul_v3、unique_with_counts_and_sorting这13个算子对应的插件从common\src\framework迁出到各自算子目录新建的\framework目录下。 ## 关联的Issue [Bug-Report|缺陷反馈]: 有对应算子的插件不应该放到公共目录 [#4279](https://gitcode.com/cann/ops-nn/issues/4279) ## 测试 compile、本地验证build通过 ## 文档更新 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码重构(算子插件归属迁移,落实 #4279 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8474 | 26 天前 | |
nn仓算子错误日志整改 Co-authored-by: qq_52874943<gaomingyuan3@h-partners.com> # message auto-generated for no-merge-commit merge: !9777 merge master into master nn仓算子错误日志整改 Created-by: qq_52874943 Commit-by: qq_52874943 Merged-by: cann-robot Description: ## 描述 本 PR 为 nn 仓(ops-nn)中多个量化类算子及融合算子的错误日志与调试日志进行整改,关联 Issue #5183。改动不涉及功能逻辑与接口行为,仅修正日志文案中的语法、拼写及措辞问题:将 "not support" 统一改为 "does not support"、"is must be" 改为 "must be"、"shoule" 改为 "should",并修正 dstDype、DynamicQuan、vaule 等拼写错误,同时修正 aclnn_grouped_dynamic_mx_quant 系列日志中打印错误变量(误将 mxscaleDim1 作为 mxscaleDim2 的值输出)的问题。 ## 关联的Issue 关联Issue[#5183](https://gitcode.com/cann/ops-nn/issues/5183) ## 测试 本地已完成新精度对比与性能测试,通过静态检查、蓝区冒烟、算子ST以及算子二级冒烟 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9777 | 10 天前 | |
fix: 修复ascend_quant_v2/quant_max L2_DFX_PHASE_1宏参数缺失及顺序问题 Co-authored-by: yuanbin_22<yuanbin22@huawei.com> # message auto-generated for no-merge-commit merge: !9887 merge fix/quant-dfx-phase1 into master fix: 修复ascend_quant_v2/quant_max L2_DFX_PHASE_1宏参数缺失及顺序问题 Created-by: yuanbin_22 Commit-by: yuanbin_22 Merged-by: cann-robot Description: ## 描述 修复三个算子 op_api 中 L2_DFX_PHASE_1 宏的 DFX_IN 参数问题: - **aclnn_ascend_quant.cpp**:DFX_IN 中 sqrtMode 与 roundMode 顺序与函数签名不一致,修正为 sqrtMode, roundMode 顺序。 - **aclnn_ascend_quant_v3.cpp**:同上,修正 sqrtMode 与 roundMode 顺序。 - **aclnn_quant_max.cpp**:DFX_IN 缺少 roundMode 和 dstType 参数,补齐为 DFX_IN(x, scale, roundMode, dstType)。 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/5526 ## 测试 纯参数顺序/缺失修复,不影响算子计算逻辑,编译验证通过。 ## 文档更新 无需文档更新。 ## 类型标签 - [x] Bug修复 ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!9887 | 6 天前 | |
[CANNBot]950新增ascend_requant算子 Co-authored-by: h1234515<huangzhiyuan21@huawei.com> # message auto-generated for no-merge-commit merge: !8926 merge br_ascend_requant into master [CANNBot]950新增ascend_requant算子 Created-by: h1234515 Commit-by: h1234515 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ascendRequant 是 INT8 静态量化推理链路中的反量化再量化算子,将上游 Conv/MatMul 在 INT8 权重下产生的 INT32 累加结果,按反量化缩放因子重新量化回 INT8,作为下一层 INT8 计算的输入。原实现为 canndev 仓的 TBE builtin 算子,随 Ascend 950 新硬件上线,需基于 AscendC 在 arch35 上重新实现,使该算子在 ascend950 上可用。 计算公式: y = SaturateInt8(RoundToNearestEven(x * scale)) 其中 scale 由 req_scale(UINT64 DeqScale 编码)解码得到,结果饱和到 [-128, 127];当 relu_flag=true 时再执行 y = max(y, 0)。 ### 数据类型 / 格式 - x:INT32,ND - req_scale:UINT64,ND - y:INT8,ND - relu_flag:可选 BOOL 属性,默认 false ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5042 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 二级冒烟,ttk测试 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> quant/ascend_requant/README.md docs/zh/op_list.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8926 | 17 天前 | |
md大模型检测低错修复 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !9420 merge master into master md大模型检测低错修复 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> md aidd大模型检测低错修复 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5254 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> acl*.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9420 | 16 天前 | |
修复codecheck问题 Co-authored-by: demoauguste<zhanghao418@huawei.com> # message auto-generated for no-merge-commit merge: !10024 merge master into master 修复codecheck问题 Created-by: demoauguste Commit-by: demoauguste Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 该 PR 主要针对 dequant_situ_quant 与 situ_mx_quant 算子的 host/tiling/kernel 代码修复 codecheck(静态检查)问题,核心手段包括:将魔法数字替换为具名 constexpr 常量或 sizeof 表达式、修正对外接口 aclnnSituMxQuantGetWorkspaceSize 的 const 修饰并移除冗余 const_cast、清理未使用的 include 与 using namespace、修正日志格式说明符等;此外按 PR 描述更新了 aclnnSituMxQuant.md 文档中的示例代码,并同步为示例/单测补充了 ACLNN_ERR_PARAM_INVALID 错误码的兜底定义。 主要改动 修正 aclnnSituMxQuantGetWorkspaceSize 接口签名: 在 aclnn_situ_mx_quant.h 与 aclnn_situ_mx_quant.cpp 中,将输出参数 yOut、yScaleOut 由 const aclTensor* 改为 aclTensor*,并删除实现中的 const_cast 转换,使接口 const 语义正确。 魔法数字替换为具名常量/枚举: dequant_situ_quant_def.cpp 将 beta/linear_beta 默认值提取为 DEFAULT_BETA、DEFAULT_LINEAR_BETA;situ_mx_quant_def.cpp 将 dst_type 的魔法值 40 替换为 ge::DT_FLOAT4_E2M1;dequant_situ_quant_tiling.cpp 用 sizeof(int8_t) 等及新增的 BYTES_DEQUANT_BIAS_PER_ELEM、BYTES_QUANT_SCALE_DYNAMIC、BYTES_QUANT_SCALE_STATIC 等常量替代硬编码字节数。 替换 kernel 与 tiling 中的硬编码数值: dequant_situ_quant.h 中 Duplicate、BinaryRepeatParams、WholeReduceMax 调用的 8 分别改为 BLOCK_ELEM、MASK_BLK_STRIDE;dequant_situ_quant_tiling.cpp 中 ubMinBlockLen、cacheLineLen 改为由 ALIGN_UINT_IN_CACHE_32B、PACK_UINT_IN_CACHE_512B 与 inputDTypeLen 推导。 清理头文件与类型/格式问题: 移除 dequant_situ_quant_tiling.h 中未使用的 using namespace Ops::NN::Optiling;、situ_mx_quant_tiling_arch35.h 中未使用的 <vector> include,并为 situ_mx_quant_tiling_data.h 补充 <cstdint>;situ_mx_quant_tiling_arch35.cpp 中 tilingKey 改为 uint64_t 且日志格式符由 %ld 修正为 %lu,TilingPrepare4SituMxQuant 未使用参数改为注释形式 /*context*/。 示例与文档同步: test_aclnn_situ_mx_quant.cpp 在公共头不可见 aclnn 错误码枚举时补充 ACLNN_ERR_PARAM_INVALID(错误码 161002)的兜底宏定义;按 PR 描述更新 aclnnSituMxQuant.md 示例代码以修复其问题。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5658 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 更新了aclnnSituMxQuant.md,修复示例代码问题。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [x] 其他,请描述:修复代码codecheck问题 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!10024 | 5 天前 | |
docs(dequant_swiglu_quant): 修正非尾轴场景 quantModeOptional 文档描述错误(static→dynamic) Co-authored-by: cheng-ziyang2<chengziyang2@huawei.com> # message auto-generated for no-merge-commit merge: !9989 merge dsq_md into master docs(dequant_swiglu_quant): 修正非尾轴场景 quantModeOptional 文档描述错误(static→dynamic) Created-by: cheng-ziyang2 Commit-by: cheng-ziyang2 Merged-by: cann-robot Description: ## 描述 修正 aclnnDequantSwigluQuantV2 接口文档中 activateDim 参数约束描述的错误:非尾轴场景下 quantModeOptional 的支持值由错误的"static"更正为"dynamic"。 ### 改动原因 - 文档 aclnnDequantSwigluQuantV2.md 第 322 行原描述为"当activateDim对应的不是x的尾轴时,quantModeOptional仅支持static。",与算子实际实现矛盾: - 算子注册约束(dequant_swiglu_quant_proto.h:71)明确声明:"The attribute quant_mode is only supported 'dynamic' in Ascend 950 AI Processors." - arch35 tiling 实现(dequant_swiglu_quant_tiling_arch35.cpp:1259-1276)在非尾轴 activate_dim 场景拒绝 static quant_mode,仅允许 dynamic,并在 host tiling 阶段提前拦截该不支持组合(避免静默路由到动态量化 kernel 导致 UB access address overflow)。 - 文档同文件的调用示例(第 695 行)使用 "dynamic" 作为 quantModeOptional 参数。 - 因此非尾轴场景下 quantModeOptional 仅支持 dynamic,原描述"仅支持static"为笔误,修正为"仅支持dynamic"。 ### 改动方法 - 文件:quant/dequant_swiglu_quant/docs/aclnnDequantSwigluQuantV2.md,仅修改第 322 行: - 将"当activateDim对应的不是x的尾轴时,quantModeOptional仅支持static。" - 更正为"当activateDim对应的不是x的尾轴时,quantModeOptional仅支持dynamic。" - 不涉及其他行或参数描述变更。 ## 关联的Issue - #5632 ## 测试 - 改动仅涉及文档描述文本修正,不涉及代码逻辑变更。 - 修正后描述与算子注册约束(dequant_swiglu_quant_proto.h:71)及 arch35 tiling 实现(dequant_swiglu_quant_tiling_arch35.cpp:1264-1276)一致。 ## 文档更新 - 修正 aclnnDequantSwigluQuantV2.md 中 activateDim 参数约束描述:非尾轴场景 quantModeOptional 支持值由"static"更正为"dynamic"。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 - [ ] AI辅助编写 See merge request: cann/ops-nn!9989 | 5 天前 | |
feat: 新增16个算子的TensorFlow插件注册 Co-authored-by: Nice_try<zhangzhiwei108@huawei.com> # message auto-generated for no-merge-commit merge: !9643 merge tf_plugin into master feat: 新增16个算子的TensorFlow插件注册 Created-by: Nice_try Commit-by: Nice_try Merged-by: cann-robot Description: ## 描述 本次变更为 16 个算子新增 TensorFlow 框架插件注册( *_tf_plugin.cpp),使这些算子在 TensorFlow 图解析时可通过 REGISTER_CUSTOM_OP 自动映射到昇腾算子(AutoMappingByOpFn,ImplyType::TVM),注册模式与仓库内已有 *_tf_plugin.cpp 文件保持一致。 新增注册的算子(16 个): | 算子 | 注册文件 | |------|----------| | PReluGrad | activation/p_relu_grad_update/framework/prelu_grad_tf_plugin.cpp | | Centralization | common/src/framework/centralization_tf_plugin.cpp | | DynamicAUGRUGrad | common/src/framework/dynamic_augru_grad_tf_plugin.cpp | | DynamicAUGRU | common/src/framework/dynamic_augru_tf_plugin.cpp | | DynamicGRUV2Grad | common/src/framework/dynamic_gruv2_grad_tf_plugin.cpp | | DynamicGRUV2 | common/src/framework/dynamic_gruv2_tf_plugin.cpp | | DynamicRNNGrad | common/src/framework/dynamic_rnn_grad_tf_plugin.cpp | | LRNGrad | common/src/framework/lrn_grad_tf_plugin.cpp | | LRN | common/src/framework/lrn_tf_plugin.cpp | | LRUCacheV2 | common/src/framework/lru_cache_v2_tf_plugin.cpp | | MaxPoolGradGrad | common/src/framework/max_pool_grad_grad_tf_plugin.cpp | | BNInferGrad | norm/bn_infer_grad/framework/bn_infer_grad_tf_plugin.cpp | | MaxPoolGradGradWithArgmax | pooling/max_pool_grad_grad_with_argmax/framework/max_pool_grad_grad_with_argmax_tf_plugin.cpp | | MaxPoolV2 | pooling/max_pool_v2/framework/max_pool_v2_tf_plugin.cpp | | MaxPool | pooling/max_pool_v3/framework/max_pool_v3_tf_plugin.cpp | | Dequantize | quant/dequantize/framework/dequantize_tf_plugin.cpp | ## 关联的Issue - 关联 Issue:https://gitcode.com/cann/ops-nn/issues/5447 ## 测试 本次改动仅为算子注册文件(编译期注册),未包含测试用例。 ## 文档更新 无。 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 - [ ] AI辅助编写 See merge request: cann/ops-nn!9643 | 11 天前 | |
md大模型检测低错修复 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !9420 merge master into master md大模型检测低错修复 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> md aidd大模型检测低错修复 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5254 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> acl*.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9420 | 16 天前 | |
fix(dynamic-block-quant): use correct third dimension for scale shape Co-authored-by: jiaoyiming<jiaoyiming2@huawei.com> # message auto-generated for no-merge-commit merge: !9820 merge fix/issue-5025-dynamic-block-quant-shape into master fix(dynamic-block-quant): use correct third dimension for scale shape Created-by: jiaoyiming Commit-by: jiaoyiming Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修复 DynamicBlockQuant 三维输入场景下 scale 张量形状推导错误的问题。 在 CheckShape 函数中,第三维度 dim2 错误地使用 DIGIT_ZERO(第 0 维)读取,导致当输入第 0 维与第 2 维不一致时,scale 张量第三维度计算错误。本次将其修正为使用 DIGIT_TWO 读取实际第三维度,并新增三维输入回归用例进行覆盖。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5025 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 自验证 通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9820 | 10 天前 | |
md大模型检测低错修复 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !9420 merge master into master md大模型检测低错修复 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> md aidd大模型检测低错修复 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5254 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> acl*.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9420 | 16 天前 | |
重命名mxquant相关变量 Co-authored-by: ji-jun1<jijun1@huawei.com> # message auto-generated for no-merge-commit merge: !9285 merge rename_mx into master 重命名mxquant相关变量 Created-by: ji-jun1 Commit-by: ji-jun1 Merged-by: cann-robot Description: ## 描述 重命名mxquant相关变量,包括原型和md中的说明 ## 关联的Issue #5420 ## 测试 已通过st测试 ## 文档更新 更新了 quant/dynamic_mx_quant_with_dual_axis/README.md quant/dynamic_mx_quant_with_dual_axis/aclnnDynamicMxQuantWithDualAxis.md quant/dynamic_mx_quant_with_dual_axis/aclnnDynamicMxQuantWithDualAxisV2.md quant/grouped_dynamic_mx_quant_with_dual_axis/docs/aclnnGroupedDynamicMxQuantWithDualAxis.md ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9285 | 12 天前 | |
重命名mxquant相关变量 Co-authored-by: ji-jun1<jijun1@huawei.com> # message auto-generated for no-merge-commit merge: !9285 merge rename_mx into master 重命名mxquant相关变量 Created-by: ji-jun1 Commit-by: ji-jun1 Merged-by: cann-robot Description: ## 描述 重命名mxquant相关变量,包括原型和md中的说明 ## 关联的Issue #5420 ## 测试 已通过st测试 ## 文档更新 更新了 quant/dynamic_mx_quant_with_dual_axis/README.md quant/dynamic_mx_quant_with_dual_axis/aclnnDynamicMxQuantWithDualAxis.md quant/dynamic_mx_quant_with_dual_axis/aclnnDynamicMxQuantWithDualAxisV2.md quant/grouped_dynamic_mx_quant_with_dual_axis/docs/aclnnGroupedDynamicMxQuantWithDualAxis.md ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9285 | 12 天前 | |
feat:nn add aclnn testcase and golden again. Co-authored-by: yanzhi2024<yanzhi@huawei.com> # message auto-generated for no-merge-commit merge: !9634 merge master into master feat:nn add aclnn testcase and golden again. Created-by: yanzhi2024 Commit-by: yanzhi2024 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 补充了一批算子的st用例 和 golden。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5587 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> st用例均已通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!9634 | 6 天前 | |
docs: 完善 deep_norm、deep_norm_grad、dynamic_quant_update_scatter 算子的约束说明 Co-authored-by: tianqiguang<tianqiguang@huawei.com> # message auto-generated for no-merge-commit merge: !9576 merge deliver/cosine-deepnorm-docs into master docs: 完善 deep_norm、deep_norm_grad、dynamic_quant_update_scatter 算子的约束说明 Created-by: tianqiguang Commit-by: tianqiguang Merged-by: cann-robot Description: ## 描述 完善三个算子的 README 文档约束说明: - deep_norm/README.md:补充约束说明(x 维度 2-8、dtype 仅 FLOAT32/FLOAT16/BFLOAT16、mean/rstd 固定 FLOAT32、tiling 范围检查、full-load/partial-load 路径切换等)。 - deep_norm_grad/README.md:补充约束说明(dy/x/gx 等 shape 一致、dtype 约束、tiling 溢出检查、small-D 分支需要额外 workspace 等)。 - dynamic_quant_update_scatter/README.md:更新 axis 属性说明(支持负数取值并归一化)、细化约束说明(updates/var_scale/smooth_scales 约束、尾轴 32B 对齐、axis 内层轴要求等)。 ## 关联的Issue 无 ## 测试 文档变更,无需测试。 ## 文档更新 - norm/deep_norm/README.md - norm/deep_norm_grad/README.md - quant/dynamic_quant_update_scatter/README.md ## 类型标签 - [x] 文档更新 ## AI/Agent生成声明 - [ ] AI辅助编写 See merge request: cann/ops-nn!9576 | 13 天前 | |
将norm,quant目录下 MicroAPI 命名空间统一替换为 Reg Co-authored-by: m0_71149169<1907825139@qq.com> # message auto-generated for no-merge-commit merge: !9291 merge norm-quant-microapi-to-reg into master 将norm,quant目录下 MicroAPI 命名空间统一替换为 Reg Created-by: m0_71149169 Commit-by: m0_71149169 Merged-by: cann-robot Description: ## 描述 MicroAPI → Reg 命名空间迁移: norm,quant CANN 头文件 kernel_macros.h 中存在命名空间别名 namespace MicroAPI = Reg;,MicroAPI 只是 Reg 的别名。为统一命名规范,将 nn 仓所有算子 kernel 代码中的 MicroAPI 替换为 Reg,并通过对比替换前后 binary .o 文件 MD5 验证替换无影响。 覆盖范围 - nn 主仓目录:norm,quant ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> 关联Issue [#5098](https://gitcode.com/cann/ops-nn/issues/5098) ## 测试 验证方法 严格按四步流程,逐算子验证: 1. Step 1:编译原始代码,保存 baseline binary .o 文件 MD5 2. Step 2:执行 MicroAPI → Reg 替换 3. Step 3:编译替换后代码,保存 after binary .o 文件 MD5 4. Step 4:对比 A_before.md5 与 B_after.md5 平台:ascend950,编译参数:--soc=ascend950 --ops=<op> -j16 验证替换前后 binary 产物 MD5 完全一致。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: norm,quant目录下MicroAPI → Reg 命名空间迁移 See merge request: cann/ops-nn!9291 | 17 天前 | |
feat:nn add aclnn testcase and golden again. Co-authored-by: yanzhi2024<yanzhi@huawei.com> # message auto-generated for no-merge-commit merge: !9634 merge master into master feat:nn add aclnn testcase and golden again. Created-by: yanzhi2024 Commit-by: yanzhi2024 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 补充了一批算子的st用例 和 golden。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5587 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> st用例均已通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!9634 | 6 天前 | |
md大模型检测低错修复 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !9420 merge master into master md大模型检测低错修复 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> md aidd大模型检测低错修复 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5254 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> acl*.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9420 | 16 天前 | |
legacy日落-给一些算子增加InferDataTpye和Tiling日志 Co-authored-by: m0_64999461<xiongpan666@outlook.com> # message auto-generated for no-merge-commit merge: !8630 merge ops-dev into master legacy日落-给一些算子增加InferDataTpye和Tiling日志 Created-by: pan_xiong Commit-by: m0_64999461 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> legacy日落-给一些算子增加InferDataTpye、Infershape打印outputshape和Tiling日志 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 二级冒烟,本地通路验证完毕 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 暂无文档更新 ## 类型标签 <!-- [x] 表示选中 --> - [X] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8630 | 20 天前 | |
legacy日落-给一些算子增加InferDataTpye和Tiling日志 Co-authored-by: m0_64999461<xiongpan666@outlook.com> # message auto-generated for no-merge-commit merge: !8630 merge ops-dev into master legacy日落-给一些算子增加InferDataTpye和Tiling日志 Created-by: pan_xiong Commit-by: m0_64999461 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> legacy日落-给一些算子增加InferDataTpye、Infershape打印outputshape和Tiling日志 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 二级冒烟,本地通路验证完毕 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 暂无文档更新 ## 类型标签 <!-- [x] 表示选中 --> - [X] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8630 | 20 天前 | |
将norm,quant目录下 MicroAPI 命名空间统一替换为 Reg Co-authored-by: m0_71149169<1907825139@qq.com> # message auto-generated for no-merge-commit merge: !9291 merge norm-quant-microapi-to-reg into master 将norm,quant目录下 MicroAPI 命名空间统一替换为 Reg Created-by: m0_71149169 Commit-by: m0_71149169 Merged-by: cann-robot Description: ## 描述 MicroAPI → Reg 命名空间迁移: norm,quant CANN 头文件 kernel_macros.h 中存在命名空间别名 namespace MicroAPI = Reg;,MicroAPI 只是 Reg 的别名。为统一命名规范,将 nn 仓所有算子 kernel 代码中的 MicroAPI 替换为 Reg,并通过对比替换前后 binary .o 文件 MD5 验证替换无影响。 覆盖范围 - nn 主仓目录:norm,quant ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> 关联Issue [#5098](https://gitcode.com/cann/ops-nn/issues/5098) ## 测试 验证方法 严格按四步流程,逐算子验证: 1. Step 1:编译原始代码,保存 baseline binary .o 文件 MD5 2. Step 2:执行 MicroAPI → Reg 替换 3. Step 3:编译替换后代码,保存 after binary .o 文件 MD5 4. Step 4:对比 A_before.md5 与 B_after.md5 平台:ascend950,编译参数:--soc=ascend950 --ops=<op> -j16 验证替换前后 binary 产物 MD5 完全一致。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: norm,quant目录下MicroAPI → Reg 命名空间迁移 See merge request: cann/ops-nn!9291 | 17 天前 | |
将norm,quant目录下 MicroAPI 命名空间统一替换为 Reg Co-authored-by: m0_71149169<1907825139@qq.com> # message auto-generated for no-merge-commit merge: !9291 merge norm-quant-microapi-to-reg into master 将norm,quant目录下 MicroAPI 命名空间统一替换为 Reg Created-by: m0_71149169 Commit-by: m0_71149169 Merged-by: cann-robot Description: ## 描述 MicroAPI → Reg 命名空间迁移: norm,quant CANN 头文件 kernel_macros.h 中存在命名空间别名 namespace MicroAPI = Reg;,MicroAPI 只是 Reg 的别名。为统一命名规范,将 nn 仓所有算子 kernel 代码中的 MicroAPI 替换为 Reg,并通过对比替换前后 binary .o 文件 MD5 验证替换无影响。 覆盖范围 - nn 主仓目录:norm,quant ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> 关联Issue [#5098](https://gitcode.com/cann/ops-nn/issues/5098) ## 测试 验证方法 严格按四步流程,逐算子验证: 1. Step 1:编译原始代码,保存 baseline binary .o 文件 MD5 2. Step 2:执行 MicroAPI → Reg 替换 3. Step 3:编译替换后代码,保存 after binary .o 文件 MD5 4. Step 4:对比 A_before.md5 与 B_after.md5 平台:ascend950,编译参数:--soc=ascend950 --ops=<op> -j16 验证替换前后 binary 产物 MD5 完全一致。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: norm,quant目录下MicroAPI → Reg 命名空间迁移 See merge request: cann/ops-nn!9291 | 17 天前 | |
将norm,quant目录下 MicroAPI 命名空间统一替换为 Reg Co-authored-by: m0_71149169<1907825139@qq.com> # message auto-generated for no-merge-commit merge: !9291 merge norm-quant-microapi-to-reg into master 将norm,quant目录下 MicroAPI 命名空间统一替换为 Reg Created-by: m0_71149169 Commit-by: m0_71149169 Merged-by: cann-robot Description: ## 描述 MicroAPI → Reg 命名空间迁移: norm,quant CANN 头文件 kernel_macros.h 中存在命名空间别名 namespace MicroAPI = Reg;,MicroAPI 只是 Reg 的别名。为统一命名规范,将 nn 仓所有算子 kernel 代码中的 MicroAPI 替换为 Reg,并通过对比替换前后 binary .o 文件 MD5 验证替换无影响。 覆盖范围 - nn 主仓目录:norm,quant ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> 关联Issue [#5098](https://gitcode.com/cann/ops-nn/issues/5098) ## 测试 验证方法 严格按四步流程,逐算子验证: 1. Step 1:编译原始代码,保存 baseline binary .o 文件 MD5 2. Step 2:执行 MicroAPI → Reg 替换 3. Step 3:编译替换后代码,保存 after binary .o 文件 MD5 4. Step 4:对比 A_before.md5 与 B_after.md5 平台:ascend950,编译参数:--soc=ascend950 --ops=<op> -j16 验证替换前后 binary 产物 MD5 完全一致。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: norm,quant目录下MicroAPI → Reg 命名空间迁移 See merge request: cann/ops-nn!9291 | 17 天前 | |
将norm,quant目录下 MicroAPI 命名空间统一替换为 Reg Co-authored-by: m0_71149169<1907825139@qq.com> # message auto-generated for no-merge-commit merge: !9291 merge norm-quant-microapi-to-reg into master 将norm,quant目录下 MicroAPI 命名空间统一替换为 Reg Created-by: m0_71149169 Commit-by: m0_71149169 Merged-by: cann-robot Description: ## 描述 MicroAPI → Reg 命名空间迁移: norm,quant CANN 头文件 kernel_macros.h 中存在命名空间别名 namespace MicroAPI = Reg;,MicroAPI 只是 Reg 的别名。为统一命名规范,将 nn 仓所有算子 kernel 代码中的 MicroAPI 替换为 Reg,并通过对比替换前后 binary .o 文件 MD5 验证替换无影响。 覆盖范围 - nn 主仓目录:norm,quant ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> 关联Issue [#5098](https://gitcode.com/cann/ops-nn/issues/5098) ## 测试 验证方法 严格按四步流程,逐算子验证: 1. Step 1:编译原始代码,保存 baseline binary .o 文件 MD5 2. Step 2:执行 MicroAPI → Reg 替换 3. Step 3:编译替换后代码,保存 after binary .o 文件 MD5 4. Step 4:对比 A_before.md5 与 B_after.md5 平台:ascend950,编译参数:--soc=ascend950 --ops=<op> -j16 验证替换前后 binary 产物 MD5 完全一致。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: norm,quant目录下MicroAPI → Reg 命名空间迁移 See merge request: cann/ops-nn!9291 | 17 天前 | |
docs: heaviside、group_quant 算子 README 标记 Ascend 950PR/950DT 支持 Co-authored-by: Coder_Nerd<shishuai5@huawei.com> # message auto-generated for no-merge-commit merge: !9324 merge readme into master docs: heaviside、group_quant 算子 README 标记 Ascend 950PR/950DT 支持 Created-by: Coder_Nerd Commit-by: Coder_Nerd Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修改GroupQuant以及Heaviside算子README.md支持Ascend950 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5160 https://gitcode.com/cann/ops-nn/issues/5127 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9324 | 17 天前 | |
md大模型检测低错修复 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !9420 merge master into master md大模型检测低错修复 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> md aidd大模型检测低错修复 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5254 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> acl*.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9420 | 16 天前 | |
README Rectification Co-authored-by: TH<taohai2@huawei.com> # message auto-generated for no-merge-commit merge: !9746 merge readmeFix into master README Rectification Created-by: TH_HW Commit-by: TH Merged-by: cann-robot Description: ## 描述 整改 GroupedDynamicMxQuant 算子(含 aclnnGroupedDynamicMxQuant 与 aclnnGroupedDynamicMxQuantV2 接口)的资料与校验逻辑:统一文档命名、修正 dstTypeMax 取值区间描述、补充 FP4 输出时尾轴为偶数的参数约束,并新增对应的 V2 接口单测与 ST 用例回归。 主要改动如下: 1. **资料整改**:README.md 与 aclnnGroupedDynamicMxQuant / aclnnGroupedDynamicMxQuantV2 接口文档中,统一将 groupedIndex 命名为 groupIndex;修正公式描述中 mxscale 与 mxscale_pre 的混用及不可见字符;dstTypeMax 取值由 1.75-3.5、6.0-12.0 修正为区间表达 [1.75, 3.5)、[6.0, 12.0](FLOAT4_E1M2 为左闭右开,3.5 不在支持范围内);删除 aclnnGroupedDynamicMxQuant.md 中与实际校验不符的错误场景描述行(approximate、quantMode);V2 文档补充"y 为 FLOAT4_E2M1/FLOAT4_E1M2 时不支持非连续 Tensor"的异常场景;调用示例代码中的变量命名与 fp4/fp8 注释一并修正。 2. **op_api 参数校验修复**:aclnn_grouped_dynamic_mx_quant_v2.cpp 的 CheckShape 新增约束校验——当输出 y 的数据类型为 FLOAT4_E2M1/FLOAT4_E1M2 且 x 尾轴已知时,x 尾轴(第 1 维)长度必须为偶数;FP8 输出与动态尾轴(-1)不受此限制(按蕴含条件"非 FP4,或尾轴未知,或尾轴为偶数"校验),避免将文档仍声明支持的 FP8 合法调用误判为参数非法。 3. **tiling 属性校验修正**:grouped_dynamic_mx_quant_tiling_arch35.cpp 中 dst_type_max 对 FLOAT4_E1M2 的合法区间修正为 [1.75, 3.5),取值 3.5 时不再放行,与资料描述保持一致。 4. **单测新增**:新增 tests/ut/op_api/test_aclnn_grouped_dynamic_mx_quant_v2.cpp,共 14 个用例覆盖 FP8(E4M3FN/E5M2)与 FP4(E2M1/E1M2)输出在偶数、奇数、动态尾轴下的成功与失败(ACLNN_ERR_PARAM_INVALID)场景,其中 FP8 用例为本次校验修复的回归用例。 5. **ST 用例更新**:ttk_kernel_grouped_dynamic_mx_quant_st.csv 用例更新,覆盖 fp8/fp4 各输出类型与 scale_alg、dst_type_max 属性的组合场景。 ## 关联的Issue 无。 ## 测试 - 新增 V2 接口 op_api UT(14 个用例):FP8 输出(含奇数、动态尾轴)调用返回成功,FP4 输出偶数/动态尾轴返回成功,FP4 输出奇数尾轴返回 ACLNN_ERR_PARAM_INVALID,全部通过。 - ST 用例在 ascend950 上回归通过,覆盖 FP8/FP4 输出与 scale_alg、dst_type_max 属性组合。 ## 文档更新 更新了以下文档: - quant/grouped_dynamic_mx_quant/README.md - quant/grouped_dynamic_mx_quant/docs/aclnnGroupedDynamicMxQuant.md - quant/grouped_dynamic_mx_quant/docs/aclnnGroupedDynamicMxQuantV2.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] 新特性 - [x] Bug修复 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!9746 | 10 天前 | |
重命名mxquant相关变量 Co-authored-by: ji-jun1<jijun1@huawei.com> # message auto-generated for no-merge-commit merge: !9285 merge rename_mx into master 重命名mxquant相关变量 Created-by: ji-jun1 Commit-by: ji-jun1 Merged-by: cann-robot Description: ## 描述 重命名mxquant相关变量,包括原型和md中的说明 ## 关联的Issue #5420 ## 测试 已通过st测试 ## 文档更新 更新了 quant/dynamic_mx_quant_with_dual_axis/README.md quant/dynamic_mx_quant_with_dual_axis/aclnnDynamicMxQuantWithDualAxis.md quant/dynamic_mx_quant_with_dual_axis/aclnnDynamicMxQuantWithDualAxisV2.md quant/grouped_dynamic_mx_quant_with_dual_axis/docs/aclnnGroupedDynamicMxQuantWithDualAxis.md ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9285 | 12 天前 | |
grouped_quant_max modified nullptr 161001 Co-authored-by: yin-peng<yinpeng37@huawei.com> # message auto-generated for no-merge-commit merge: !9669 merge grouped_quant_max_issue into master grouped_quant_max modified nullptr 161001 Created-by: yin-peng Commit-by: yin-peng Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修改aclnn校验roundMode 空指针的报错码为161001 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> 关联Issue [#5375](https://gitcode.com/cann/ops-nn/issues/5375) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 本地ut验证 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9669 | 11 天前 | |
fix: 【工具检测】【mssanitizer】ifmr算子编译发生报错 (#5096) Co-authored-by: fujun19<fujun19@hisilicon.com> # message auto-generated for no-merge-commit merge: !9326 merge fix-issue-5096 into master fix: 【工具检测】【mssanitizer】ifmr算子编译发生报错 (#5096) Created-by: fujun19 Commit-by: fujun19 Merged-by: cann-robot Description: ## 描述 - 修复摘要:ifmr算子编译发生报错 - 变更文件: - quant/ifmr/examples/test_geir_ifmr.cpp ### Diff 摘要 text quant/ifmr/examples/test_geir_ifmr.cpp | 35 +++++++++++++++++----------------- 1 file changed, 18 insertions(+), 17 deletions(-) ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/5096 ## 测试 - 测试结论: PASS - bash build.sh --pkg --soc=ascend950 --ops=ifmr --mssanitizer -j16 passed. - bash build.sh --run_example ifmr graph --soc=ascend950 passed after the patch. - git diff --check passed. ## 文档更新 无文档更新。 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 ## 风险和遗留问题 - None. See merge request: cann/ops-nn!9326 | 17 天前 | |
modify anti_mx_quant & mx_to_block_mx_quant aclnn docs Co-authored-by: pyq17870581669<pengyongqiang5@huawei.com> # message auto-generated for no-merge-commit merge: !9439 merge modify_anti_mx_quant_aclnn_docs into master modify anti_mx_quant & mx_to_block_mx_quant aclnn docs Created-by: pyq17870581669 Commit-by: pyq17870581669 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 更新AntiMxQuant&MxToBlockMxQuant算子的Aclnn文档 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5287 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 更新了AntiMxQuant和MxToBlockMxQuant算子的Aclnn文档 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9439 | 16 天前 | |
重命名mxquant相关变量 Co-authored-by: ji-jun1<jijun1@huawei.com> # message auto-generated for no-merge-commit merge: !9285 merge rename_mx into master 重命名mxquant相关变量 Created-by: ji-jun1 Commit-by: ji-jun1 Merged-by: cann-robot Description: ## 描述 重命名mxquant相关变量,包括原型和md中的说明 ## 关联的Issue #5420 ## 测试 已通过st测试 ## 文档更新 更新了 quant/dynamic_mx_quant_with_dual_axis/README.md quant/dynamic_mx_quant_with_dual_axis/aclnnDynamicMxQuantWithDualAxis.md quant/dynamic_mx_quant_with_dual_axis/aclnnDynamicMxQuantWithDualAxisV2.md quant/grouped_dynamic_mx_quant_with_dual_axis/docs/aclnnGroupedDynamicMxQuantWithDualAxis.md ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9285 | 12 天前 | |
fix: 修复ascend_quant_v2/quant_max L2_DFX_PHASE_1宏参数缺失及顺序问题 Co-authored-by: yuanbin_22<yuanbin22@huawei.com> # message auto-generated for no-merge-commit merge: !9887 merge fix/quant-dfx-phase1 into master fix: 修复ascend_quant_v2/quant_max L2_DFX_PHASE_1宏参数缺失及顺序问题 Created-by: yuanbin_22 Commit-by: yuanbin_22 Merged-by: cann-robot Description: ## 描述 修复三个算子 op_api 中 L2_DFX_PHASE_1 宏的 DFX_IN 参数问题: - **aclnn_ascend_quant.cpp**:DFX_IN 中 sqrtMode 与 roundMode 顺序与函数签名不一致,修正为 sqrtMode, roundMode 顺序。 - **aclnn_ascend_quant_v3.cpp**:同上,修正 sqrtMode 与 roundMode 顺序。 - **aclnn_quant_max.cpp**:DFX_IN 缺少 roundMode 和 dstType 参数,补齐为 DFX_IN(x, scale, roundMode, dstType)。 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/5526 ## 测试 纯参数顺序/缺失修复,不影响算子计算逻辑,编译验证通过。 ## 文档更新 无需文档更新。 ## 类型标签 - [x] Bug修复 ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!9887 | 6 天前 | |
nn仓算子错误日志整改 Co-authored-by: qq_52874943<gaomingyuan3@h-partners.com> # message auto-generated for no-merge-commit merge: !9777 merge master into master nn仓算子错误日志整改 Created-by: qq_52874943 Commit-by: qq_52874943 Merged-by: cann-robot Description: ## 描述 本 PR 为 nn 仓(ops-nn)中多个量化类算子及融合算子的错误日志与调试日志进行整改,关联 Issue #5183。改动不涉及功能逻辑与接口行为,仅修正日志文案中的语法、拼写及措辞问题:将 "not support" 统一改为 "does not support"、"is must be" 改为 "must be"、"shoule" 改为 "should",并修正 dstDype、DynamicQuan、vaule 等拼写错误,同时修正 aclnn_grouped_dynamic_mx_quant 系列日志中打印错误变量(误将 mxscaleDim1 作为 mxscaleDim2 的值输出)的问题。 ## 关联的Issue 关联Issue[#5183](https://gitcode.com/cann/ops-nn/issues/5183) ## 测试 本地已完成新精度对比与性能测试,通过静态检查、蓝区冒烟、算子ST以及算子二级冒烟 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9777 | 10 天前 | |
修复codecheck问题 Co-authored-by: demoauguste<zhanghao418@huawei.com> # message auto-generated for no-merge-commit merge: !10024 merge master into master 修复codecheck问题 Created-by: demoauguste Commit-by: demoauguste Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 该 PR 主要针对 dequant_situ_quant 与 situ_mx_quant 算子的 host/tiling/kernel 代码修复 codecheck(静态检查)问题,核心手段包括:将魔法数字替换为具名 constexpr 常量或 sizeof 表达式、修正对外接口 aclnnSituMxQuantGetWorkspaceSize 的 const 修饰并移除冗余 const_cast、清理未使用的 include 与 using namespace、修正日志格式说明符等;此外按 PR 描述更新了 aclnnSituMxQuant.md 文档中的示例代码,并同步为示例/单测补充了 ACLNN_ERR_PARAM_INVALID 错误码的兜底定义。 主要改动 修正 aclnnSituMxQuantGetWorkspaceSize 接口签名: 在 aclnn_situ_mx_quant.h 与 aclnn_situ_mx_quant.cpp 中,将输出参数 yOut、yScaleOut 由 const aclTensor* 改为 aclTensor*,并删除实现中的 const_cast 转换,使接口 const 语义正确。 魔法数字替换为具名常量/枚举: dequant_situ_quant_def.cpp 将 beta/linear_beta 默认值提取为 DEFAULT_BETA、DEFAULT_LINEAR_BETA;situ_mx_quant_def.cpp 将 dst_type 的魔法值 40 替换为 ge::DT_FLOAT4_E2M1;dequant_situ_quant_tiling.cpp 用 sizeof(int8_t) 等及新增的 BYTES_DEQUANT_BIAS_PER_ELEM、BYTES_QUANT_SCALE_DYNAMIC、BYTES_QUANT_SCALE_STATIC 等常量替代硬编码字节数。 替换 kernel 与 tiling 中的硬编码数值: dequant_situ_quant.h 中 Duplicate、BinaryRepeatParams、WholeReduceMax 调用的 8 分别改为 BLOCK_ELEM、MASK_BLK_STRIDE;dequant_situ_quant_tiling.cpp 中 ubMinBlockLen、cacheLineLen 改为由 ALIGN_UINT_IN_CACHE_32B、PACK_UINT_IN_CACHE_512B 与 inputDTypeLen 推导。 清理头文件与类型/格式问题: 移除 dequant_situ_quant_tiling.h 中未使用的 using namespace Ops::NN::Optiling;、situ_mx_quant_tiling_arch35.h 中未使用的 <vector> include,并为 situ_mx_quant_tiling_data.h 补充 <cstdint>;situ_mx_quant_tiling_arch35.cpp 中 tilingKey 改为 uint64_t 且日志格式符由 %ld 修正为 %lu,TilingPrepare4SituMxQuant 未使用参数改为注释形式 /*context*/。 示例与文档同步: test_aclnn_situ_mx_quant.cpp 在公共头不可见 aclnn 错误码枚举时补充 ACLNN_ERR_PARAM_INVALID(错误码 161002)的兜底宏定义;按 PR 描述更新 aclnnSituMxQuant.md 示例代码以修复其问题。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5658 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 更新了aclnnSituMxQuant.md,修复示例代码问题。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [x] 其他,请描述:修复代码codecheck问题 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!10024 | 5 天前 | |
【日志质量】修复SwiGlu系列算子日志问题(级别错配/语法错误/拼写错误等11条) Co-authored-by: alfengyuan<yyfgdut@gmail.com> # message auto-generated for no-merge-commit merge: !9575 merge fix/swi-glu-log-issues into master 【日志质量】修复SwiGlu系列算子日志问题(级别错配/语法错误/拼写错误等11条) Created-by: alfengyuan Commit-by: alfengyuan Merged-by: cann-robot Description: ## 修改内容 修复 SwiGlu 系列算子(swi_glu / swi_glu_grad / swi_glu_quant)日志质量问题: 1. swi_glu_grad_tiling_regbase.cpp:错误日志级别 OP_LOGI 改为 OP_LOGE;"devide by 0" 拼写修正为 "divide by 0" 2. swi_glu_tiling.cpp:"input shape is not support Non-64B aligned" 改为 "input shape does not support Non-64B alignment" 3. swi_glu_quant_tiling_utils.h:6 处 "is only support" 改为 "only supports";"x and y shape is inconsistency" 改为 "x and y shapes are inconsistent";"dstType can only be 2 or 29" 补充枚举名 "2(DT_INT8) or 29(DT_INT4)" ## 自测 仅修改日志文案与日志级别,不涉及功能逻辑变更 关联issue: #5387 See merge request: cann/ops-nn!9575 | 11 天前 | |
【fix】修复swiglu正反向算子精度问题 Co-authored-by: suhongbin3<suhongbin1@huawei.com> # message auto-generated for no-merge-commit merge: !9828 merge final_fix into master 【fix】修复swiglu正反向算子精度问题 Created-by: suhongbin3 Commit-by: suhongbin3 Merged-by: cann-robot Description: ## 描述 恢复 SwigluMxQuantWithDualAxis 和 SwigluBackwardMxQuantWithDualAxis 算子的原有 SwiGLU 正反向计算逻辑,避免性能优化过程中改变浮点运算结合顺序而引入极值精度问题。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> 关联Issue #5537 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> aclnnfuzz + 失败case ## 文档更新 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9828 | 9 天前 | |
fix(swiglu_mx_quant): 修复检视意见 + 新增标杆和aclnn文档 Co-authored-by: caorenlei<caorenlei@huawei.com> # message auto-generated for no-merge-commit merge: !9292 merge swiglu_mx_quant_mode23_fix into master fix(swiglu_mx_quant): 修复检视意见 + 新增标杆和aclnn文档 Created-by: caorenlei Commit-by: caorenlei Merged-by: cann-robot Description: ## 描述 本次改动针对 swiglu_mx_quant 算子(arch35 平台)修复检视意见,并新增标杆实现与 aclnn 接口文档。 ### 改动原因 1. tiling 代码中参数校验使用 OP_LOGE 打印错误日志,未使用结构化的 OP_LOGE_FOR_INVALID_VALUE_WITH_REASON,无法准确标识出错的参数名和校验原因。 2. swigluMode 2/3 的 axis 校验位于通用 axis 校验之前,逻辑顺序不合理。 3. aclnn 文档缺少 swigluMode 2 和 3 的计算公式、参数约束及错误码说明。 4. 缺少 TTK 标杆 golden 文件,无法进行精度验证。 ### 改动方法 1. **tiling 代码修复**(swiglu_mx_quant_tiling_arch35.cpp): - 新增 #include "error_util.h" - 将 swigluMode、clamp_limit、axis 三处参数校验的错误日志从 OP_LOGE 改为 OP_LOGE_FOR_INVALID_VALUE_WITH_REASON,明确标识参数名和校验原因 - 将 swigluMode 2/3 的 axis 校验从通用 axis 校验之前移到之后,先执行通用校验(axis 必须为 -1 或 -2),再执行模式特定校验(mode 2/3 要求 axis=-1) 2. **aclnn 文档补充**(aclnnSwigluMxQuant.md): - 新增 swigluMode 2 计算公式:前后分半 + clamp + sigmoid(alpha) 激活 + bias - 新增 swigluMode 3 计算公式:前后分半 + sigmoid(alpha=1) + clamp,无 bias - swigluMode 取值范围从 [0, 1] 更新为 [0, 3],补充 mode 2/3 说明 - 新增约束:swigluMode 2/3 要求 axis=-1;activateDim 非 last 轴时 swigluMode 从仅支持 0 改为支持 0 或 1 - 错误信息表中新增"swigluMode 为 2 或 3 时 axis 不为 -1" 3. **标杆新增**(tests/assets/golden.py): - 新增 TTK custom golden 参考实现,覆盖 swiglu_mode 0/1/2/3 全部模式 - 支持 FP4_E2M1、FP4_E1M2、FP8_E4M3FN、FP8_E5M2 等输出数据类型 - 实现 SwiGLU + DynamicMxQuant 融合算子的完整计算逻辑 ## 关联的Issue #5268 ## 测试 - 使用 TTK 仿真验证各 swiglu_mode(0/1/2/3)的精度,对比新增 golden.py 标杆 - 验证 arch35 平台参数校验日志输出格式正确 - 验证 aclnn 文档公式与 kernel 实现一致 ## 文档更新 - 更新 quant/swiglu_mx_quant/docs/aclnnSwigluMxQuant.md:新增 swigluMode 2/3 计算公式、参数约束、错误码 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 - [ ] AI辅助编写 See merge request: cann/ops-nn!9292 | 16 天前 | |
【fix】修复swiglu正反向算子精度问题 Co-authored-by: suhongbin3<suhongbin1@huawei.com> # message auto-generated for no-merge-commit merge: !9828 merge final_fix into master 【fix】修复swiglu正反向算子精度问题 Created-by: suhongbin3 Commit-by: suhongbin3 Merged-by: cann-robot Description: ## 描述 恢复 SwigluMxQuantWithDualAxis 和 SwigluBackwardMxQuantWithDualAxis 算子的原有 SwiGLU 正反向计算逻辑,避免性能优化过程中改变浮点运算结合顺序而引入极值精度问题。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> 关联Issue #5537 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> aclnnfuzz + 失败case ## 文档更新 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9828 | 9 天前 | |
feat: rename op_api_def.h to op_api_def_nn.h Co-authored-by: chenqianyu<chenqianyu1@h-partners.com> # message auto-generated for no-merge-commit merge: !8360 merge rename_opapidef into master feat: rename op_api_def.h to op_api_def_nn.h Created-by: FishPotatoChen Commit-by: chenqianyu Merged-by: cann-robot Description: ## 描述 本次改动将 op_api/op_api_def.h 重命名为 op_api/op_api_def_nn.h,并同步更新了所有引用该头文件的源文件与测试文件中的 #include 路径,共涉及 161 个文件。 改动原因:将 op_api 定义头文件统一命名为 op_api_def_nn.h,以更好地体现其所属模块(NN 算子)的语义,便于后续与其他模块的头文件区分管理。 此外,在提交过程中发现 4 个文件(aclnn_foreach_addcmul_scalar_v2.cpp、aclnn_max_unpool3d.cpp、test_aclnn_addmv.cpp、test_aclnn_fast_batchnorm_backward.cpp)的许可证头使用了非标准的旧格式,导致 OAT 合规检查失败。本次一并将其更新为标准的 CANN 开源许可证头格式,确保通过合规校验。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/4954 ## 测试 - 通过 pre-commit 钩子校验:trailing whitespace、end-of-file-fixer、clang-format 均通过 - 通过 OAT 合规检查(161 个文件全部通过) - 本次为头文件重命名改动,不涉及逻辑变更,编译依赖关系保持不变 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 无 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:头文件重命名与许可证头修复 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [x] AI辅助编写 See merge request: cann/ops-nn!8360 | 23 天前 | |
Fix misspelled executor parameter in aclnn API doxygen comment. Co-authored-by: void_ptr<baochaojun@huawei.com> # message auto-generated for no-merge-commit merge: !9690 merge pr/fix_issue_5350 into master Fix misspelled executor parameter in aclnn API doxygen comment. Created-by: void_ptr Commit-by: void_ptr Merged-by: cann-robot Description: ## 描述 修复多个两段式 aclnn 接口头文件注释参数名拼写错误 ## 关联的Issue https://gitcode.com/cann/ops-nn/issues/5350 ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9690 | 9 天前 | |
torch_extension API文档新增产品型号标签 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !8233 merge master into master torch_extension API文档新增产品型号标签 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 1. torchapi_*.md增加产品型号标签注释 2. 中文png改为英文文件名 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> [#4551](https://gitcode.com/cann/ops-nn/issues/4551) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 已自验 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> torchapi_*.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!8233 | 1 个月前 | |
Format update: Adjusted the license description format in all relevant files. Co-authored-by: jiangqi<jiangqi47@h-partners.com> # message auto-generated for no-merge-commit merge: !366 merge license6 into master Format update: Adjusted the license description format in all relevant files. Created-by: jiangqi2025 Commit-by: jiangqi Merged-by: turing_project1 Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #123--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!366 | 8 个月前 | |
refactor(swiglu_group_grad): 迁移至 activation 目录 Co-authored-by: ZhouChuping<24171214023@stu.xidian.edu.cn> # message auto-generated for no-merge-commit merge: !9329 merge refactor/swiglu-group-grad-to-activation into master refactor(swiglu_group_grad): 迁移至 activation 目录 Created-by: qq_52056150 Commit-by: ZhouChuping Merged-by: cann-robot Description: ## 描述 迁移swiglu_group_grad至 activation 目录 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> https://gitcode.com/cann/ops-nn/issues/5285 ## 测试 本地进行了白盒、门槛用例的验证,共200条用例无功能性问题,线上进行了david冒烟无异常。 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 更新路径 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移算子至新目录 ## AI/Agent生成声明 <!-- [x] 表示选中 --> - [ ] AI辅助编写 See merge request: cann/ops-nn!9329 | 16 天前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 16 天前 | ||
| 16 天前 | ||
| 18 天前 | ||
| 17 天前 | ||
| 5 天前 | ||
| 17 天前 | ||
| 11 天前 | ||
| 26 天前 | ||
| 10 天前 | ||
| 6 天前 | ||
| 17 天前 | ||
| 16 天前 | ||
| 5 天前 | ||
| 5 天前 | ||
| 11 天前 | ||
| 16 天前 | ||
| 10 天前 | ||
| 16 天前 | ||
| 12 天前 | ||
| 12 天前 | ||
| 6 天前 | ||
| 13 天前 | ||
| 17 天前 | ||
| 6 天前 | ||
| 16 天前 | ||
| 20 天前 | ||
| 20 天前 | ||
| 17 天前 | ||
| 17 天前 | ||
| 17 天前 | ||
| 17 天前 | ||
| 17 天前 | ||
| 16 天前 | ||
| 10 天前 | ||
| 12 天前 | ||
| 11 天前 | ||
| 17 天前 | ||
| 16 天前 | ||
| 12 天前 | ||
| 6 天前 | ||
| 10 天前 | ||
| 5 天前 | ||
| 11 天前 | ||
| 9 天前 | ||
| 16 天前 | ||
| 9 天前 | ||
| 23 天前 | ||
| 9 天前 | ||
| 1 个月前 | ||
| 8 个月前 | ||
| 16 天前 |