文件最后提交记录最后更新时间
D&C Fix Communication Engine Index Co-authored-by: gitcode_lijd<lijiandong20@huawei.com> # message auto-generated for no-merge-commit merge: !5261 merge fix_2 into master D&C Fix Communication Engine Index Created-by: gitcode_lijd Commit-by: gitcode_lijd Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-transformer/issues/2385 <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> **检视文件**:mc2_tiling_utils.h **修改内容**:修改 A5_CCU_ENGINE 常量值(5 → 0) **规范来源**:cpp-secure.md、cpp-general.md --- ## 修改内容说明 ### 本次修改的目的 将 A5 芯片的通信引擎配置从 CCU_MS(值5)改为默认值(值0)。 ### 原方案 **常量定义**: ```cpp constexpr uint8_t A5_CCU_ENGINE = 5; // CCU_MS引擎类型 ``` **注释说明**: ```cpp /** 当前通信API未提供枚举,后续会提供 0:默认值 1:HOST_TS(A2/3支持 A5不支持)2:AICPU_TS(A2/3支持 A5不支持) 3:AIV 4:AIV_ONLY(A2/3支持 A5不支持) 5:CCU_MS(A2/3支持 A5不支持) 6:CCU_SCHED(A2/3支持 A5不支持) 7:AICPU_UB/ROCE(A5不支持) **/ ``` ### 新方案 **修改点**: ```cpp constexpr uint8_t A5_CCU_ENGINE = 0; // 改为COMM_ALG_DEFAULT ``` **使用场景**(arch35目录下两个算子): - moe_distribute_dispatch_v2_tiling_arch35.cpp:845 - moe_distribute_combine_tiling_arch35.cpp:679 ```cpp mc2CcTilingConfig.SetCommEngine(mc2tiling::A5_CCU_ENGINE); ``` --- ## 问题列表 | 序号 | 级别 | 问题描述 | 行号 | 规范条款 | |-----|------|---------|-----|---------| | 1 | 中 | 常量命名与实际值语义不符 | 10,23 | 规范4.2 | | 2 | 低 | 缺少修改说明和原因 | 全文件 | 规范1.3 | --- ## 问题详情 ### 1. 常量命名与实际值语义不符 [中风险] **假设检验过程**: - **H0**:修改后常量语义清晰,不影响理解 - **H1**:常量名称与值不匹配,可能导致误解 - **自信值初始化**:0% **证据收集**: 1. **规范违反** (+40%): - 规范 4.2(cpp-general.md):禁止使用魔鬼数字/字符串,常量命名应体现语义 - 原定义:A5_CCU_ENGINE = 5,名称明确表示"CCU引擎",值5对应注释中的"CCU_MS" - 新定义:A5_CCU_ENGINE = 0,名称仍为"CCU引擎",但值0是"默认值"(COMM_ALG_DEFAULT) - 命名与值语义不符:A5_CCU_ENGINE 暗示CCU引擎,但值0是默认值 2. **上下文防御缺失** (+30%): - 未修改注释说明,注释仍显示"5:CCU_MS" - 新值为0,但注释中0的含义是"默认值",不是CCU引擎 3. **数据流追踪风险** (+25%): - 使用场景在arch35目录(A5芯片相关),调用 SetCommEngine(A5_CCU_ENGINE) - 如果A5不支持CCU_MS(值5),改为默认值(值0)是合理的 - 但常量名称应改为 A5_DEFAULT_ENGINE 或类似命名 **自信值**:95%(超过60%,判定为中风险) **风险代码**: ```cpp // 5159.diff 第10、23行 -constexpr uint8_t A5_CCU_ENGINE = 5; +constexpr uint8_t A5_CCU_ENGINE = 0; ``` **建议修复方案**: **方案A**:修改常量名称以匹配语义 ```cpp // 如果A5不支持CCU,使用默认引擎 constexpr uint8_t A5_DEFAULT_ENGINE = 0; // 或 A5_COMM_DEFAULT ``` **方案B**:保留名称,但更新注释说明 ```cpp /** 当前通信API未提供枚举,后续会提供 0:默认值(A5使用) 1:HOST_TS(A2/3支持) 2:AICPU_TS(A2/3支持) 3:AIV 4:AIV_ONLY(A2/3支持) 5:CCU_MS(A2/3支持,A5不支持) 6:CCU_SCHED(A2/3支持) 7:AICPU_UB/ROCE(A5不支持) **/ constexpr uint8_t A5_CCU_ENGINE = 0; // A5使用默认引擎,不支持CCU ``` --- ### 2. 缺少修改说明和原因 [低风险] **假设检验过程**: - **H0**:修改有明确的设计意图 - **H1**:修改原因未说明,影响可维护性 - **自信值初始化**:0% **证据收集**: 1. **规范违反** (+40%): - 规范 1.3(cpp-general.md):删除无效、冗余或永不执行的代码需说明原因 - 修改常量值属于重要配置变更,应说明修改原因 2. **上下文防御缺失** (+30%): - diff 中仅修改值,无commit message或注释说明原因 - 从注释"CCU_MS(A2/3支持 A5不支持)"推断:可能因A5不支持CCU而改为默认值 3. **数据流追踪风险** (+25%): - 修改影响通信引擎配置,可能影响性能和功能 - 应说明:为何A5不能用CCU_MS、改为0后的影响 **自信值**:95%(超过60%,判定为低风险) **建议修复方案**: - 在commit message中说明:"A5芯片不支持CCU_MS引擎,改为使用默认通信引擎配置" - 或在代码注释中补充说明 --- ## 总结 **修改合理性分析**: - 从注释"A5不支持CCU_MS"推断,修改可能合理(A5不支持值5,改用默认值0) - 但存在命名和语义不符问题 **建议**: 1. 修改常量名称为 A5_DEFAULT_ENGINE 或更新注释说明语义变更 2. 补充修改原因说明,提高可维护性 --- See merge request: cann/ops-transformer!526120 天前
remove socversion Co-authored-by: wuchenhao123<wuchenhao6@huawei.com> # message auto-generated for no-merge-commit merge: !1629 merge master into master remove socversion Created-by: wuchenhao123 Commit-by: wuchenhao123 Merged-by: cann-robot Description: ## 描述 1.删除experimental/mc2里3rd目录和comm目录无依赖文件 2.修改experimental/mc2里socversion字段,删除aclnn和tiling中a2接口 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [x] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-transformer!16293 个月前
调整common目录结构 Co-authored-by: hello_simida<wangyi206@huawei.com> # message auto-generated for no-merge-commit merge: !2465 merge master_v3 into master 调整common目录结构 Created-by: hello_simida Commit-by: hello_simida Merged-by: cann-robot Description: ## 描述 调整common目录调整 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-transformer!24652 个月前