| fix: 恢复 TransData 的 aclnn 示例 Co-authored-by: xujiachen8<xujiachen8@h-partners.com> # message auto-generated for no-merge-commit merge: !5712 merge transdata-examples into master fix: 恢复 TransData 的 aclnn 示例 Created-by: xujiachen8 Commit-by: xujiachen8 Merged-by: cann-robot Description: ## 描述 TransData 的 aclnn 示例在 main 开头直接 return 0,实际未调用接口。本次恢复三个矩阵乘权重相关示例的执行,并修复运行时暴露的问题: - CalculateMatmulWeightSize:使用正确的 FP16 数据表示及回读字节数。 - CalculateMatmulWeightSize、TransMatmulWeight:按查询容量分配设备内存,按实际主机数据长度拷贝,避免对齐容量导致主机越界读取;释放查询数组。 - CalculateMatmulWeightSizeV2:独立验证 INT8 权重容量查询和转换,移除在 A5 上因 ND/NZ 格式要求不一致而失败的下游量化矩阵乘流程。 - 删除 CalculateConvolutionWeightSize 和 TransConvolutionWeight 两个独立示例文件;接口实现、API 文档与 UT 保留。 ## 关联的Issue 关联 #3173:https://gitcode.com/cann/ops-math/issues/3173 本 PR 处理 TransData 示例部分;ConfusionTransposeD 示例由 PR !5692 处理。 ## 测试 在 Ascend950(A5)、CANN 9.2.0 环境下,三个保留示例均编译运行成功,退出码均为 0: - CalculateMatmulWeightSize:256 个输出均为 32。 - CalculateMatmulWeightSizeV2:容量为 1024 bytes,权重转换数据检查 PASS。 - TransMatmulWeight:256 个输出均为 32。 使用独立 CMake 工程链接已安装的完整 libopapi 进行验证。仓库原生 build.sh 示例入口仅链接 libopapi_math,运行本组示例时存在 aclnnMm/aclnnMmGetWorkspaceSize 链接缺失,本 PR 未修改通用构建脚本。未重新编译安装仓库算子包;上述固定输入验证不替代完整算子 UT 或布局泛化测试。 git diff --check 通过;提交中的三个示例源码哈希与上述测试版本一致。 ## 文档更新 无。 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!5712 | 1 month ago |