| Files | Last commit | Last update |
|---|---|---|
fix(global_lp_pool): 补齐 tiling 异常/维护日志并消除魔法数字 Co-authored-by: andong_hw<andong2@huawei.com> # message auto-generated for no-merge-commit merge: !11954 merge fix-global-lp-pool-tiling-log into master fix(global_lp_pool): 补齐 tiling 异常/维护日志并消除魔法数字 Created-by: andong_hw Commit-by: andong_hw Merged-by: cann-robot Description: ## 描述 跟进 PR #11881(已合入)的 review 意见("很多魔鬼数字"、异常缺少日志),对 GlobalLpPool arch35 tiling 做可维护性整改(无计算路径变化): 1. **异常路径全量补日志**:GetPlatformInfoFromCtx / GetShapeAttrsInfo / ComputeAUbFactor / ComputeRUbFactor / ExpandAIfRFullyLoaded / ComputeAraTiling / ComputeNormalTiling / ComputeEmptyTiling / FillAndLogTilingData / ComputeTiling 的每个失败分支均输出含参数与原因的日志( OP_LOGE 或 OP_LOGE_FOR_INVALID_{ARGUMENT,DTYPE,SHAPEDIM}_WITH_REASON),风格对齐 reduction 范式 example(euclidean_norm tiling)。 2. **维护性日志**:新增入口与路由打点(EMPTY_A/EMPTY_R/ARA/AR)、各切分阶段 OP_LOGD(platform/input/FusedAxis/ComputeRUbFactor/ExpandA);FillAndLogTilingData 由单行扩为全量 INFO dump(pattern / split / loop / multicore / ub / attr 分段)。 3. **消除魔法数字**:新增 host/kernel 共享命名常量 GLLP_MAX_AXIS_NUM / GLLP_AXIS_INTERVAL / GLLP_AXIS_NUM_AR / GLLP_AXIS_NUM_ARA(axisShape/axisStride 数组长度、A/R 规整间距、模式轴数统一引用),kernel isTailR 运行期判定改用 GLLP_AXIS_INTERVAL;host 侧 DIM_NUM_4D/5D、MAX_SHAPE_DIM、FP32_SIZE 命名化。 4. **消除硬编码 32B 元素数**:cacheLevelStride / EMPTY_A / EMPTY_R 原 BLOCK_F32 = 32/sizeof(float) 改为按平台 blockSize 计算。 ## 关联的Issue Closes #6680 ## 测试 - 构建:bash build.sh --pkg --soc=ascend950 --ops=global_lp_pool -j32 通过,本地安装验证; - 聚焦回归 97 条 GEIR 全 PASS:受影响(R==1 且 A<一个 block)24 条 24/24、workdir18 18/18、ST 30/30、L0 24/24、perf c_s_008 1/1(cst_perf_us 22.7us,修复前 252.4us); - 抽查在 ttk 72ab72b 与 4b161e1 两个版本下均 PASS;前序全量 913 条回归(功能集零回退)已在 #11881 完成。 ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:可维护性整改(日志补齐 + 魔法数字消除),无行为变化 ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!11954 | 27 days ago | |
feat(pooling): add GlobalLpPool operator Co-authored-by: weixin_51153241<fanjie43@huawei.com> # message auto-generated for no-merge-commit merge: !6398 merge feature/add-global-lp-pool into master feat(pooling): add GlobalLpPool operator Created-by: weixin_51153241 Commit-by: weixin_51153241 Merged-by: cann-robot Description: ## 算子说明 Global LP Pool — 计算输入张量空间维度的 Lp 范数: y = (sum(|x|^p))^(1/p), keepdims=True ## 支持规格 - 输入: 4D (NCHW) 或 5D (NCD0D1D2) - DTypes: FP32, FP16, BF16 - 属性: p (float, 默认 2.0) - 架构: ascend950/arch35 - 接口: aclnn_exclude (直调) ## 文件清单 (20 files) - op_kernel/ — VF 级 kernel 实现 (双缓冲 + 二分归约树 + |x|^p + (1/p) root) - op_host/ — Tiling (ubFactor, 多核切分, cacheBuf 约束, empty tensor 分支) - op_graph/ — Proto 定义 - tests/ — Tiling 单测 (5 用例: 4D/5D/大通道/空张量) - README.md — 算子说明 See merge request: cann/ops-nn!6398 | 4 months ago |
| Files | Last commit | Last update |
|---|---|---|
| 27 days ago | ||
| 4 months ago |