| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
Fix: 修复30个issue(#13-#28,#30-#42, #63)) Co-authored-by: Tian_1122<tianjunhan@h-partners.com> # message auto-generated for no-merge-commit merge: !19 merge master into master Fix: 修复30个issue(#13-#28,#30-#42, #63)) Created-by: Tian_1122 Commit-by: Tian_1122 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本 PR 修复了 ops-solver 仓库中 30 个 issue(#13-#28, #30-#42, #63),涉及除零保护、资源泄漏修复、参数校验、测试用例修正、新建测试目录等问题。#13 和 #33 经分析为误报。具体修复内容: - src/utils/assert.h:#18 CHECK_ACLRT 宏从 exit(EXIT_FAILURE) 改为 cleanup_action 模式,6 个 host 文件用 lambda 封装资源清理,ACL 运行时出错时清理已分配资源后返回错误码;#31 删除全局未使用的 RT_CHECK 宏 - src/sgetrf/kernel/getf2.hpp:#32 修正 FreeTensor 释放错误 tensor(dstLocal1→dstLocal0);移除 LUCustom2 中 assert(blockM >= blockN) 约束 - src/cgetri/cgetri_kernel.cpp:#17 workspace 初始化为 nullptr - src/cgetrf/cgetrf_host.cpp:#18 lambda cleanup;#14 numBlocks 固定 20;#30 参数校验;#24 GenerateGather N=0 保护;#25/#27 lda/info 标记未启用;ipiv 输出改为 1-based 索引(配合 #40) - src/sgetrf/sgetrf_host.cpp:#18 lambda cleanup;#14/#34 numBlocks 固定 20;#30 参数校验;#25/#27 lda/info 标记未启用;ipiv 输出改为 1-based 索引(配合 #40) - src/cgetri/cgetri_host.cpp:#18 lambda cleanup;#30 参数校验;#24 N=0 保护;numBlocks 上限钳制为 20;#25/#27 lda/info 标记未启用 - src/sgetri/sgetri_host.cpp:#18 lambda cleanup;#30 参数校验;#35 memset size 修正;numBlocks 上限钳制为 20;#25/#27 lda/info 标记未启用 - src/cgetri_batched/cgetri_batched_host.cpp:#18 lambda cleanup;#16 补充 workSpace aclrtFree;#36 sync 包裹 CHECK_ACLRT;#25/#27/#28 lda/info 仅提示不返回;n>=32 边界修正 - src/cmatinv_batched/cmatinv_batched_host.cpp:#18 lambda cleanup;#20 移除未启用的 d_info 设备内存分配(消除泄漏);#36 sync 包裹 CHECK_ACLRT;GetCoreNumAic 改为 GetCoreNumAiv(匹配 AIV_ONLY 内核);numBlocks 上限钳制为 40;#25/#27/#28 lda/info 仅提示不返回;n>=32 边界修正 - CMakeLists.txt:#19 默认构建类型从 Debug FORCE 改为 Release - test/cgetri/data/gen_data.py、test/sgetri/data/gen_data.py:#23 shuffle 移至对角占优之前 - test/cgetrf/cgetrf_test.cpp 等 4 个 test cpp:#37 info 指针初始化 - test/cgetrf/data/verify_result.py 等 5 个 verify_result.py:#38 移除重复 total_different;#39 移除未使用参数 w;#40 sgetrf pivot 检查对齐 cgetrf(改为 1-based 索引);#41 index==32 改为 index>=32;#42 tolrence 拼写修正 - *test/cgetri_batched/*:#63 新建完整测试目录(CMakeLists.txt、cgetri_batched_test.cpp、gen_data.py、verify_result.py、README.md) - docs/zh/cmatinv_batched.md、docs/zh/cgetri_batched.md:n>=32 转调边界修正 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> [#13](https://gitcode.com/cann/ops-solver/issues/13) [#14](https://gitcode.com/cann/ops-solver/issues/14) [#15](https://gitcode.com/cann/ops-solver/issues/15) [#16](https://gitcode.com/cann/ops-solver/issues/16) [#17](https://gitcode.com/cann/ops-solver/issues/17) [#18](https://gitcode.com/cann/ops-solver/issues/18) [#19](https://gitcode.com/cann/ops-solver/issues/19) [#20](https://gitcode.com/cann/ops-solver/issues/20) [#21](https://gitcode.com/cann/ops-solver/issues/21) [#22](https://gitcode.com/cann/ops-solver/issues/22) [#23](https://gitcode.com/cann/ops-solver/issues/23) [#24](https://gitcode.com/cann/ops-solver/issues/24) [#25](https://gitcode.com/cann/ops-solver/issues/25) [#26](https://gitcode.com/cann/ops-solver/issues/26) [#27](https://gitcode.com/cann/ops-solver/issues/27) [#28](https://gitcode.com/cann/ops-solver/issues/28) [#30](https://gitcode.com/cann/ops-solver/issues/30) [#31](https://gitcode.com/cann/ops-solver/issues/31) [#32](https://gitcode.com/cann/ops-solver/issues/32) [#33](https://gitcode.com/cann/ops-solver/issues/33) [#34](https://gitcode.com/cann/ops-solver/issues/34) [#35](https://gitcode.com/cann/ops-solver/issues/35) [#36](https://gitcode.com/cann/ops-solver/issues/36) [#37](https://gitcode.com/cann/ops-solver/issues/37) [#38](https://gitcode.com/cann/ops-solver/issues/38) [#39](https://gitcode.com/cann/ops-solver/issues/39) [#40](https://gitcode.com/cann/ops-solver/issues/40) [#41](https://gitcode.com/cann/ops-solver/issues/41) [#42](https://gitcode.com/cann/ops-solver/issues/42) [#63](https://gitcode.com/cann/ops-solver/issues/63) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 编译通过(bash build.sh --soc=ascend910b),6 个算子全部编译成功。默认测试 bash build.sh --run 6/6 通过。精度测试 cgetrf/sgetrf 10 种尺寸(4~160)×2 算子 20/20 通过。异常测试构造 100000×100000 超大矩阵触发 malloc 失败,4 个算子均返回错误码不 exit,cleanup 正常执行,后续正常调用成功 6/6 通过。除零测试构造奇异矩阵(重复行),cgetrf/sgetrf 25 种尺寸×2 算子 50/50 无 NaN/Inf,正常矩阵对照 50/50 精度不受影响。边界测试 n=31(cmatinv 路径)、n=32(cgetri 路径)、n=33 均通过。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/zh/cmatinv_batched.md:n>=32 转调说明修正 docs/zh/cgetri_batched.md:n 约束从"大于32"改为"大于等于32" test/cgetri_batched/README.md:新建算子说明文档 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-solver!19 | 11 天前 | |
Fix: 修复30个issue(#13-#28,#30-#42, #63)) Co-authored-by: Tian_1122<tianjunhan@h-partners.com> # message auto-generated for no-merge-commit merge: !19 merge master into master Fix: 修复30个issue(#13-#28,#30-#42, #63)) Created-by: Tian_1122 Commit-by: Tian_1122 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本 PR 修复了 ops-solver 仓库中 30 个 issue(#13-#28, #30-#42, #63),涉及除零保护、资源泄漏修复、参数校验、测试用例修正、新建测试目录等问题。#13 和 #33 经分析为误报。具体修复内容: - src/utils/assert.h:#18 CHECK_ACLRT 宏从 exit(EXIT_FAILURE) 改为 cleanup_action 模式,6 个 host 文件用 lambda 封装资源清理,ACL 运行时出错时清理已分配资源后返回错误码;#31 删除全局未使用的 RT_CHECK 宏 - src/sgetrf/kernel/getf2.hpp:#32 修正 FreeTensor 释放错误 tensor(dstLocal1→dstLocal0);移除 LUCustom2 中 assert(blockM >= blockN) 约束 - src/cgetri/cgetri_kernel.cpp:#17 workspace 初始化为 nullptr - src/cgetrf/cgetrf_host.cpp:#18 lambda cleanup;#14 numBlocks 固定 20;#30 参数校验;#24 GenerateGather N=0 保护;#25/#27 lda/info 标记未启用;ipiv 输出改为 1-based 索引(配合 #40) - src/sgetrf/sgetrf_host.cpp:#18 lambda cleanup;#14/#34 numBlocks 固定 20;#30 参数校验;#25/#27 lda/info 标记未启用;ipiv 输出改为 1-based 索引(配合 #40) - src/cgetri/cgetri_host.cpp:#18 lambda cleanup;#30 参数校验;#24 N=0 保护;numBlocks 上限钳制为 20;#25/#27 lda/info 标记未启用 - src/sgetri/sgetri_host.cpp:#18 lambda cleanup;#30 参数校验;#35 memset size 修正;numBlocks 上限钳制为 20;#25/#27 lda/info 标记未启用 - src/cgetri_batched/cgetri_batched_host.cpp:#18 lambda cleanup;#16 补充 workSpace aclrtFree;#36 sync 包裹 CHECK_ACLRT;#25/#27/#28 lda/info 仅提示不返回;n>=32 边界修正 - src/cmatinv_batched/cmatinv_batched_host.cpp:#18 lambda cleanup;#20 移除未启用的 d_info 设备内存分配(消除泄漏);#36 sync 包裹 CHECK_ACLRT;GetCoreNumAic 改为 GetCoreNumAiv(匹配 AIV_ONLY 内核);numBlocks 上限钳制为 40;#25/#27/#28 lda/info 仅提示不返回;n>=32 边界修正 - CMakeLists.txt:#19 默认构建类型从 Debug FORCE 改为 Release - test/cgetri/data/gen_data.py、test/sgetri/data/gen_data.py:#23 shuffle 移至对角占优之前 - test/cgetrf/cgetrf_test.cpp 等 4 个 test cpp:#37 info 指针初始化 - test/cgetrf/data/verify_result.py 等 5 个 verify_result.py:#38 移除重复 total_different;#39 移除未使用参数 w;#40 sgetrf pivot 检查对齐 cgetrf(改为 1-based 索引);#41 index==32 改为 index>=32;#42 tolrence 拼写修正 - *test/cgetri_batched/*:#63 新建完整测试目录(CMakeLists.txt、cgetri_batched_test.cpp、gen_data.py、verify_result.py、README.md) - docs/zh/cmatinv_batched.md、docs/zh/cgetri_batched.md:n>=32 转调边界修正 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> [#13](https://gitcode.com/cann/ops-solver/issues/13) [#14](https://gitcode.com/cann/ops-solver/issues/14) [#15](https://gitcode.com/cann/ops-solver/issues/15) [#16](https://gitcode.com/cann/ops-solver/issues/16) [#17](https://gitcode.com/cann/ops-solver/issues/17) [#18](https://gitcode.com/cann/ops-solver/issues/18) [#19](https://gitcode.com/cann/ops-solver/issues/19) [#20](https://gitcode.com/cann/ops-solver/issues/20) [#21](https://gitcode.com/cann/ops-solver/issues/21) [#22](https://gitcode.com/cann/ops-solver/issues/22) [#23](https://gitcode.com/cann/ops-solver/issues/23) [#24](https://gitcode.com/cann/ops-solver/issues/24) [#25](https://gitcode.com/cann/ops-solver/issues/25) [#26](https://gitcode.com/cann/ops-solver/issues/26) [#27](https://gitcode.com/cann/ops-solver/issues/27) [#28](https://gitcode.com/cann/ops-solver/issues/28) [#30](https://gitcode.com/cann/ops-solver/issues/30) [#31](https://gitcode.com/cann/ops-solver/issues/31) [#32](https://gitcode.com/cann/ops-solver/issues/32) [#33](https://gitcode.com/cann/ops-solver/issues/33) [#34](https://gitcode.com/cann/ops-solver/issues/34) [#35](https://gitcode.com/cann/ops-solver/issues/35) [#36](https://gitcode.com/cann/ops-solver/issues/36) [#37](https://gitcode.com/cann/ops-solver/issues/37) [#38](https://gitcode.com/cann/ops-solver/issues/38) [#39](https://gitcode.com/cann/ops-solver/issues/39) [#40](https://gitcode.com/cann/ops-solver/issues/40) [#41](https://gitcode.com/cann/ops-solver/issues/41) [#42](https://gitcode.com/cann/ops-solver/issues/42) [#63](https://gitcode.com/cann/ops-solver/issues/63) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 编译通过(bash build.sh --soc=ascend910b),6 个算子全部编译成功。默认测试 bash build.sh --run 6/6 通过。精度测试 cgetrf/sgetrf 10 种尺寸(4~160)×2 算子 20/20 通过。异常测试构造 100000×100000 超大矩阵触发 malloc 失败,4 个算子均返回错误码不 exit,cleanup 正常执行,后续正常调用成功 6/6 通过。除零测试构造奇异矩阵(重复行),cgetrf/sgetrf 25 种尺寸×2 算子 50/50 无 NaN/Inf,正常矩阵对照 50/50 精度不受影响。边界测试 n=31(cmatinv 路径)、n=32(cgetri 路径)、n=33 均通过。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/zh/cmatinv_batched.md:n>=32 转调说明修正 docs/zh/cgetri_batched.md:n 约束从"大于32"改为"大于等于32" test/cgetri_batched/README.md:新建算子说明文档 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-solver!19 | 11 天前 | |
Fix: 修复30个issue(#13-#28,#30-#42, #63)) Co-authored-by: Tian_1122<tianjunhan@h-partners.com> # message auto-generated for no-merge-commit merge: !19 merge master into master Fix: 修复30个issue(#13-#28,#30-#42, #63)) Created-by: Tian_1122 Commit-by: Tian_1122 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本 PR 修复了 ops-solver 仓库中 30 个 issue(#13-#28, #30-#42, #63),涉及除零保护、资源泄漏修复、参数校验、测试用例修正、新建测试目录等问题。#13 和 #33 经分析为误报。具体修复内容: - src/utils/assert.h:#18 CHECK_ACLRT 宏从 exit(EXIT_FAILURE) 改为 cleanup_action 模式,6 个 host 文件用 lambda 封装资源清理,ACL 运行时出错时清理已分配资源后返回错误码;#31 删除全局未使用的 RT_CHECK 宏 - src/sgetrf/kernel/getf2.hpp:#32 修正 FreeTensor 释放错误 tensor(dstLocal1→dstLocal0);移除 LUCustom2 中 assert(blockM >= blockN) 约束 - src/cgetri/cgetri_kernel.cpp:#17 workspace 初始化为 nullptr - src/cgetrf/cgetrf_host.cpp:#18 lambda cleanup;#14 numBlocks 固定 20;#30 参数校验;#24 GenerateGather N=0 保护;#25/#27 lda/info 标记未启用;ipiv 输出改为 1-based 索引(配合 #40) - src/sgetrf/sgetrf_host.cpp:#18 lambda cleanup;#14/#34 numBlocks 固定 20;#30 参数校验;#25/#27 lda/info 标记未启用;ipiv 输出改为 1-based 索引(配合 #40) - src/cgetri/cgetri_host.cpp:#18 lambda cleanup;#30 参数校验;#24 N=0 保护;numBlocks 上限钳制为 20;#25/#27 lda/info 标记未启用 - src/sgetri/sgetri_host.cpp:#18 lambda cleanup;#30 参数校验;#35 memset size 修正;numBlocks 上限钳制为 20;#25/#27 lda/info 标记未启用 - src/cgetri_batched/cgetri_batched_host.cpp:#18 lambda cleanup;#16 补充 workSpace aclrtFree;#36 sync 包裹 CHECK_ACLRT;#25/#27/#28 lda/info 仅提示不返回;n>=32 边界修正 - src/cmatinv_batched/cmatinv_batched_host.cpp:#18 lambda cleanup;#20 移除未启用的 d_info 设备内存分配(消除泄漏);#36 sync 包裹 CHECK_ACLRT;GetCoreNumAic 改为 GetCoreNumAiv(匹配 AIV_ONLY 内核);numBlocks 上限钳制为 40;#25/#27/#28 lda/info 仅提示不返回;n>=32 边界修正 - CMakeLists.txt:#19 默认构建类型从 Debug FORCE 改为 Release - test/cgetri/data/gen_data.py、test/sgetri/data/gen_data.py:#23 shuffle 移至对角占优之前 - test/cgetrf/cgetrf_test.cpp 等 4 个 test cpp:#37 info 指针初始化 - test/cgetrf/data/verify_result.py 等 5 个 verify_result.py:#38 移除重复 total_different;#39 移除未使用参数 w;#40 sgetrf pivot 检查对齐 cgetrf(改为 1-based 索引);#41 index==32 改为 index>=32;#42 tolrence 拼写修正 - *test/cgetri_batched/*:#63 新建完整测试目录(CMakeLists.txt、cgetri_batched_test.cpp、gen_data.py、verify_result.py、README.md) - docs/zh/cmatinv_batched.md、docs/zh/cgetri_batched.md:n>=32 转调边界修正 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> [#13](https://gitcode.com/cann/ops-solver/issues/13) [#14](https://gitcode.com/cann/ops-solver/issues/14) [#15](https://gitcode.com/cann/ops-solver/issues/15) [#16](https://gitcode.com/cann/ops-solver/issues/16) [#17](https://gitcode.com/cann/ops-solver/issues/17) [#18](https://gitcode.com/cann/ops-solver/issues/18) [#19](https://gitcode.com/cann/ops-solver/issues/19) [#20](https://gitcode.com/cann/ops-solver/issues/20) [#21](https://gitcode.com/cann/ops-solver/issues/21) [#22](https://gitcode.com/cann/ops-solver/issues/22) [#23](https://gitcode.com/cann/ops-solver/issues/23) [#24](https://gitcode.com/cann/ops-solver/issues/24) [#25](https://gitcode.com/cann/ops-solver/issues/25) [#26](https://gitcode.com/cann/ops-solver/issues/26) [#27](https://gitcode.com/cann/ops-solver/issues/27) [#28](https://gitcode.com/cann/ops-solver/issues/28) [#30](https://gitcode.com/cann/ops-solver/issues/30) [#31](https://gitcode.com/cann/ops-solver/issues/31) [#32](https://gitcode.com/cann/ops-solver/issues/32) [#33](https://gitcode.com/cann/ops-solver/issues/33) [#34](https://gitcode.com/cann/ops-solver/issues/34) [#35](https://gitcode.com/cann/ops-solver/issues/35) [#36](https://gitcode.com/cann/ops-solver/issues/36) [#37](https://gitcode.com/cann/ops-solver/issues/37) [#38](https://gitcode.com/cann/ops-solver/issues/38) [#39](https://gitcode.com/cann/ops-solver/issues/39) [#40](https://gitcode.com/cann/ops-solver/issues/40) [#41](https://gitcode.com/cann/ops-solver/issues/41) [#42](https://gitcode.com/cann/ops-solver/issues/42) [#63](https://gitcode.com/cann/ops-solver/issues/63) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 编译通过(bash build.sh --soc=ascend910b),6 个算子全部编译成功。默认测试 bash build.sh --run 6/6 通过。精度测试 cgetrf/sgetrf 10 种尺寸(4~160)×2 算子 20/20 通过。异常测试构造 100000×100000 超大矩阵触发 malloc 失败,4 个算子均返回错误码不 exit,cleanup 正常执行,后续正常调用成功 6/6 通过。除零测试构造奇异矩阵(重复行),cgetrf/sgetrf 25 种尺寸×2 算子 50/50 无 NaN/Inf,正常矩阵对照 50/50 精度不受影响。边界测试 n=31(cmatinv 路径)、n=32(cgetri 路径)、n=33 均通过。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/zh/cmatinv_batched.md:n>=32 转调说明修正 docs/zh/cgetri_batched.md:n 约束从"大于32"改为"大于等于32" test/cgetri_batched/README.md:新建算子说明文档 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-solver!19 | 11 天前 | |
Fix: 修复30个issue(#13-#28,#30-#42, #63)) Co-authored-by: Tian_1122<tianjunhan@h-partners.com> # message auto-generated for no-merge-commit merge: !19 merge master into master Fix: 修复30个issue(#13-#28,#30-#42, #63)) Created-by: Tian_1122 Commit-by: Tian_1122 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本 PR 修复了 ops-solver 仓库中 30 个 issue(#13-#28, #30-#42, #63),涉及除零保护、资源泄漏修复、参数校验、测试用例修正、新建测试目录等问题。#13 和 #33 经分析为误报。具体修复内容: - src/utils/assert.h:#18 CHECK_ACLRT 宏从 exit(EXIT_FAILURE) 改为 cleanup_action 模式,6 个 host 文件用 lambda 封装资源清理,ACL 运行时出错时清理已分配资源后返回错误码;#31 删除全局未使用的 RT_CHECK 宏 - src/sgetrf/kernel/getf2.hpp:#32 修正 FreeTensor 释放错误 tensor(dstLocal1→dstLocal0);移除 LUCustom2 中 assert(blockM >= blockN) 约束 - src/cgetri/cgetri_kernel.cpp:#17 workspace 初始化为 nullptr - src/cgetrf/cgetrf_host.cpp:#18 lambda cleanup;#14 numBlocks 固定 20;#30 参数校验;#24 GenerateGather N=0 保护;#25/#27 lda/info 标记未启用;ipiv 输出改为 1-based 索引(配合 #40) - src/sgetrf/sgetrf_host.cpp:#18 lambda cleanup;#14/#34 numBlocks 固定 20;#30 参数校验;#25/#27 lda/info 标记未启用;ipiv 输出改为 1-based 索引(配合 #40) - src/cgetri/cgetri_host.cpp:#18 lambda cleanup;#30 参数校验;#24 N=0 保护;numBlocks 上限钳制为 20;#25/#27 lda/info 标记未启用 - src/sgetri/sgetri_host.cpp:#18 lambda cleanup;#30 参数校验;#35 memset size 修正;numBlocks 上限钳制为 20;#25/#27 lda/info 标记未启用 - src/cgetri_batched/cgetri_batched_host.cpp:#18 lambda cleanup;#16 补充 workSpace aclrtFree;#36 sync 包裹 CHECK_ACLRT;#25/#27/#28 lda/info 仅提示不返回;n>=32 边界修正 - src/cmatinv_batched/cmatinv_batched_host.cpp:#18 lambda cleanup;#20 移除未启用的 d_info 设备内存分配(消除泄漏);#36 sync 包裹 CHECK_ACLRT;GetCoreNumAic 改为 GetCoreNumAiv(匹配 AIV_ONLY 内核);numBlocks 上限钳制为 40;#25/#27/#28 lda/info 仅提示不返回;n>=32 边界修正 - CMakeLists.txt:#19 默认构建类型从 Debug FORCE 改为 Release - test/cgetri/data/gen_data.py、test/sgetri/data/gen_data.py:#23 shuffle 移至对角占优之前 - test/cgetrf/cgetrf_test.cpp 等 4 个 test cpp:#37 info 指针初始化 - test/cgetrf/data/verify_result.py 等 5 个 verify_result.py:#38 移除重复 total_different;#39 移除未使用参数 w;#40 sgetrf pivot 检查对齐 cgetrf(改为 1-based 索引);#41 index==32 改为 index>=32;#42 tolrence 拼写修正 - *test/cgetri_batched/*:#63 新建完整测试目录(CMakeLists.txt、cgetri_batched_test.cpp、gen_data.py、verify_result.py、README.md) - docs/zh/cmatinv_batched.md、docs/zh/cgetri_batched.md:n>=32 转调边界修正 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> [#13](https://gitcode.com/cann/ops-solver/issues/13) [#14](https://gitcode.com/cann/ops-solver/issues/14) [#15](https://gitcode.com/cann/ops-solver/issues/15) [#16](https://gitcode.com/cann/ops-solver/issues/16) [#17](https://gitcode.com/cann/ops-solver/issues/17) [#18](https://gitcode.com/cann/ops-solver/issues/18) [#19](https://gitcode.com/cann/ops-solver/issues/19) [#20](https://gitcode.com/cann/ops-solver/issues/20) [#21](https://gitcode.com/cann/ops-solver/issues/21) [#22](https://gitcode.com/cann/ops-solver/issues/22) [#23](https://gitcode.com/cann/ops-solver/issues/23) [#24](https://gitcode.com/cann/ops-solver/issues/24) [#25](https://gitcode.com/cann/ops-solver/issues/25) [#26](https://gitcode.com/cann/ops-solver/issues/26) [#27](https://gitcode.com/cann/ops-solver/issues/27) [#28](https://gitcode.com/cann/ops-solver/issues/28) [#30](https://gitcode.com/cann/ops-solver/issues/30) [#31](https://gitcode.com/cann/ops-solver/issues/31) [#32](https://gitcode.com/cann/ops-solver/issues/32) [#33](https://gitcode.com/cann/ops-solver/issues/33) [#34](https://gitcode.com/cann/ops-solver/issues/34) [#35](https://gitcode.com/cann/ops-solver/issues/35) [#36](https://gitcode.com/cann/ops-solver/issues/36) [#37](https://gitcode.com/cann/ops-solver/issues/37) [#38](https://gitcode.com/cann/ops-solver/issues/38) [#39](https://gitcode.com/cann/ops-solver/issues/39) [#40](https://gitcode.com/cann/ops-solver/issues/40) [#41](https://gitcode.com/cann/ops-solver/issues/41) [#42](https://gitcode.com/cann/ops-solver/issues/42) [#63](https://gitcode.com/cann/ops-solver/issues/63) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 编译通过(bash build.sh --soc=ascend910b),6 个算子全部编译成功。默认测试 bash build.sh --run 6/6 通过。精度测试 cgetrf/sgetrf 10 种尺寸(4~160)×2 算子 20/20 通过。异常测试构造 100000×100000 超大矩阵触发 malloc 失败,4 个算子均返回错误码不 exit,cleanup 正常执行,后续正常调用成功 6/6 通过。除零测试构造奇异矩阵(重复行),cgetrf/sgetrf 25 种尺寸×2 算子 50/50 无 NaN/Inf,正常矩阵对照 50/50 精度不受影响。边界测试 n=31(cmatinv 路径)、n=32(cgetri 路径)、n=33 均通过。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/zh/cmatinv_batched.md:n>=32 转调说明修正 docs/zh/cgetri_batched.md:n 约束从"大于32"改为"大于等于32" test/cgetri_batched/README.md:新建算子说明文档 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-solver!19 | 11 天前 | |
Fix: 修复30个issue(#13-#28,#30-#42, #63)) Co-authored-by: Tian_1122<tianjunhan@h-partners.com> # message auto-generated for no-merge-commit merge: !19 merge master into master Fix: 修复30个issue(#13-#28,#30-#42, #63)) Created-by: Tian_1122 Commit-by: Tian_1122 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本 PR 修复了 ops-solver 仓库中 30 个 issue(#13-#28, #30-#42, #63),涉及除零保护、资源泄漏修复、参数校验、测试用例修正、新建测试目录等问题。#13 和 #33 经分析为误报。具体修复内容: - src/utils/assert.h:#18 CHECK_ACLRT 宏从 exit(EXIT_FAILURE) 改为 cleanup_action 模式,6 个 host 文件用 lambda 封装资源清理,ACL 运行时出错时清理已分配资源后返回错误码;#31 删除全局未使用的 RT_CHECK 宏 - src/sgetrf/kernel/getf2.hpp:#32 修正 FreeTensor 释放错误 tensor(dstLocal1→dstLocal0);移除 LUCustom2 中 assert(blockM >= blockN) 约束 - src/cgetri/cgetri_kernel.cpp:#17 workspace 初始化为 nullptr - src/cgetrf/cgetrf_host.cpp:#18 lambda cleanup;#14 numBlocks 固定 20;#30 参数校验;#24 GenerateGather N=0 保护;#25/#27 lda/info 标记未启用;ipiv 输出改为 1-based 索引(配合 #40) - src/sgetrf/sgetrf_host.cpp:#18 lambda cleanup;#14/#34 numBlocks 固定 20;#30 参数校验;#25/#27 lda/info 标记未启用;ipiv 输出改为 1-based 索引(配合 #40) - src/cgetri/cgetri_host.cpp:#18 lambda cleanup;#30 参数校验;#24 N=0 保护;numBlocks 上限钳制为 20;#25/#27 lda/info 标记未启用 - src/sgetri/sgetri_host.cpp:#18 lambda cleanup;#30 参数校验;#35 memset size 修正;numBlocks 上限钳制为 20;#25/#27 lda/info 标记未启用 - src/cgetri_batched/cgetri_batched_host.cpp:#18 lambda cleanup;#16 补充 workSpace aclrtFree;#36 sync 包裹 CHECK_ACLRT;#25/#27/#28 lda/info 仅提示不返回;n>=32 边界修正 - src/cmatinv_batched/cmatinv_batched_host.cpp:#18 lambda cleanup;#20 移除未启用的 d_info 设备内存分配(消除泄漏);#36 sync 包裹 CHECK_ACLRT;GetCoreNumAic 改为 GetCoreNumAiv(匹配 AIV_ONLY 内核);numBlocks 上限钳制为 40;#25/#27/#28 lda/info 仅提示不返回;n>=32 边界修正 - CMakeLists.txt:#19 默认构建类型从 Debug FORCE 改为 Release - test/cgetri/data/gen_data.py、test/sgetri/data/gen_data.py:#23 shuffle 移至对角占优之前 - test/cgetrf/cgetrf_test.cpp 等 4 个 test cpp:#37 info 指针初始化 - test/cgetrf/data/verify_result.py 等 5 个 verify_result.py:#38 移除重复 total_different;#39 移除未使用参数 w;#40 sgetrf pivot 检查对齐 cgetrf(改为 1-based 索引);#41 index==32 改为 index>=32;#42 tolrence 拼写修正 - *test/cgetri_batched/*:#63 新建完整测试目录(CMakeLists.txt、cgetri_batched_test.cpp、gen_data.py、verify_result.py、README.md) - docs/zh/cmatinv_batched.md、docs/zh/cgetri_batched.md:n>=32 转调边界修正 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> [#13](https://gitcode.com/cann/ops-solver/issues/13) [#14](https://gitcode.com/cann/ops-solver/issues/14) [#15](https://gitcode.com/cann/ops-solver/issues/15) [#16](https://gitcode.com/cann/ops-solver/issues/16) [#17](https://gitcode.com/cann/ops-solver/issues/17) [#18](https://gitcode.com/cann/ops-solver/issues/18) [#19](https://gitcode.com/cann/ops-solver/issues/19) [#20](https://gitcode.com/cann/ops-solver/issues/20) [#21](https://gitcode.com/cann/ops-solver/issues/21) [#22](https://gitcode.com/cann/ops-solver/issues/22) [#23](https://gitcode.com/cann/ops-solver/issues/23) [#24](https://gitcode.com/cann/ops-solver/issues/24) [#25](https://gitcode.com/cann/ops-solver/issues/25) [#26](https://gitcode.com/cann/ops-solver/issues/26) [#27](https://gitcode.com/cann/ops-solver/issues/27) [#28](https://gitcode.com/cann/ops-solver/issues/28) [#30](https://gitcode.com/cann/ops-solver/issues/30) [#31](https://gitcode.com/cann/ops-solver/issues/31) [#32](https://gitcode.com/cann/ops-solver/issues/32) [#33](https://gitcode.com/cann/ops-solver/issues/33) [#34](https://gitcode.com/cann/ops-solver/issues/34) [#35](https://gitcode.com/cann/ops-solver/issues/35) [#36](https://gitcode.com/cann/ops-solver/issues/36) [#37](https://gitcode.com/cann/ops-solver/issues/37) [#38](https://gitcode.com/cann/ops-solver/issues/38) [#39](https://gitcode.com/cann/ops-solver/issues/39) [#40](https://gitcode.com/cann/ops-solver/issues/40) [#41](https://gitcode.com/cann/ops-solver/issues/41) [#42](https://gitcode.com/cann/ops-solver/issues/42) [#63](https://gitcode.com/cann/ops-solver/issues/63) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 编译通过(bash build.sh --soc=ascend910b),6 个算子全部编译成功。默认测试 bash build.sh --run 6/6 通过。精度测试 cgetrf/sgetrf 10 种尺寸(4~160)×2 算子 20/20 通过。异常测试构造 100000×100000 超大矩阵触发 malloc 失败,4 个算子均返回错误码不 exit,cleanup 正常执行,后续正常调用成功 6/6 通过。除零测试构造奇异矩阵(重复行),cgetrf/sgetrf 25 种尺寸×2 算子 50/50 无 NaN/Inf,正常矩阵对照 50/50 精度不受影响。边界测试 n=31(cmatinv 路径)、n=32(cgetri 路径)、n=33 均通过。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/zh/cmatinv_batched.md:n>=32 转调说明修正 docs/zh/cgetri_batched.md:n 约束从"大于32"改为"大于等于32" test/cgetri_batched/README.md:新建算子说明文档 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-solver!19 | 11 天前 | |
Fix: 修复30个issue(#13-#28,#30-#42, #63)) Co-authored-by: Tian_1122<tianjunhan@h-partners.com> # message auto-generated for no-merge-commit merge: !19 merge master into master Fix: 修复30个issue(#13-#28,#30-#42, #63)) Created-by: Tian_1122 Commit-by: Tian_1122 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本 PR 修复了 ops-solver 仓库中 30 个 issue(#13-#28, #30-#42, #63),涉及除零保护、资源泄漏修复、参数校验、测试用例修正、新建测试目录等问题。#13 和 #33 经分析为误报。具体修复内容: - src/utils/assert.h:#18 CHECK_ACLRT 宏从 exit(EXIT_FAILURE) 改为 cleanup_action 模式,6 个 host 文件用 lambda 封装资源清理,ACL 运行时出错时清理已分配资源后返回错误码;#31 删除全局未使用的 RT_CHECK 宏 - src/sgetrf/kernel/getf2.hpp:#32 修正 FreeTensor 释放错误 tensor(dstLocal1→dstLocal0);移除 LUCustom2 中 assert(blockM >= blockN) 约束 - src/cgetri/cgetri_kernel.cpp:#17 workspace 初始化为 nullptr - src/cgetrf/cgetrf_host.cpp:#18 lambda cleanup;#14 numBlocks 固定 20;#30 参数校验;#24 GenerateGather N=0 保护;#25/#27 lda/info 标记未启用;ipiv 输出改为 1-based 索引(配合 #40) - src/sgetrf/sgetrf_host.cpp:#18 lambda cleanup;#14/#34 numBlocks 固定 20;#30 参数校验;#25/#27 lda/info 标记未启用;ipiv 输出改为 1-based 索引(配合 #40) - src/cgetri/cgetri_host.cpp:#18 lambda cleanup;#30 参数校验;#24 N=0 保护;numBlocks 上限钳制为 20;#25/#27 lda/info 标记未启用 - src/sgetri/sgetri_host.cpp:#18 lambda cleanup;#30 参数校验;#35 memset size 修正;numBlocks 上限钳制为 20;#25/#27 lda/info 标记未启用 - src/cgetri_batched/cgetri_batched_host.cpp:#18 lambda cleanup;#16 补充 workSpace aclrtFree;#36 sync 包裹 CHECK_ACLRT;#25/#27/#28 lda/info 仅提示不返回;n>=32 边界修正 - src/cmatinv_batched/cmatinv_batched_host.cpp:#18 lambda cleanup;#20 移除未启用的 d_info 设备内存分配(消除泄漏);#36 sync 包裹 CHECK_ACLRT;GetCoreNumAic 改为 GetCoreNumAiv(匹配 AIV_ONLY 内核);numBlocks 上限钳制为 40;#25/#27/#28 lda/info 仅提示不返回;n>=32 边界修正 - CMakeLists.txt:#19 默认构建类型从 Debug FORCE 改为 Release - test/cgetri/data/gen_data.py、test/sgetri/data/gen_data.py:#23 shuffle 移至对角占优之前 - test/cgetrf/cgetrf_test.cpp 等 4 个 test cpp:#37 info 指针初始化 - test/cgetrf/data/verify_result.py 等 5 个 verify_result.py:#38 移除重复 total_different;#39 移除未使用参数 w;#40 sgetrf pivot 检查对齐 cgetrf(改为 1-based 索引);#41 index==32 改为 index>=32;#42 tolrence 拼写修正 - *test/cgetri_batched/*:#63 新建完整测试目录(CMakeLists.txt、cgetri_batched_test.cpp、gen_data.py、verify_result.py、README.md) - docs/zh/cmatinv_batched.md、docs/zh/cgetri_batched.md:n>=32 转调边界修正 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> [#13](https://gitcode.com/cann/ops-solver/issues/13) [#14](https://gitcode.com/cann/ops-solver/issues/14) [#15](https://gitcode.com/cann/ops-solver/issues/15) [#16](https://gitcode.com/cann/ops-solver/issues/16) [#17](https://gitcode.com/cann/ops-solver/issues/17) [#18](https://gitcode.com/cann/ops-solver/issues/18) [#19](https://gitcode.com/cann/ops-solver/issues/19) [#20](https://gitcode.com/cann/ops-solver/issues/20) [#21](https://gitcode.com/cann/ops-solver/issues/21) [#22](https://gitcode.com/cann/ops-solver/issues/22) [#23](https://gitcode.com/cann/ops-solver/issues/23) [#24](https://gitcode.com/cann/ops-solver/issues/24) [#25](https://gitcode.com/cann/ops-solver/issues/25) [#26](https://gitcode.com/cann/ops-solver/issues/26) [#27](https://gitcode.com/cann/ops-solver/issues/27) [#28](https://gitcode.com/cann/ops-solver/issues/28) [#30](https://gitcode.com/cann/ops-solver/issues/30) [#31](https://gitcode.com/cann/ops-solver/issues/31) [#32](https://gitcode.com/cann/ops-solver/issues/32) [#33](https://gitcode.com/cann/ops-solver/issues/33) [#34](https://gitcode.com/cann/ops-solver/issues/34) [#35](https://gitcode.com/cann/ops-solver/issues/35) [#36](https://gitcode.com/cann/ops-solver/issues/36) [#37](https://gitcode.com/cann/ops-solver/issues/37) [#38](https://gitcode.com/cann/ops-solver/issues/38) [#39](https://gitcode.com/cann/ops-solver/issues/39) [#40](https://gitcode.com/cann/ops-solver/issues/40) [#41](https://gitcode.com/cann/ops-solver/issues/41) [#42](https://gitcode.com/cann/ops-solver/issues/42) [#63](https://gitcode.com/cann/ops-solver/issues/63) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> 编译通过(bash build.sh --soc=ascend910b),6 个算子全部编译成功。默认测试 bash build.sh --run 6/6 通过。精度测试 cgetrf/sgetrf 10 种尺寸(4~160)×2 算子 20/20 通过。异常测试构造 100000×100000 超大矩阵触发 malloc 失败,4 个算子均返回错误码不 exit,cleanup 正常执行,后续正常调用成功 6/6 通过。除零测试构造奇异矩阵(重复行),cgetrf/sgetrf 25 种尺寸×2 算子 50/50 无 NaN/Inf,正常矩阵对照 50/50 精度不受影响。边界测试 n=31(cmatinv 路径)、n=32(cgetri 路径)、n=33 均通过。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/zh/cmatinv_batched.md:n>=32 转调说明修正 docs/zh/cgetri_batched.md:n 约束从"大于32"改为"大于等于32" test/cgetri_batched/README.md:新建算子说明文档 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-solver!19 | 11 天前 | |
add handle Co-authored-by: Tian_1122<tianjunhan@h-partners.com> # message auto-generated for no-merge-commit merge: !9 merge master into master add handle Created-by: Tian_1122 Commit-by: Tian_1122 Merged-by: demoauguste Description: ## 描述 补充handle ## 关联的Issue [#4](https://gitcode.com/cann/ops-solver/issues/4) [#5](https://gitcode.com/cann/ops-solver/issues/5) ## 测试 <!--描述进行了哪些测试来验证你的改动。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-solver!9 | 2 个月前 | |
add cgertf cgetri sgetrf sgetri Co-authored-by: Tian_1122<tianjunhan@h-partners.com> # message auto-generated for no-merge-commit merge: !3 merge master into master add cgertf cgetri sgetrf sgetri Created-by: Tian_1122 Commit-by: Tian_1122 Merged-by: Tian_1122 Description: add cgetri See merge request: cann/ops-solver!3 | 3 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 11 天前 | ||
| 11 天前 | ||
| 11 天前 | ||
| 11 天前 | ||
| 11 天前 | ||
| 11 天前 | ||
| 2 个月前 | ||
| 3 个月前 |