Merge blocked
ascend docs pipeline is running...


aclnn 反向函数原型把 dU 写在 dX 前面,和算子实际输出顺序相反,照着写会静默交换两路梯度
问题描述:原型里的输出参数是 dU, dX, dWeight, dBias(本行到 L33),但 OpDef 注册顺序是 d_x → d_u → d_weight → d_bias,plugin 实际调用也是 ... maskCont, eps, dropoutRatio, dX, dU, dWeight, dBias;同一篇文档下面的参数表(L61-L64)顺序也是 dX 在前、dU 在后,只有函数原型是反的。d_x 和 d_u 的 shape、dtype 完全相同,顺序写反编译器不报错、运行也不报错,调用方拿到的是两路互换的梯度,训练时表现为「x 的梯度和 u 的梯度对不上」,很难查。另外 eps/dropoutRatio 在生成的 aclnn 接口里是 double(plugin 注释「aclnn 生成的接口 Float 属性为 double,直接透传」),文档写成 float 与实物不符。
建议:原型改成 ... const aclTensor *mask, double eps, double dropoutRatio, const aclTensor *dX, const aclTensor *dU, const aclTensor *dWeight, const aclTensor *dBias, ...;前向 aclnn 文档 L33-L34 的 float eps/float dropoutRatio 也一起核对。


反向 README 的公式和 kernel 实际算法对不上:dropout 是带缩放的,mask 也不是「1 表示丢弃」
问题描述:本行到 L21 写的是 d_u = d_out * ln_ret * (1 - drop_mask) 等,但 kernel 用的是 probValue = 1 - dropoutRatio 加 DropOut<float, false, 3>,第二个模板参数 isNoDiv=false 表示要除以 (1-p),mask 中 1 表示保留;前向 kernel 同样用 isNoDiv=false,对应 PyTorch 的倒置 dropout 语义。按文档的 (1 - drop_mask) 且没有 1/(1-p) 去实现或校验,p 不为 0 时 d_u、d_x、d_weight、d_bias 全部和实物不一致,误差随 p 放大;用这份公式写的 golden 会把正确实现判成错误。drop_mask 这个命名也容易让人以为 1 表示丢弃,和 mask 位图的实际含义正好相反。
建议:公式改成 keep = mask / (1 - dropout_ratio),四行都用 keep 乘上去,例如 d_u = d_out * keep * ln_ret;并在参数表里写清「bit=1 表示该元素保留,kernel 内部按 1/(1-p) 缩放」。


已修改
README 里指向的示例、用例、插件文件在当前分支都不存在,链接现在是死的
问题描述:本行和 L79 指向的 examples/torch/test_torch_norm_multiply_dropout_forward.py、test/pytest/test_norm_multiply_dropout_forward.py 来自 #234/#235,反向 README L66-L67 和 aclnn 反向文档 L99 指向的插件文件来自 #233;当前分支这几个目录只有 README 和 docs,点进去都是 404。这个 README 是用户第一眼看到的东西,先合入的话「torch 调用示例」「aclnn 调用示例」全部失效;如果之后 #234/#235 改了文件路径或名字,也没人会发现链接对不上。
建议:在 PR 描述里写明依赖 #233/#234/#235 的合入顺序,或者等代码 PR 合入后再提这份文档,让链接一落地就是通的。


Thanks for your pull-request.
The full list of commands accepted by me can be found at here.
You can get sig-info at here.
You can self-configure the PR merge rules for this repository. For more details, please refer to Here.
PR Approval Progress
⚠️ This PR does not yet meet the following requirements:lgtm (requires ≥ 2 person(s) per module)、approve (requires ≥ 1 person(s) per module)
Module Approval Details
| module | lgtm status | approve status |
|---|---|---|
| repo-Ascend/ops-rec | ❌ (0/2)(You can also ask: imhandsome1, zhang-jinyuan30074502, CUIZIBO, obl1vious, B1anrK) | ❌ (0/1)(You can also ask: hjj12345678_, 项攀霄, 黄诗磊, tqy1998, 蒋皓洋) |
💡 Tip:
- Committer can comment
/approveor/lgtm- Commenting
/approveimplies both code review (lgtm) and intent to merge (approve)
CLA Signature Pass
huiyangpeng, thanks for your pull request. All authors of the commits have signed the CLA. 👍


ascend docs pipeline is running...


❌ 文档门禁未通过!
| 检查项 | 检查结果 | 详情 |
|---|---|---|
| markdownlint | ✅ 已通过 | 查看详情 |
| link-validity-check | ❌ 未通过 | 查看详情 |
| resource-existence-check | ✅ 已通过 | 查看详情 |
| tag-closed-check | ✅ 已通过 | 查看详情 |
💡 本次检查出 8 项错误,详情内容如下:
| 序号 | 错误详情 |
|---|---|
| 1 | [文件路径]:ascendc/activation/norm_multiply_dropout/norm_multiply_dropout_backward/README.md [检查类型]:link-validity-check [错误位置]:第 66 行 [错误信息]:本地路径链接无法访问 [错误内容]: ./examples/torch/test_torch_norm_multiply_dropout_backward.py |
| 2 | [文件路径]:ascendc/activation/norm_multiply_dropout/norm_multiply_dropout_backward/README.md [检查类型]:link-validity-check [错误位置]:第 67 行 [错误信息]:本地路径链接无法访问 [错误内容]: ./test/pytest/test_norm_multiply_dropout_backward.py |
| 3 | [文件路径]:ascendc/activation/norm_multiply_dropout/norm_multiply_dropout_backward/docs/aclnn_norm_multiply_dropout_backward.md [检查类型]:link-validity-check [错误位置]:第 99 行 [错误信息]:本地路径链接无法访问 [错误内容]: ../../torch_extension/norm_multiply_dropout_backward_plugin.cpp |
| 4 | [文件路径]:ascendc/activation/norm_multiply_dropout/norm_multiply_dropout_backward/docs/torch_norm_multiply_dropout_backward.md [检查类型]:link-validity-check [错误位置]:第 66 行 [错误信息]:本地路径链接无法访问 [错误内容]: ../test/pytest/test_norm_multiply_dropout_backward.py |
| 5 | [文件路径]:ascendc/activation/norm_multiply_dropout/norm_multiply_dropout_forward/README.md [检查类型]:link-validity-check [错误位置]:第 78 行 [错误信息]:本地路径链接无法访问 [错误内容]: ./examples/torch/test_torch_norm_multiply_dropout_forward.py |
| 6 | [文件路径]:ascendc/activation/norm_multiply_dropout/norm_multiply_dropout_forward/README.md [检查类型]:link-validity-check [错误位置]:第 79 行 [错误信息]:本地路径链接无法访问 [错误内容]: ./test/pytest/test_norm_multiply_dropout_forward.py |
| 7 | [文件路径]:ascendc/activation/norm_multiply_dropout/norm_multiply_dropout_forward/docs/aclnn_norm_multiply_dropout.md [检查类型]:link-validity-check [错误位置]:第 101 行 [错误信息]:本地路径链接无法访问 [错误内容]: ../../torch_extension/norm_multiply_dropout_plugin.cpp |
| 8 | [文件路径]:ascendc/activation/norm_multiply_dropout/norm_multiply_dropout_forward/docs/torch_norm_multiply_dropout.md [检查类型]:link-validity-check [错误位置]:第 83 行 [错误信息]:本地路径链接无法访问 [错误内容]: ../test/pytest/test_norm_multiply_dropout_forward.py |


| 阶段 | 任务名 | 状态 | 详情 |
|---|---|---|---|
| 编译构建 | PR-build-SAST-check | ✅ COMPLETED | >>> |
| Build-2.7.1_arm | ❌ FAILED | >>> | |
| Build-2.10.0_arm | ❌ FAILED | >>> | |
| Build-2.7.1_X86 | ❌ FAILED | >>> | |
| Build-2.10.0_X86 | ❌ FAILED | >>> | |
| 恶意代码检查 | Antipoison | ✅ COMPLETED | >>> |
| 编码安全与规范检查 | pre-commit | ❌ FAILED | >>> |
| clang-tidy | ✅ COMPLETED | >>> | |
| 开源片段检查 | SCA | ✅ COMPLETED | >>> |
| 开发者测试 | presmoke | ✅ COMPLETED | >>> |
| 流水线 | PR-pipeline_ops-rec | ❌ FAILED | >>> |
- compile : 运行流水线
- retry : 重试流水线所有失败子任务
- retry <任务名> : 仅重试指定失败子任务
- stop : 停止流水线


合入来源
问题/功能描述
norm_multiply_dropout 算子迁移(系列 PR 6/6,收尾):算子全部文档与 SOC 白名单接入。
修改方案描述
docs/zh/ops_rec_api.md索引补充 norm_multiply_dropout 前反向算子说明与目录结构cmake/soc_ops_config.cmake将 norm_multiply_dropout 加入 atlas_950 / atlas_a3 / atlas_a2 三份算子白名单(本 PR 合入后算子在三个 SOC 变体上生效).gitignore补充构建产物忽略规则是否涉及UT/ST
开发自检