| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[feat] add asc_compile_exporter Co-authored-by: sjtulxh<liaoxiaohui3@hisilicon.com> # message auto-generated for no-merge-commit merge: !4980 merge master into master [feat] add asc_compile_exporter Created-by: sjtulxh Commit-by: sjtulxh Merged-by: cann-robot Description: ## 描述 新增 asc_compile_exporter 工具,用于收集指定目录下的 Manifest JSON 及相关资源,并将其导出为可动态加载的编译资源共享库。 主要改动: - 新增 asc_compile_exporter 命令行工具及 Manifest Bundle 生成模块。 - 支持指定包 ID、Manifest 搜索目录、输出路径、工作目录、并行任务数及临时目录保留选项。 - 增加路径合法性、符号链接、资源数量和资源大小等安全检查。 - 接入 AscendC 工具日志接口。 - 增加 CMake 构建、安装及 JSON 三方库依赖。 - 更新 asc-devkit 打包清单和版本目录软链接处理。 - 新增模块单元测试和完整导出流程测试,并接入测试集合。 ManifestBundleCompiler | +--> CollectedManifestRepository 发现并加载 Manifest +--> BuildWorkspace 管理临时构建目录 +--> BundleSourceGenerator 生成 ABI、Manifest 源码和 Makefile +--> MakeBundleBuilder 调用编译器构建 SO +--> BundlePublisher 原子发布最终 SO manifest_bundle_compiler.cpp:请求校验、任务数计算和整体流程编排,目标控制在约 100 行。 - manifest_bundle_types.h:保存内部 DTO ResourceFile、ManifestUnit,不安装、不暴露为公共 API。 - CollectedManifestRepository:Manifest 发现、JSON base_dir 读取、资源递归加载、排序和容量限制;ResourceBudget 保留为其 .cpp 内部实现。 - BundleSourceGenerator:生成 ABI 头、Manifest 翻译单元、Bundle 汇总源码和 Makefile。 - BuildWorkspace:负责私有临时目录的创建、移动语义、--keep-temp 和 RAII 清理。 - MakeBundleBuilder:查找 make/编译器、构造环境变量并启动构建;原 ExecutableLocator 收敛为其 .cpp 私有函数,不再保留独立类。 - ProcessRunner:封装 fork/execv、超时、进程组终止和退出状态处理。 - BundlePublisher:输出软链接检查、同文件系统 rename 和跨文件系统安全发布 ## 关联的Issue 无。 ## 测试 - 构建 asc_compile_exporter 生产目标,构建通过。 - 构建并运行 ascendc_ut_asc_compile_exporter。 - 共执行 22 个测试用例,全部通过。 - 验证生成的 Bundle 共享库可以正常加载并读取 Manifest 和资源。 - 执行打包 XML 格式校验,通过。 - 执行安装软链接脚本语法检查,通过。 - 执行 git diff --check,通过。 ## 文档更新 无文档更新。 ## 类型标签 - [ ] 🐛 fix: Bug 修复 - [x] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [x] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!4980 | 1 个月前 | |
[feat] add json validator Co-authored-by: sjtulxh<liaoxiaohui3@hisilicon.com> # message auto-generated for no-merge-commit merge: !5068 merge master into master [feat] add json validator Created-by: sjtulxh Commit-by: sjtulxh Merged-by: cann-robot Description: [feat] add resource manifest validation ## 描述 新增资源清单 JSON 校验器,对 manifest 的基础字段、资源路径、编译选项、Kernel、常量、Object、Command、输出引用及占位符语法进行完整校验。 主要改动: - 将资源目录字段由 base_dir 切换为 resource_path,加载资源前执行 manifest 校验。 - 新增安全相对路径检查,拒绝绝对路径、路径穿越、反斜杠及非法路径格式。 - 加强资源目录的符号链接、特殊文件和目录深度检查。 - 将 file_utils.cpp 中的 ASCENDLOGW 调整为 ASCENDLOGE。 - 为 asc_compile_exporter 增加 -h、--help 选项。 - 编译失败或捕获异常时,提示用户通过 plog 查看详细日志。 - 补充资源清单校验器、CLI、Repository 和 FileUtils 相关单元测试。 ## 关联的Issue 无。 ## 测试 - 重新构建 asc_compile_exporter 生产目标,构建成功。 - 重新构建 ascendc_ut_asc_compile_exporter 单元测试目标,构建成功。 - 执行完整单元测试:58/58 通过。 - resource_manifest_validator.cpp 行覆盖率:100%(283/283)。 - resource_manifest_validator.cpp 函数覆盖率:100%(20/20)。 - 新增校验器源文件通过 clang-format 检查。 - git diff --check 检查通过。 ## 文档更新 无文档更新。 ## 类型标签 - [ ] 🐛 fix: Bug 修复 - [x] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [x] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!5068 | 1 个月前 | |
acl_rt_compile.h头文件目录结构与run包中对齐 Co-authored-by: Feiteng Zheng<zhengfeiteng1@h-partners.com> # message auto-generated for no-merge-commit merge: !4637 merge 20260727-support-gaf-superbuild into master acl_rt_compile.h头文件目录结构与run包中对齐 Created-by: zhengfeiteng Commit-by: Feiteng Zheng Merged-by: cann-robot Description: ## 描述 acl_rt_compile.h头文件目录结构与run包中对齐。 - acl_rtc导出头文件搜索路径,支持多仓联编时上层组件引用 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [x] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!4637 | 2 个月前 | |
再次扩展ruff-pre-commit hooks (第二批目录) Co-authored-by: Water8L<15279328600@163.com> # message auto-generated for no-merge-commit merge: !4329 merge master into master 再次扩展ruff-pre-commit hooks (第二批目录) Created-by: Water8L Commit-by: Water8L Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 在.pre-commit-config.yaml中增加ruff-check ruff-format(tools目录下),并修改tools目录下对应不合规范的文件,除了暂时屏蔽的部分文件和错误类型,同时限制py版本为3.7 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [x] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!4329 | 2 个月前 | |
delete ascendc_parse_dumpinfo.py Co-authored-by: hehongan<hehongan@h-partners.com> # message auto-generated for no-merge-commit merge: !1394 merge master into master delete ascendc_parse_dumpinfo.py Created-by: hehongan Commit-by: hehongan Merged-by: cann-robot Description: ## 描述 delete ascendc_parse_dumpinfo.py ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> [#356](https://gitcode.com/cann/asc-devkit/issues/356) [#381](https://gitcode.com/cann/asc-devkit/issues/381) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!1394 | 5 个月前 |