| fix: 修复examples中多个算子的内存泄漏及缓冲区越界问题 Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !1261 merge master_issue_handle into master fix: 修复examples中多个算子的内存泄漏及缓冲区越界问题 Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: Closes #719, #723, #724, #725, #731 ## 描述 修复多个算子的内存泄漏及缓冲区越界问题,涉及 example 文件、kernel、aicpu 算子、UT 框架共 24 个文件。 ### 修复分类 | 类别 | 文件数 | 问题 | |------|--------|------| | 内存泄漏 | 18 | new[] 分配后未 delete[],Tensor 构造后 buffer 泄漏 | | 缓冲区越界 | 1 | nms_with_mask.h:sizeof(T) 应为 sizeof(uint8_t),float 类型下读取 4 倍数据 | | 错误处理缺失 | 1 | scale_and_translate_aicpu.cpp:spans 分配/计算失败后未释放已分配内存、返回值未检查 | | 空指针保护 | 1 | c_shell.cpp:realpath 返回值未判空 | | UT 内存泄漏 | 1 | tensor_desc.cpp:ts 数组 + tensor 未释放 | ### 关键修复 | 文件 | 问题 | 修复 | |------|------|------| | nms_with_mask.h | scoresLength * sizeof(T) 当 T=float 时越界读取 4 倍数据 | 改为 sizeof(uint8_t) | | scale_and_translate_aicpu.cpp | spans 分配失败后泄漏 + 返回值不检查 | 每条错误路径补充 cleanup;SWITCH_PARALLEL 改为显式分支并检查返回值 | | 17 个 example 文件 | new[] 分配后 Tensor 构造完未 delete[] | 补充释放 | | c_shell.cpp | realpath(NULL) 返回 NULL 时 crash | 判空 + free | | tensor_desc.cpp | ts 数组 + tensor 泄漏 | 补充释放逻辑 | ### 功能影响 正常执行路径零影响,异常路径从静默吞错改为正确返回错误码。 ## 关联的Issue - #719 - #723 - #724 - #725 - #731 ## 测试 相关功能点都已经经过测试。 ## 文档更新 op_list.md 增加说明。 ## 类型标签 - [x] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!1261 | 2 个月前 |
| fix: Modify the AIDD docs issue Co-authored-by: zwj223<zhangwenjing55@h-partners.com> # message auto-generated for no-merge-commit merge: !1195 merge master into master fix: Modify the AIDD docs issue Created-by: zwj223 Commit-by: zwj223 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修改AIDD扫描的核心资料问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#651](https://gitcode.com/cann/ops-cv/issues/651) ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> op_list.md QUICKSTART.md broadcast关系.md 两段式接口.md aclnn返回码.md ... ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!1195 | 2 个月前 |
| docs: 完善QUICKSTART快速入门文档 Co-authored-by: ayuemoon<15802951036@163.com> # message auto-generated for no-merge-commit merge: !1235 merge docs/improve-quickstart-v3 into master docs: 完善QUICKSTART快速入门文档 Created-by: ayuemoon Commit-by: ayuemoon Merged-by: cann-robot Description: ## 描述 完善 QUICKSTART.md 快速入门文档,补充环境配置说明和算子运行细节,帮助用户更快上手 CANN 算子开发。 具体改动: 1. **添加 CANN 环境变量配置说明**:编译前需 source set_env.sh,避免因找不到 ASCEND_HOME_PATH 导致编译失败 2. **补充算子运行输出说明**:加法输出说明第一个输入从 1.0 递增、第二个输入使用随机数种子 42;乘法输出补充每组结果等于两输入之积的说明 3. **通用化 soc 参数**:--soc=ascend910b → --soc=${soc_version},并添加取值说明,适配不同芯片型号 4. **更新 msprof 命令**:msprof → msprof op,添加算子基础信息打印说明和性能瓶颈提示 5. **补充采集结果路径**:说明结果保存在 OPPROF_* 文件夹,更新 msProf 文档链接 ## 关联的Issue https://gitcode.com/cann/ops-cv/issues/707 ## 测试 - [x] 文档 Markdown 格式检查通过 - [x] 文档中所有命令已在实际环境验证 - [x] 链接跳转正常 ## 文档更新 本次 PR 本身就是文档更新,修改文件: ## 类型标签 - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!1235 | 2 个月前 |
| cannsim改名为npusim Co-authored-by: liangbinglong<liangbinglong@huawei.com> # message auto-generated for no-merge-commit merge: !1241 merge master into master cannsim改名为npusim Created-by: liangbinglong Commit-by: liangbinglong Merged-by: cann-robot Description: ## 描述 经TSC评审,cannsim工具正式更名为npusim,相关命令行、资料同步刷新,cannsim作为别名兼容一段时间,需要尽快切换 ## 关联的Issue NA ## 测试 使用最新链接版本测试,相关命令行已经全部更名为npusim ## 文档更新 更新doc下面的调优部分文件 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!1241 | 2 个月前 |