文件最后提交记录最后更新时间
Unified compilation project Co-authored-by: tangqunzhang<tangqunzhang@huawei.com> # message auto-generated for no-merge-commit merge: !833 merge develop into develop Unified compilation project Created-by: tangqunzhang Commit-by: tangqunzhang Merged-by: cann-robot Description: # Pull Request ## 描述 问题/功能描述 本次PR是一个综合性的代码优化与重构集合,主要围绕三个核心目标展开。首先,对CMake构建系统进行了大规模标准化和优化,旨在提升构建配置的集中管理能力、灵活性和可维护性,包括统一编译/链接选项、重构库依赖、增强测试构建支持(如ASAN/GCOV)以及新增目标克隆功能。其次,对多个C++单例类(如AclResourceManager、ModelSaveHelperFactory、GlobalProfilingWrapper、KernelBinRegistry等)的实现进行了重构,将内联定义从头文件移至源文件,以消除潜在的链接期多重定义风险和静态初始化顺序问题,提升代码健壮性。最后,修复了多个明确的编码缺陷,包括空指针解引用、内存管理错误、测试环境隔离问题以及单元测试逻辑错误,增强了代码的稳定性和测试的可靠性。 修改方案描述 修改方案主要包括三个方面。在构建系统层面,将大量硬编码的编译和链接选项(如-Werror、-O2)替换为统一的CMake变量(如${AIR_COMMON_COMPILE_OPTION}、${AIR_COMMON_LINK_OPTION}),重构了UDF、部署器等模块的构建流程以使用预编译静态库,并新增了条件化的ASAN支持和测试环境变量管理。在代码结构层面,将十余个工厂类、管理器类和工具类(如AclResourceManager::GetInstance()、UdfModelBuilder::GetInstance()等)的单例方法实现从头文件内联定义移至对应的.cc源文件中,遵循了声明与实现分离的最佳实践。在缺陷修复层面,修复了DataSliceAdapter::GetTensorStr中的空指针解引用、FftsPlusArgsHelper::AppendIoAddrs中的日志打印空指针风险、单元测试中的内存释放顺序错误、环境变量(LD_PRELOAD)干扰以及多个测试用例的逻辑和数据错误,并补充了必要的桩函数实现。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1.修改编译选项和UT,ST,原有用例可以执行通过就可以 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [ ] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [ ] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!8332 个月前
【PR】: sync develop to master 0517 Co-authored-by: xingzhixiong<xingzhixiong@huawei.com> # message auto-generated for no-merge-commit merge: !2939 merge develop into master 【PR】: sync develop to master 0517 Created-by: wangxiaotian995 Commit-by: xingzhixiong Merged-by: cann-robot Description: # Pull Request ## 描述 请清晰准确地描述本次 Pull Request 的意图和变更内容。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [ ] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 描述测试此变更的步骤和前提条件: 1. 2. ## 核对清单 <!-- [x] 表示选中 --> - [ ] 我的代码遵循了项目的代码风格 - [ ] 我已对代码进行了自测 - [ ] 我已更新了相关的文档 - [ ] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [ ] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!293916 天前
Initial commit 5 个月前
【feat】: Unified compilation options Co-authored-by: tangqunzhang<tangqunzhang@huawei.com> # message auto-generated for no-merge-commit merge: !1331 merge develop into develop 【feat】: Unified compilation options Created-by: tangqunzhang Commit-by: tangqunzhang Merged-by: cann-robot Description: # Pull Request ## 描述 问题/功能描述 本次PR对CMake构建系统进行了统一清理与优化,旨在解决构建配置分散、冗余的问题,并提升构建的灵活性与可维护性。主要工作包括:调整关键CMake模块的包含逻辑以确保其在更广泛的构建上下文中可用;系统性地移除多个子模块中对通用构建配置文件的冗余包含指令;以及简化非测试、非Windows平台下的默认编译选项,移除了强制性的优化级别和将警告视为错误的限制,便于调试。 修改方案描述 具体修改分为三个方面:1) 将intf_pub_linux.cmake文件的包含语句从条件块内移至CMakeLists.txt的全局范围,确保接口定义全局可用。2) 在cmake/build_type.cmake中,将默认编译选项简化为仅保留可见性控制标志,移除了-O2、-Werror等标志。3) 清理了graph_base、graph等多个子目录CMakeLists.txt中冗余的include(build_type.cmake)指令,并将该包含指令统一移至inc/graph_metadef/CMakeLists.txt中,实现了构建配置的集中管理。 ## 变更类型 请选择本次引入的变更类型: <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新功能 - [ ] 💄 代码风格更新(格式化,局部变量) - [x] ♻️ 重构(既不修复错误也不增加功能的代码变动) - [ ] 📦 构建过程或辅助工具的变动 - [ ] 📝 文档内容更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在当前页面的右侧'关联Issue'部分添加相应Issue链接,并勾选'合并后关闭已关联的 Issue'选项。 --> ## 如何测试 编译选项修改,只需保证版本编译构建成功即可覆盖修改功能。 ## 核对清单 <!-- [x] 表示选中 --> - [x] 我的代码遵循了项目的代码风格 - [x] 我已对代码进行了自测 - [x] 我已更新了相关的文档 - [x] 我在标题中使用了合适的类型标签(如:feat:, fix:) - [x] 我已经详细阅读了贡献指南(CONTRIBUTING.md),并遵守了其中的所有规定,包括但不限于commit message的格式、无效commit的合并等 ## 其他信息 在此添加任何其他关于本次 PR 的说明。 See merge request: cann/ge!13312 个月前