| 删除重复的C API同步Add样例 Co-authored-by: g00954335<guorenjie3@huawei.com> # message auto-generated for no-merge-commit merge: !6554 merge 2026_09_29_remove-redundant-c-api-sync-add into master 删除重复的C API同步Add样例 Created-by: GRJ_XIDUO Commit-by: g00954335 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> asc_add_sync及同步搬运接口废弃后,c_api_sync_add已改为普通异步接口配合asc_sync显式同步,与现有c_api_async_add样例的用途高度重复,目录名称也容易使开发者误认为该样例仍使用内置同步接口。 删除c_api_sync_add样例及其中英文索引和资料入口,并同步清理presmoke生成器例外项、runner、manifest、主调度清单和固定分片记录。 保留c_api_async_add和c_api_delicacy_async_add,继续分别覆盖普通Add调用和精细流水同步场景。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> 无 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> - 检查全仓不存在c_api_sync_add路径残留。 - 检查修改后的Markdown相对链接有效。 - 使用python3 -m json.tool检查presmoke manifest,检查通过。 - 执行3项相关presmoke生成器单元测试,测试通过。 - 执行git diff --check,检查通过。 - presmoke完整测试套件存在上游基线已有的2个失败和2个错误,与本次删除无关。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> - 删除中英文Add样例索引中的c_api_sync_add入口。 - 删除中英文API选型文档中的同步Add样例链接。 ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [x] 🧪 test: 新增或修改测试 - [x] 📝 docs: 文档更新 - [x] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!6554 | 15 小时前 |
| 删除重复的C API同步Add样例 Co-authored-by: g00954335<guorenjie3@huawei.com> # message auto-generated for no-merge-commit merge: !6554 merge 2026_09_29_remove-redundant-c-api-sync-add into master 删除重复的C API同步Add样例 Created-by: GRJ_XIDUO Commit-by: g00954335 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> asc_add_sync及同步搬运接口废弃后,c_api_sync_add已改为普通异步接口配合asc_sync显式同步,与现有c_api_async_add样例的用途高度重复,目录名称也容易使开发者误认为该样例仍使用内置同步接口。 删除c_api_sync_add样例及其中英文索引和资料入口,并同步清理presmoke生成器例外项、runner、manifest、主调度清单和固定分片记录。 保留c_api_async_add和c_api_delicacy_async_add,继续分别覆盖普通Add调用和精细流水同步场景。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> 无 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> - 检查全仓不存在c_api_sync_add路径残留。 - 检查修改后的Markdown相对链接有效。 - 使用python3 -m json.tool检查presmoke manifest,检查通过。 - 执行3项相关presmoke生成器单元测试,测试通过。 - 执行git diff --check,检查通过。 - presmoke完整测试套件存在上游基线已有的2个失败和2个错误,与本次删除无关。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> - 删除中英文Add样例索引中的c_api_sync_add入口。 - 删除中英文API选型文档中的同步Add样例链接。 ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [x] 🧪 test: 新增或修改测试 - [x] 📝 docs: 文档更新 - [x] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!6554 | 15 小时前 |
| 删除重复的C API同步Add样例 Co-authored-by: g00954335<guorenjie3@huawei.com> # message auto-generated for no-merge-commit merge: !6554 merge 2026_09_29_remove-redundant-c-api-sync-add into master 删除重复的C API同步Add样例 Created-by: GRJ_XIDUO Commit-by: g00954335 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> asc_add_sync及同步搬运接口废弃后,c_api_sync_add已改为普通异步接口配合asc_sync显式同步,与现有c_api_async_add样例的用途高度重复,目录名称也容易使开发者误认为该样例仍使用内置同步接口。 删除c_api_sync_add样例及其中英文索引和资料入口,并同步清理presmoke生成器例外项、runner、manifest、主调度清单和固定分片记录。 保留c_api_async_add和c_api_delicacy_async_add,继续分别覆盖普通Add调用和精细流水同步场景。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> 无 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> - 检查全仓不存在c_api_sync_add路径残留。 - 检查修改后的Markdown相对链接有效。 - 使用python3 -m json.tool检查presmoke manifest,检查通过。 - 执行3项相关presmoke生成器单元测试,测试通过。 - 执行git diff --check,检查通过。 - presmoke完整测试套件存在上游基线已有的2个失败和2个错误,与本次删除无关。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> - 删除中英文Add样例索引中的c_api_sync_add入口。 - 删除中英文API选型文档中的同步Add样例链接。 ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [x] 🧪 test: 新增或修改测试 - [x] 📝 docs: 文档更新 - [x] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!6554 | 15 小时前 |
| capi presmoke同步example样例 Co-authored-by: chenmyk<chenmingyu16@huawei.com> # message auto-generated for no-merge-commit merge: !6451 merge 260923_presmoke_capi into master capi presmoke同步example样例 Created-by: chenmyk Commit-by: chenmyk Merged-by: cann-robot Description: ## 描述 补充 02_simd_c_api 样例的 presmoke 覆盖。 本次新增 C API 样例的 runner、manifest 和调度记录,并支持 README 中使用“编译与运行”标题的样例解析。根据样例支持的目标架构分别纳入 dav-2201 和 dav-3510 的 NPU 调度。 同时修复场景号解析:cast 样例的 CMake 描述中包含 int4b_t、int32_t,原生成器会将类型名中的 4、32 误识别为场景号,进而生成不可运行的 cast__scenario_4、cast__scenario_32。现仅提取 N=描述 中等号左侧的场景号,并清理对应无效 runner、manifest、主调度和固定分片记录。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 - 使用 python3 -m json.tool 检查 case_runner_manifest.json,检查通过。 - 执行场景描述解析相关的 3 项生成器单元测试,测试通过。 - 执行 dav-2201 fixed schedule 单元测试,测试通过。 - 执行 dav-2201/npu strict dry-run,检查通过,共规划 308 个 case。 - 执行 dav-2201/npu 8 卡固定分片校验,检查通过,308/308 个 case 均完成分配。 - 检查全部 manifest 场景 case 与其源 CMake 的合法场景集合,共检查 399 个,未发现越界场景。 - 检查包含 N=描述 的场景定义样例,未发现其他类型位宽或描述数字被错误生成为场景。 - 执行 git diff --check,检查通过。 - 完整 test_generate_case_runners 套件存在既有失败:Windows 环境缺少 bash、旧测试与 explicit_skip_config 当前签名不匹配、manifest 覆盖基线问题;与本次修改无关。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [x] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!6451 | 18 天前 |
| Add presmoke runner and validation reports Co-authored-by: xun_zhuge<zhugexun@hisilicon.com> # message auto-generated for no-merge-commit merge: !2900 merge presmoke_opt into master Add presmoke runner and validation reports Created-by: xun_zhuge Commit-by: xun_zhuge Merged-by: cann-robot Description: ## 描述 本 PR 将 presmoke 看护入口收敛到 scripts/run_presmoke.sh,用于统一 910B/950 全量看护和单 case 调试,同时保留旧脚本调用方依赖的成功/失败输出约定。 主要变更: - scripts/run_presmoke.sh 作为统一入口,默认不带参数时仍按 910B NPU 模式执行。 - 成功时输出 execute samples success,失败时输出 execute samples failed 并返回非 0。 - 支持固定调度顺序,尽量降低 NPU 队列空闲时间。 - 全量运行前清理 CANN opp/vendors 下已安装自定义算子包,避免历史安装污染。 - 保留自定义算子依赖顺序:custom_op_static_lib、parallel_ops_package、custom_op 以及依赖 custom op 的 aclnn/aclop/onnx/tiling_sink 等 case 按依赖顺序执行。 - 报告统一输出到 presmoke_reports/,包含最终汇总、case timing、失败列表和 stage 日志。 - npu-smi info 仅作为元信息采集,增加短超时保护,避免收尾阶段卡住。 - CPU 模式改为显式 opt-in,可通过 MODES=cpu 或 MODE=cpu 启用。 ## 关联的Issue 无。 ## 测试 本地检查: bash bash -n scripts/run_presmoke.sh PYTHONPATH=scripts python3 -m unittest discover -s scripts/presmoke/tests -v git diff --check 910B 全量 NPU 看护验证: bash ARCH=dav-2201 MODES=npu PRIMARY_CARD=7 RETRY_CARDS="1 2 3 4 5 6" bash scripts/run_presmoke.sh 结果: - planned:170 - pass/fail/skip:168/0/2 - elapsed:667s - NPU busy/idle:665.697s / 0.893s - NPU utilization:99.9% - effective status:PASS 950 全量 NPU 看护验证: bash ARCH=dav-3510 MODES=npu PRIMARY_CARD=0 bash scripts/run_presmoke.sh 结果: - planned:249 - pass/fail/skip:244/3/2 - elapsed:1758s - NPU busy/idle:1757.458s / 0.812s - NPU utilization:接近 100% - effective status:FAIL 950 剩余 3 个失败均为 build 阶段编译失败,不是 NPU run timeout: - 03_simt_api/02_features/00_framework/00_pytorch/torch_library_roll - 03_simt_api/02_features/01_api_features/00_memory_access/insert_hash_table - 03_simt_api/03_best_practices/00_memory_optimizations/cache_hint 典型错误: - double precision operation is not allowed in aicore function - no matching function for call to 'max'/'min' ## 文档更新 更新 scripts/presmoke/README.md,补充: - 默认运行方式。 - 910B/950 看护参数示例。 - 单 case 调试方式。 - CPU 模式说明。 - 报告目录和日志说明。 - 运行全量时不要中途覆盖工作目录,避免污染 build/run 分阶段产物。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [x] ✨ feat: 新功能 - [x] ⚡ perf: 性能优化 - [x] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [x] 📝 docs: 文档更新 - [x] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!2900 | 4 个月前 |
| fix: align pybind bisheng toolchain Co-authored-by: xun_zhuge<zhugexun@hisilicon.com> # message auto-generated for no-merge-commit merge: !4275 merge fix_pytorch_framework_cases_20260709 into master fix: align pybind bisheng toolchain Created-by: xun_zhuge Commit-by: xun_zhuge Merged-by: cann-robot Description: ## 变更说明 - 对 pybind、torch_library、ge_torchair 和 torch_library_report_tensor 样例的 CMake toolchain 进行统一适配,从 CMake 选定的 C++ 编译器自动推导 GCC toolchain,并传递给 bisheng 编译和链接阶段。 - CMake 探测 Torch、torch_npu 和 pybind11 路径时临时关闭 SLOG 标准输出,避免运行日志污染路径变量。 - 保留 master 现有 scripts/run_presmoke.sh,新版编排能力继续通过 scripts/run_presmoke_v2.sh 验证,支持自动识别可见 NPU、多卡分片、固定调度、单 case/过滤列表执行、仅编译模式以及完整报告输出。 - 精简 presmoke v2 多卡执行:删除临时 workspace 复制及清理逻辑,多卡共享源码目录;scenario 使用独立构建目录并可跨卡分片,同时保留必要的自定义算子依赖约束。 - 调整自定义算子包依赖调度和 tiling sink 日志校验,减少不必要的全局锁与全局日志操作。 - 补齐两个新增 950 样例的 6 个 scenario runner、manifest 和固定调度顺序。 - 增加 910B 八卡固定分片清单及完整性校验,发现新增、遗漏或重复 case 时直接报错,避免固定顺序与实际 case 集合漂移。 - 优化多卡关键路径:保持自定义算子依赖链顺序,仅对 custom_op 算子包构建启用 16 路并行编译,其他 case 继续使用自动计算的并行度。 ## 验证 - 完成相关 PyTorch 样例的 clean build 和 NPU 运行验证。 - presmoke Shell 语法检查、分支级 pre-commit 检查和 138 个 Python 单元测试通过。 - 910B NPU 8 卡全量验证:共 301 个结果,299 PASS、0 FAIL、2 SKIP;删除 workspace 复制并允许 scenario 跨卡分片后,整体耗时 262 秒,NPU 利用率 87.073%。 - 910B 八卡调度实验确认固定分片覆盖 301 个 case;提高自定义算子依赖链的编译并行度后,关键路径进一步缩短。固定分片只提交 case 映射,历史耗时及运行报告不纳入仓库。 - 950 NPU 单卡全量验证:共 497 个结果,472 PASS、23 FAIL、2 SKIP;整体耗时 3487 秒,NPU 利用率约 99.98%。其中 18 个编译失败由当前 CANN 安装缺少 950 头文件引起,另有 5 个 bank_conflict_3510 场景精度校验失败。 See merge request: cann/asc-devkit!4275 | 3 个月前 |
| fix: align pybind bisheng toolchain Co-authored-by: xun_zhuge<zhugexun@hisilicon.com> # message auto-generated for no-merge-commit merge: !4275 merge fix_pytorch_framework_cases_20260709 into master fix: align pybind bisheng toolchain Created-by: xun_zhuge Commit-by: xun_zhuge Merged-by: cann-robot Description: ## 变更说明 - 对 pybind、torch_library、ge_torchair 和 torch_library_report_tensor 样例的 CMake toolchain 进行统一适配,从 CMake 选定的 C++ 编译器自动推导 GCC toolchain,并传递给 bisheng 编译和链接阶段。 - CMake 探测 Torch、torch_npu 和 pybind11 路径时临时关闭 SLOG 标准输出,避免运行日志污染路径变量。 - 保留 master 现有 scripts/run_presmoke.sh,新版编排能力继续通过 scripts/run_presmoke_v2.sh 验证,支持自动识别可见 NPU、多卡分片、固定调度、单 case/过滤列表执行、仅编译模式以及完整报告输出。 - 精简 presmoke v2 多卡执行:删除临时 workspace 复制及清理逻辑,多卡共享源码目录;scenario 使用独立构建目录并可跨卡分片,同时保留必要的自定义算子依赖约束。 - 调整自定义算子包依赖调度和 tiling sink 日志校验,减少不必要的全局锁与全局日志操作。 - 补齐两个新增 950 样例的 6 个 scenario runner、manifest 和固定调度顺序。 - 增加 910B 八卡固定分片清单及完整性校验,发现新增、遗漏或重复 case 时直接报错,避免固定顺序与实际 case 集合漂移。 - 优化多卡关键路径:保持自定义算子依赖链顺序,仅对 custom_op 算子包构建启用 16 路并行编译,其他 case 继续使用自动计算的并行度。 ## 验证 - 完成相关 PyTorch 样例的 clean build 和 NPU 运行验证。 - presmoke Shell 语法检查、分支级 pre-commit 检查和 138 个 Python 单元测试通过。 - 910B NPU 8 卡全量验证:共 301 个结果,299 PASS、0 FAIL、2 SKIP;删除 workspace 复制并允许 scenario 跨卡分片后,整体耗时 262 秒,NPU 利用率 87.073%。 - 910B 八卡调度实验确认固定分片覆盖 301 个 case;提高自定义算子依赖链的编译并行度后,关键路径进一步缩短。固定分片只提交 case 映射,历史耗时及运行报告不纳入仓库。 - 950 NPU 单卡全量验证:共 497 个结果,472 PASS、23 FAIL、2 SKIP;整体耗时 3487 秒,NPU 利用率约 99.98%。其中 18 个编译失败由当前 CANN 安装缺少 950 头文件引起,另有 5 个 bank_conflict_3510 场景精度校验失败。 See merge request: cann/asc-devkit!4275 | 3 个月前 |
| Add presmoke runner and validation reports Co-authored-by: xun_zhuge<zhugexun@hisilicon.com> # message auto-generated for no-merge-commit merge: !2900 merge presmoke_opt into master Add presmoke runner and validation reports Created-by: xun_zhuge Commit-by: xun_zhuge Merged-by: cann-robot Description: ## 描述 本 PR 将 presmoke 看护入口收敛到 scripts/run_presmoke.sh,用于统一 910B/950 全量看护和单 case 调试,同时保留旧脚本调用方依赖的成功/失败输出约定。 主要变更: - scripts/run_presmoke.sh 作为统一入口,默认不带参数时仍按 910B NPU 模式执行。 - 成功时输出 execute samples success,失败时输出 execute samples failed 并返回非 0。 - 支持固定调度顺序,尽量降低 NPU 队列空闲时间。 - 全量运行前清理 CANN opp/vendors 下已安装自定义算子包,避免历史安装污染。 - 保留自定义算子依赖顺序:custom_op_static_lib、parallel_ops_package、custom_op 以及依赖 custom op 的 aclnn/aclop/onnx/tiling_sink 等 case 按依赖顺序执行。 - 报告统一输出到 presmoke_reports/,包含最终汇总、case timing、失败列表和 stage 日志。 - npu-smi info 仅作为元信息采集,增加短超时保护,避免收尾阶段卡住。 - CPU 模式改为显式 opt-in,可通过 MODES=cpu 或 MODE=cpu 启用。 ## 关联的Issue 无。 ## 测试 本地检查: bash bash -n scripts/run_presmoke.sh PYTHONPATH=scripts python3 -m unittest discover -s scripts/presmoke/tests -v git diff --check 910B 全量 NPU 看护验证: bash ARCH=dav-2201 MODES=npu PRIMARY_CARD=7 RETRY_CARDS="1 2 3 4 5 6" bash scripts/run_presmoke.sh 结果: - planned:170 - pass/fail/skip:168/0/2 - elapsed:667s - NPU busy/idle:665.697s / 0.893s - NPU utilization:99.9% - effective status:PASS 950 全量 NPU 看护验证: bash ARCH=dav-3510 MODES=npu PRIMARY_CARD=0 bash scripts/run_presmoke.sh 结果: - planned:249 - pass/fail/skip:244/3/2 - elapsed:1758s - NPU busy/idle:1757.458s / 0.812s - NPU utilization:接近 100% - effective status:FAIL 950 剩余 3 个失败均为 build 阶段编译失败,不是 NPU run timeout: - 03_simt_api/02_features/00_framework/00_pytorch/torch_library_roll - 03_simt_api/02_features/01_api_features/00_memory_access/insert_hash_table - 03_simt_api/03_best_practices/00_memory_optimizations/cache_hint 典型错误: - double precision operation is not allowed in aicore function - no matching function for call to 'max'/'min' ## 文档更新 更新 scripts/presmoke/README.md,补充: - 默认运行方式。 - 910B/950 看护参数示例。 - 单 case 调试方式。 - CPU 模式说明。 - 报告目录和日志说明。 - 运行全量时不要中途覆盖工作目录,避免污染 build/run 分阶段产物。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [x] ✨ feat: 新功能 - [x] ⚡ perf: 性能优化 - [x] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [x] 📝 docs: 文档更新 - [x] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!2900 | 4 个月前 |
| Add presmoke runner and validation reports Co-authored-by: xun_zhuge<zhugexun@hisilicon.com> # message auto-generated for no-merge-commit merge: !2900 merge presmoke_opt into master Add presmoke runner and validation reports Created-by: xun_zhuge Commit-by: xun_zhuge Merged-by: cann-robot Description: ## 描述 本 PR 将 presmoke 看护入口收敛到 scripts/run_presmoke.sh,用于统一 910B/950 全量看护和单 case 调试,同时保留旧脚本调用方依赖的成功/失败输出约定。 主要变更: - scripts/run_presmoke.sh 作为统一入口,默认不带参数时仍按 910B NPU 模式执行。 - 成功时输出 execute samples success,失败时输出 execute samples failed 并返回非 0。 - 支持固定调度顺序,尽量降低 NPU 队列空闲时间。 - 全量运行前清理 CANN opp/vendors 下已安装自定义算子包,避免历史安装污染。 - 保留自定义算子依赖顺序:custom_op_static_lib、parallel_ops_package、custom_op 以及依赖 custom op 的 aclnn/aclop/onnx/tiling_sink 等 case 按依赖顺序执行。 - 报告统一输出到 presmoke_reports/,包含最终汇总、case timing、失败列表和 stage 日志。 - npu-smi info 仅作为元信息采集,增加短超时保护,避免收尾阶段卡住。 - CPU 模式改为显式 opt-in,可通过 MODES=cpu 或 MODE=cpu 启用。 ## 关联的Issue 无。 ## 测试 本地检查: bash bash -n scripts/run_presmoke.sh PYTHONPATH=scripts python3 -m unittest discover -s scripts/presmoke/tests -v git diff --check 910B 全量 NPU 看护验证: bash ARCH=dav-2201 MODES=npu PRIMARY_CARD=7 RETRY_CARDS="1 2 3 4 5 6" bash scripts/run_presmoke.sh 结果: - planned:170 - pass/fail/skip:168/0/2 - elapsed:667s - NPU busy/idle:665.697s / 0.893s - NPU utilization:99.9% - effective status:PASS 950 全量 NPU 看护验证: bash ARCH=dav-3510 MODES=npu PRIMARY_CARD=0 bash scripts/run_presmoke.sh 结果: - planned:249 - pass/fail/skip:244/3/2 - elapsed:1758s - NPU busy/idle:1757.458s / 0.812s - NPU utilization:接近 100% - effective status:FAIL 950 剩余 3 个失败均为 build 阶段编译失败,不是 NPU run timeout: - 03_simt_api/02_features/00_framework/00_pytorch/torch_library_roll - 03_simt_api/02_features/01_api_features/00_memory_access/insert_hash_table - 03_simt_api/03_best_practices/00_memory_optimizations/cache_hint 典型错误: - double precision operation is not allowed in aicore function - no matching function for call to 'max'/'min' ## 文档更新 更新 scripts/presmoke/README.md,补充: - 默认运行方式。 - 910B/950 看护参数示例。 - 单 case 调试方式。 - CPU 模式说明。 - 报告目录和日志说明。 - 运行全量时不要中途覆盖工作目录,避免污染 build/run 分阶段产物。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [x] ✨ feat: 新功能 - [x] ⚡ perf: 性能优化 - [x] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [x] 📝 docs: 文档更新 - [x] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!2900 | 4 个月前 |
| style: ruff 配置行宽 120 并关闭 magic trailing comma Co-authored-by: zhangyujia77<zhangyujia37@huawei.com> # message auto-generated for no-merge-commit merge: !6286 merge style/ruff-line-length-120 into master style: ruff 配置行宽 120 并关闭 magic trailing comma Created-by: zhangyujia77 Commit-by: zhangyujia77 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ruff.toml 新增两项配置并据此重排全仓 Python 代码: line-length = 120 行宽从默认 88 放宽到 120 [format] skip-magic-trailing-comma = true 忽略末尾逗号的强制展开语义 ### 为什么改 line-length ruff 的 line-length 此前**从未在仓库任何地方配置过** —— ruff.toml 只设了target-version,全仓搜 line-length 零命中,pre-commit 的 ruff hook 也没传参。 所以生效值 88 是 ruff 内置默认(沿用 Black 的约定),**不是评估过的技术决策**: $ ruff check --show-settings Settings path: ".../asc-devkit/ruff.toml" linter.line_length = 88 120 有三层依据: 1. **本仓 C++ 侧已定 120** —— .clang-format: ColumnLimit: 120。同一仓库 C++ 120、Python 88 本身不一致。 2. **CANN 生态其余 Python 仓统一为 120** —— pyasc、pypto、pto-isa、ops-test-kit、vllm-ascend(ruff),torch_npu、pytorch(flake8)。asc-devkit 是其中唯一没配的。 3. **本仓 Python 历史上事实遵守 120** —— ruff-format 落地前,非空行 P99.5 = 119,99.82% 的行 ≤ 120;超 120 的 38 行基本是嵌在 Python 里的 C++ 模板与宏定义。 88 列会把多参数调用强制拆成逐参数一行,一条语句常常变 3-5 行: python # 前(1 行) raise RuntimeError("Length of ASCENDC_TPL_UINT_{} {} is too short.".format(self.macro_type, self.name)) # 后(5 行) raise RuntimeError( "Length of ASCENDC_TPL_UINT_{} {} is too short.".format( self.macro_type, self.name ) ) ### 为什么关 magic trailing comma 末尾逗号会让 ruff-format 强制保持展开,即使该行放得下。统计范围内现存 886 处此类逗号,**绝大多数是 88 列时期 ruff 自己折行时补上的,并非作者意图** ——换到 120 列后这些调用本可收拢,却因那个自动留下的逗号继续保持展开。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [x] 🧹 chore: 代码格式修改 See merge request: cann/asc-devkit!6286 | 1 个月前 |
| 跳过cpu超时 Co-authored-by: cgcaof<caochenguang1@h-partners.com> # message auto-generated for no-merge-commit merge: !4469 merge master into master 跳过cpu超时 Created-by: cgcaof Commit-by: cgcaof Merged-by: cann-robot Description: ## 描述 三个最佳实践样例执行cpu模式过久,需要跳过cpu模式。下图是本地单独执行各个场景的所需时间,而冒烟是限制600s以内。  ## 关联的Issue 不涉及 ## 测试 tess pass! ## 文档更新 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [x] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!4469 | 3 个月前 |
| style: ruff 配置行宽 120 并关闭 magic trailing comma Co-authored-by: zhangyujia77<zhangyujia37@huawei.com> # message auto-generated for no-merge-commit merge: !6286 merge style/ruff-line-length-120 into master style: ruff 配置行宽 120 并关闭 magic trailing comma Created-by: zhangyujia77 Commit-by: zhangyujia77 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ruff.toml 新增两项配置并据此重排全仓 Python 代码: line-length = 120 行宽从默认 88 放宽到 120 [format] skip-magic-trailing-comma = true 忽略末尾逗号的强制展开语义 ### 为什么改 line-length ruff 的 line-length 此前**从未在仓库任何地方配置过** —— ruff.toml 只设了target-version,全仓搜 line-length 零命中,pre-commit 的 ruff hook 也没传参。 所以生效值 88 是 ruff 内置默认(沿用 Black 的约定),**不是评估过的技术决策**: $ ruff check --show-settings Settings path: ".../asc-devkit/ruff.toml" linter.line_length = 88 120 有三层依据: 1. **本仓 C++ 侧已定 120** —— .clang-format: ColumnLimit: 120。同一仓库 C++ 120、Python 88 本身不一致。 2. **CANN 生态其余 Python 仓统一为 120** —— pyasc、pypto、pto-isa、ops-test-kit、vllm-ascend(ruff),torch_npu、pytorch(flake8)。asc-devkit 是其中唯一没配的。 3. **本仓 Python 历史上事实遵守 120** —— ruff-format 落地前,非空行 P99.5 = 119,99.82% 的行 ≤ 120;超 120 的 38 行基本是嵌在 Python 里的 C++ 模板与宏定义。 88 列会把多参数调用强制拆成逐参数一行,一条语句常常变 3-5 行: python # 前(1 行) raise RuntimeError("Length of ASCENDC_TPL_UINT_{} {} is too short.".format(self.macro_type, self.name)) # 后(5 行) raise RuntimeError( "Length of ASCENDC_TPL_UINT_{} {} is too short.".format( self.macro_type, self.name ) ) ### 为什么关 magic trailing comma 末尾逗号会让 ruff-format 强制保持展开,即使该行放得下。统计范围内现存 886 处此类逗号,**绝大多数是 88 列时期 ruff 自己折行时补上的,并非作者意图** ——换到 120 列后这些调用本可收拢,却因那个自动留下的逗号继续保持展开。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [x] 🧹 chore: 代码格式修改 See merge request: cann/asc-devkit!6286 | 1 个月前 |
| style: ruff 配置行宽 120 并关闭 magic trailing comma Co-authored-by: zhangyujia77<zhangyujia37@huawei.com> # message auto-generated for no-merge-commit merge: !6286 merge style/ruff-line-length-120 into master style: ruff 配置行宽 120 并关闭 magic trailing comma Created-by: zhangyujia77 Commit-by: zhangyujia77 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ruff.toml 新增两项配置并据此重排全仓 Python 代码: line-length = 120 行宽从默认 88 放宽到 120 [format] skip-magic-trailing-comma = true 忽略末尾逗号的强制展开语义 ### 为什么改 line-length ruff 的 line-length 此前**从未在仓库任何地方配置过** —— ruff.toml 只设了target-version,全仓搜 line-length 零命中,pre-commit 的 ruff hook 也没传参。 所以生效值 88 是 ruff 内置默认(沿用 Black 的约定),**不是评估过的技术决策**: $ ruff check --show-settings Settings path: ".../asc-devkit/ruff.toml" linter.line_length = 88 120 有三层依据: 1. **本仓 C++ 侧已定 120** —— .clang-format: ColumnLimit: 120。同一仓库 C++ 120、Python 88 本身不一致。 2. **CANN 生态其余 Python 仓统一为 120** —— pyasc、pypto、pto-isa、ops-test-kit、vllm-ascend(ruff),torch_npu、pytorch(flake8)。asc-devkit 是其中唯一没配的。 3. **本仓 Python 历史上事实遵守 120** —— ruff-format 落地前,非空行 P99.5 = 119,99.82% 的行 ≤ 120;超 120 的 38 行基本是嵌在 Python 里的 C++ 模板与宏定义。 88 列会把多参数调用强制拆成逐参数一行,一条语句常常变 3-5 行: python # 前(1 行) raise RuntimeError("Length of ASCENDC_TPL_UINT_{} {} is too short.".format(self.macro_type, self.name)) # 后(5 行) raise RuntimeError( "Length of ASCENDC_TPL_UINT_{} {} is too short.".format( self.macro_type, self.name ) ) ### 为什么关 magic trailing comma 末尾逗号会让 ruff-format 强制保持展开,即使该行放得下。统计范围内现存 886 处此类逗号,**绝大多数是 88 列时期 ruff 自己折行时补上的,并非作者意图** ——换到 120 列后这些调用本可收拢,却因那个自动留下的逗号继续保持展开。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [x] 🧹 chore: 代码格式修改 See merge request: cann/asc-devkit!6286 | 1 个月前 |
| capi presmoke同步example样例 Co-authored-by: chenmyk<chenmingyu16@huawei.com> # message auto-generated for no-merge-commit merge: !6451 merge 260923_presmoke_capi into master capi presmoke同步example样例 Created-by: chenmyk Commit-by: chenmyk Merged-by: cann-robot Description: ## 描述 补充 02_simd_c_api 样例的 presmoke 覆盖。 本次新增 C API 样例的 runner、manifest 和调度记录,并支持 README 中使用“编译与运行”标题的样例解析。根据样例支持的目标架构分别纳入 dav-2201 和 dav-3510 的 NPU 调度。 同时修复场景号解析:cast 样例的 CMake 描述中包含 int4b_t、int32_t,原生成器会将类型名中的 4、32 误识别为场景号,进而生成不可运行的 cast__scenario_4、cast__scenario_32。现仅提取 N=描述 中等号左侧的场景号,并清理对应无效 runner、manifest、主调度和固定分片记录。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 - 使用 python3 -m json.tool 检查 case_runner_manifest.json,检查通过。 - 执行场景描述解析相关的 3 项生成器单元测试,测试通过。 - 执行 dav-2201 fixed schedule 单元测试,测试通过。 - 执行 dav-2201/npu strict dry-run,检查通过,共规划 308 个 case。 - 执行 dav-2201/npu 8 卡固定分片校验,检查通过,308/308 个 case 均完成分配。 - 检查全部 manifest 场景 case 与其源 CMake 的合法场景集合,共检查 399 个,未发现越界场景。 - 检查包含 N=描述 的场景定义样例,未发现其他类型位宽或描述数字被错误生成为场景。 - 执行 git diff --check,检查通过。 - 完整 test_generate_case_runners 套件存在既有失败:Windows 环境缺少 bash、旧测试与 explicit_skip_config 当前签名不匹配、manifest 覆盖基线问题;与本次修改无关。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [x] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!6451 | 18 天前 |
| 删除重复的C API同步Add样例 Co-authored-by: g00954335<guorenjie3@huawei.com> # message auto-generated for no-merge-commit merge: !6554 merge 2026_09_29_remove-redundant-c-api-sync-add into master 删除重复的C API同步Add样例 Created-by: GRJ_XIDUO Commit-by: g00954335 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> asc_add_sync及同步搬运接口废弃后,c_api_sync_add已改为普通异步接口配合asc_sync显式同步,与现有c_api_async_add样例的用途高度重复,目录名称也容易使开发者误认为该样例仍使用内置同步接口。 删除c_api_sync_add样例及其中英文索引和资料入口,并同步清理presmoke生成器例外项、runner、manifest、主调度清单和固定分片记录。 保留c_api_async_add和c_api_delicacy_async_add,继续分别覆盖普通Add调用和精细流水同步场景。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> 无 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> - 检查全仓不存在c_api_sync_add路径残留。 - 检查修改后的Markdown相对链接有效。 - 使用python3 -m json.tool检查presmoke manifest,检查通过。 - 执行3项相关presmoke生成器单元测试,测试通过。 - 执行git diff --check,检查通过。 - presmoke完整测试套件存在上游基线已有的2个失败和2个错误,与本次删除无关。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> - 删除中英文Add样例索引中的c_api_sync_add入口。 - 删除中英文API选型文档中的同步Add样例链接。 ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [x] 🧪 test: 新增或修改测试 - [x] 📝 docs: 文档更新 - [x] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!6554 | 15 小时前 |
| Add presmoke runner and validation reports Co-authored-by: xun_zhuge<zhugexun@hisilicon.com> # message auto-generated for no-merge-commit merge: !2900 merge presmoke_opt into master Add presmoke runner and validation reports Created-by: xun_zhuge Commit-by: xun_zhuge Merged-by: cann-robot Description: ## 描述 本 PR 将 presmoke 看护入口收敛到 scripts/run_presmoke.sh,用于统一 910B/950 全量看护和单 case 调试,同时保留旧脚本调用方依赖的成功/失败输出约定。 主要变更: - scripts/run_presmoke.sh 作为统一入口,默认不带参数时仍按 910B NPU 模式执行。 - 成功时输出 execute samples success,失败时输出 execute samples failed 并返回非 0。 - 支持固定调度顺序,尽量降低 NPU 队列空闲时间。 - 全量运行前清理 CANN opp/vendors 下已安装自定义算子包,避免历史安装污染。 - 保留自定义算子依赖顺序:custom_op_static_lib、parallel_ops_package、custom_op 以及依赖 custom op 的 aclnn/aclop/onnx/tiling_sink 等 case 按依赖顺序执行。 - 报告统一输出到 presmoke_reports/,包含最终汇总、case timing、失败列表和 stage 日志。 - npu-smi info 仅作为元信息采集,增加短超时保护,避免收尾阶段卡住。 - CPU 模式改为显式 opt-in,可通过 MODES=cpu 或 MODE=cpu 启用。 ## 关联的Issue 无。 ## 测试 本地检查: bash bash -n scripts/run_presmoke.sh PYTHONPATH=scripts python3 -m unittest discover -s scripts/presmoke/tests -v git diff --check 910B 全量 NPU 看护验证: bash ARCH=dav-2201 MODES=npu PRIMARY_CARD=7 RETRY_CARDS="1 2 3 4 5 6" bash scripts/run_presmoke.sh 结果: - planned:170 - pass/fail/skip:168/0/2 - elapsed:667s - NPU busy/idle:665.697s / 0.893s - NPU utilization:99.9% - effective status:PASS 950 全量 NPU 看护验证: bash ARCH=dav-3510 MODES=npu PRIMARY_CARD=0 bash scripts/run_presmoke.sh 结果: - planned:249 - pass/fail/skip:244/3/2 - elapsed:1758s - NPU busy/idle:1757.458s / 0.812s - NPU utilization:接近 100% - effective status:FAIL 950 剩余 3 个失败均为 build 阶段编译失败,不是 NPU run timeout: - 03_simt_api/02_features/00_framework/00_pytorch/torch_library_roll - 03_simt_api/02_features/01_api_features/00_memory_access/insert_hash_table - 03_simt_api/03_best_practices/00_memory_optimizations/cache_hint 典型错误: - double precision operation is not allowed in aicore function - no matching function for call to 'max'/'min' ## 文档更新 更新 scripts/presmoke/README.md,补充: - 默认运行方式。 - 910B/950 看护参数示例。 - 单 case 调试方式。 - CPU 模式说明。 - 报告目录和日志说明。 - 运行全量时不要中途覆盖工作目录,避免污染 build/run 分阶段产物。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [x] ✨ feat: 新功能 - [x] ⚡ perf: 性能优化 - [x] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [x] 📝 docs: 文档更新 - [x] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!2900 | 4 个月前 |
| style: ruff 配置行宽 120 并关闭 magic trailing comma Co-authored-by: zhangyujia77<zhangyujia37@huawei.com> # message auto-generated for no-merge-commit merge: !6286 merge style/ruff-line-length-120 into master style: ruff 配置行宽 120 并关闭 magic trailing comma Created-by: zhangyujia77 Commit-by: zhangyujia77 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ruff.toml 新增两项配置并据此重排全仓 Python 代码: line-length = 120 行宽从默认 88 放宽到 120 [format] skip-magic-trailing-comma = true 忽略末尾逗号的强制展开语义 ### 为什么改 line-length ruff 的 line-length 此前**从未在仓库任何地方配置过** —— ruff.toml 只设了target-version,全仓搜 line-length 零命中,pre-commit 的 ruff hook 也没传参。 所以生效值 88 是 ruff 内置默认(沿用 Black 的约定),**不是评估过的技术决策**: $ ruff check --show-settings Settings path: ".../asc-devkit/ruff.toml" linter.line_length = 88 120 有三层依据: 1. **本仓 C++ 侧已定 120** —— .clang-format: ColumnLimit: 120。同一仓库 C++ 120、Python 88 本身不一致。 2. **CANN 生态其余 Python 仓统一为 120** —— pyasc、pypto、pto-isa、ops-test-kit、vllm-ascend(ruff),torch_npu、pytorch(flake8)。asc-devkit 是其中唯一没配的。 3. **本仓 Python 历史上事实遵守 120** —— ruff-format 落地前,非空行 P99.5 = 119,99.82% 的行 ≤ 120;超 120 的 38 行基本是嵌在 Python 里的 C++ 模板与宏定义。 88 列会把多参数调用强制拆成逐参数一行,一条语句常常变 3-5 行: python # 前(1 行) raise RuntimeError("Length of ASCENDC_TPL_UINT_{} {} is too short.".format(self.macro_type, self.name)) # 后(5 行) raise RuntimeError( "Length of ASCENDC_TPL_UINT_{} {} is too short.".format( self.macro_type, self.name ) ) ### 为什么关 magic trailing comma 末尾逗号会让 ruff-format 强制保持展开,即使该行放得下。统计范围内现存 886 处此类逗号,**绝大多数是 88 列时期 ruff 自己折行时补上的,并非作者意图** ——换到 120 列后这些调用本可收拢,却因那个自动留下的逗号继续保持展开。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [x] 🧹 chore: 代码格式修改 See merge request: cann/asc-devkit!6286 | 1 个月前 |
| style: ruff 配置行宽 120 并关闭 magic trailing comma Co-authored-by: zhangyujia77<zhangyujia37@huawei.com> # message auto-generated for no-merge-commit merge: !6286 merge style/ruff-line-length-120 into master style: ruff 配置行宽 120 并关闭 magic trailing comma Created-by: zhangyujia77 Commit-by: zhangyujia77 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ruff.toml 新增两项配置并据此重排全仓 Python 代码: line-length = 120 行宽从默认 88 放宽到 120 [format] skip-magic-trailing-comma = true 忽略末尾逗号的强制展开语义 ### 为什么改 line-length ruff 的 line-length 此前**从未在仓库任何地方配置过** —— ruff.toml 只设了target-version,全仓搜 line-length 零命中,pre-commit 的 ruff hook 也没传参。 所以生效值 88 是 ruff 内置默认(沿用 Black 的约定),**不是评估过的技术决策**: $ ruff check --show-settings Settings path: ".../asc-devkit/ruff.toml" linter.line_length = 88 120 有三层依据: 1. **本仓 C++ 侧已定 120** —— .clang-format: ColumnLimit: 120。同一仓库 C++ 120、Python 88 本身不一致。 2. **CANN 生态其余 Python 仓统一为 120** —— pyasc、pypto、pto-isa、ops-test-kit、vllm-ascend(ruff),torch_npu、pytorch(flake8)。asc-devkit 是其中唯一没配的。 3. **本仓 Python 历史上事实遵守 120** —— ruff-format 落地前,非空行 P99.5 = 119,99.82% 的行 ≤ 120;超 120 的 38 行基本是嵌在 Python 里的 C++ 模板与宏定义。 88 列会把多参数调用强制拆成逐参数一行,一条语句常常变 3-5 行: python # 前(1 行) raise RuntimeError("Length of ASCENDC_TPL_UINT_{} {} is too short.".format(self.macro_type, self.name)) # 后(5 行) raise RuntimeError( "Length of ASCENDC_TPL_UINT_{} {} is too short.".format( self.macro_type, self.name ) ) ### 为什么关 magic trailing comma 末尾逗号会让 ruff-format 强制保持展开,即使该行放得下。统计范围内现存 886 处此类逗号,**绝大多数是 88 列时期 ruff 自己折行时补上的,并非作者意图** ——换到 120 列后这些调用本可收拢,却因那个自动留下的逗号继续保持展开。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [x] 🧹 chore: 代码格式修改 See merge request: cann/asc-devkit!6286 | 1 个月前 |
| capi presmoke同步example样例 Co-authored-by: chenmyk<chenmingyu16@huawei.com> # message auto-generated for no-merge-commit merge: !6451 merge 260923_presmoke_capi into master capi presmoke同步example样例 Created-by: chenmyk Commit-by: chenmyk Merged-by: cann-robot Description: ## 描述 补充 02_simd_c_api 样例的 presmoke 覆盖。 本次新增 C API 样例的 runner、manifest 和调度记录,并支持 README 中使用“编译与运行”标题的样例解析。根据样例支持的目标架构分别纳入 dav-2201 和 dav-3510 的 NPU 调度。 同时修复场景号解析:cast 样例的 CMake 描述中包含 int4b_t、int32_t,原生成器会将类型名中的 4、32 误识别为场景号,进而生成不可运行的 cast__scenario_4、cast__scenario_32。现仅提取 N=描述 中等号左侧的场景号,并清理对应无效 runner、manifest、主调度和固定分片记录。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 - 使用 python3 -m json.tool 检查 case_runner_manifest.json,检查通过。 - 执行场景描述解析相关的 3 项生成器单元测试,测试通过。 - 执行 dav-2201 fixed schedule 单元测试,测试通过。 - 执行 dav-2201/npu strict dry-run,检查通过,共规划 308 个 case。 - 执行 dav-2201/npu 8 卡固定分片校验,检查通过,308/308 个 case 均完成分配。 - 检查全部 manifest 场景 case 与其源 CMake 的合法场景集合,共检查 399 个,未发现越界场景。 - 检查包含 N=描述 的场景定义样例,未发现其他类型位宽或描述数字被错误生成为场景。 - 执行 git diff --check,检查通过。 - 完整 test_generate_case_runners 套件存在既有失败:Windows 环境缺少 bash、旧测试与 explicit_skip_config 当前签名不匹配、manifest 覆盖基线问题;与本次修改无关。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [x] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!6451 | 18 天前 |
| style: ruff 配置行宽 120 并关闭 magic trailing comma Co-authored-by: zhangyujia77<zhangyujia37@huawei.com> # message auto-generated for no-merge-commit merge: !6286 merge style/ruff-line-length-120 into master style: ruff 配置行宽 120 并关闭 magic trailing comma Created-by: zhangyujia77 Commit-by: zhangyujia77 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ruff.toml 新增两项配置并据此重排全仓 Python 代码: line-length = 120 行宽从默认 88 放宽到 120 [format] skip-magic-trailing-comma = true 忽略末尾逗号的强制展开语义 ### 为什么改 line-length ruff 的 line-length 此前**从未在仓库任何地方配置过** —— ruff.toml 只设了target-version,全仓搜 line-length 零命中,pre-commit 的 ruff hook 也没传参。 所以生效值 88 是 ruff 内置默认(沿用 Black 的约定),**不是评估过的技术决策**: $ ruff check --show-settings Settings path: ".../asc-devkit/ruff.toml" linter.line_length = 88 120 有三层依据: 1. **本仓 C++ 侧已定 120** —— .clang-format: ColumnLimit: 120。同一仓库 C++ 120、Python 88 本身不一致。 2. **CANN 生态其余 Python 仓统一为 120** —— pyasc、pypto、pto-isa、ops-test-kit、vllm-ascend(ruff),torch_npu、pytorch(flake8)。asc-devkit 是其中唯一没配的。 3. **本仓 Python 历史上事实遵守 120** —— ruff-format 落地前,非空行 P99.5 = 119,99.82% 的行 ≤ 120;超 120 的 38 行基本是嵌在 Python 里的 C++ 模板与宏定义。 88 列会把多参数调用强制拆成逐参数一行,一条语句常常变 3-5 行: python # 前(1 行) raise RuntimeError("Length of ASCENDC_TPL_UINT_{} {} is too short.".format(self.macro_type, self.name)) # 后(5 行) raise RuntimeError( "Length of ASCENDC_TPL_UINT_{} {} is too short.".format( self.macro_type, self.name ) ) ### 为什么关 magic trailing comma 末尾逗号会让 ruff-format 强制保持展开,即使该行放得下。统计范围内现存 886 处此类逗号,**绝大多数是 88 列时期 ruff 自己折行时补上的,并非作者意图** ——换到 120 列后这些调用本可收拢,却因那个自动留下的逗号继续保持展开。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [x] 🧹 chore: 代码格式修改 See merge request: cann/asc-devkit!6286 | 1 个月前 |
| style: ruff 配置行宽 120 并关闭 magic trailing comma Co-authored-by: zhangyujia77<zhangyujia37@huawei.com> # message auto-generated for no-merge-commit merge: !6286 merge style/ruff-line-length-120 into master style: ruff 配置行宽 120 并关闭 magic trailing comma Created-by: zhangyujia77 Commit-by: zhangyujia77 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ruff.toml 新增两项配置并据此重排全仓 Python 代码: line-length = 120 行宽从默认 88 放宽到 120 [format] skip-magic-trailing-comma = true 忽略末尾逗号的强制展开语义 ### 为什么改 line-length ruff 的 line-length 此前**从未在仓库任何地方配置过** —— ruff.toml 只设了target-version,全仓搜 line-length 零命中,pre-commit 的 ruff hook 也没传参。 所以生效值 88 是 ruff 内置默认(沿用 Black 的约定),**不是评估过的技术决策**: $ ruff check --show-settings Settings path: ".../asc-devkit/ruff.toml" linter.line_length = 88 120 有三层依据: 1. **本仓 C++ 侧已定 120** —— .clang-format: ColumnLimit: 120。同一仓库 C++ 120、Python 88 本身不一致。 2. **CANN 生态其余 Python 仓统一为 120** —— pyasc、pypto、pto-isa、ops-test-kit、vllm-ascend(ruff),torch_npu、pytorch(flake8)。asc-devkit 是其中唯一没配的。 3. **本仓 Python 历史上事实遵守 120** —— ruff-format 落地前,非空行 P99.5 = 119,99.82% 的行 ≤ 120;超 120 的 38 行基本是嵌在 Python 里的 C++ 模板与宏定义。 88 列会把多参数调用强制拆成逐参数一行,一条语句常常变 3-5 行: python # 前(1 行) raise RuntimeError("Length of ASCENDC_TPL_UINT_{} {} is too short.".format(self.macro_type, self.name)) # 后(5 行) raise RuntimeError( "Length of ASCENDC_TPL_UINT_{} {} is too short.".format( self.macro_type, self.name ) ) ### 为什么关 magic trailing comma 末尾逗号会让 ruff-format 强制保持展开,即使该行放得下。统计范围内现存 886 处此类逗号,**绝大多数是 88 列时期 ruff 自己折行时补上的,并非作者意图** ——换到 120 列后这些调用本可收拢,却因那个自动留下的逗号继续保持展开。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [x] 🧹 chore: 代码格式修改 See merge request: cann/asc-devkit!6286 | 1 个月前 |
| style: ruff 配置行宽 120 并关闭 magic trailing comma Co-authored-by: zhangyujia77<zhangyujia37@huawei.com> # message auto-generated for no-merge-commit merge: !6286 merge style/ruff-line-length-120 into master style: ruff 配置行宽 120 并关闭 magic trailing comma Created-by: zhangyujia77 Commit-by: zhangyujia77 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ruff.toml 新增两项配置并据此重排全仓 Python 代码: line-length = 120 行宽从默认 88 放宽到 120 [format] skip-magic-trailing-comma = true 忽略末尾逗号的强制展开语义 ### 为什么改 line-length ruff 的 line-length 此前**从未在仓库任何地方配置过** —— ruff.toml 只设了target-version,全仓搜 line-length 零命中,pre-commit 的 ruff hook 也没传参。 所以生效值 88 是 ruff 内置默认(沿用 Black 的约定),**不是评估过的技术决策**: $ ruff check --show-settings Settings path: ".../asc-devkit/ruff.toml" linter.line_length = 88 120 有三层依据: 1. **本仓 C++ 侧已定 120** —— .clang-format: ColumnLimit: 120。同一仓库 C++ 120、Python 88 本身不一致。 2. **CANN 生态其余 Python 仓统一为 120** —— pyasc、pypto、pto-isa、ops-test-kit、vllm-ascend(ruff),torch_npu、pytorch(flake8)。asc-devkit 是其中唯一没配的。 3. **本仓 Python 历史上事实遵守 120** —— ruff-format 落地前,非空行 P99.5 = 119,99.82% 的行 ≤ 120;超 120 的 38 行基本是嵌在 Python 里的 C++ 模板与宏定义。 88 列会把多参数调用强制拆成逐参数一行,一条语句常常变 3-5 行: python # 前(1 行) raise RuntimeError("Length of ASCENDC_TPL_UINT_{} {} is too short.".format(self.macro_type, self.name)) # 后(5 行) raise RuntimeError( "Length of ASCENDC_TPL_UINT_{} {} is too short.".format( self.macro_type, self.name ) ) ### 为什么关 magic trailing comma 末尾逗号会让 ruff-format 强制保持展开,即使该行放得下。统计范围内现存 886 处此类逗号,**绝大多数是 88 列时期 ruff 自己折行时补上的,并非作者意图** ——换到 120 列后这些调用本可收拢,却因那个自动留下的逗号继续保持展开。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [x] 🧹 chore: 代码格式修改 See merge request: cann/asc-devkit!6286 | 1 个月前 |
| Add presmoke runner and validation reports Co-authored-by: xun_zhuge<zhugexun@hisilicon.com> # message auto-generated for no-merge-commit merge: !2900 merge presmoke_opt into master Add presmoke runner and validation reports Created-by: xun_zhuge Commit-by: xun_zhuge Merged-by: cann-robot Description: ## 描述 本 PR 将 presmoke 看护入口收敛到 scripts/run_presmoke.sh,用于统一 910B/950 全量看护和单 case 调试,同时保留旧脚本调用方依赖的成功/失败输出约定。 主要变更: - scripts/run_presmoke.sh 作为统一入口,默认不带参数时仍按 910B NPU 模式执行。 - 成功时输出 execute samples success,失败时输出 execute samples failed 并返回非 0。 - 支持固定调度顺序,尽量降低 NPU 队列空闲时间。 - 全量运行前清理 CANN opp/vendors 下已安装自定义算子包,避免历史安装污染。 - 保留自定义算子依赖顺序:custom_op_static_lib、parallel_ops_package、custom_op 以及依赖 custom op 的 aclnn/aclop/onnx/tiling_sink 等 case 按依赖顺序执行。 - 报告统一输出到 presmoke_reports/,包含最终汇总、case timing、失败列表和 stage 日志。 - npu-smi info 仅作为元信息采集,增加短超时保护,避免收尾阶段卡住。 - CPU 模式改为显式 opt-in,可通过 MODES=cpu 或 MODE=cpu 启用。 ## 关联的Issue 无。 ## 测试 本地检查: bash bash -n scripts/run_presmoke.sh PYTHONPATH=scripts python3 -m unittest discover -s scripts/presmoke/tests -v git diff --check 910B 全量 NPU 看护验证: bash ARCH=dav-2201 MODES=npu PRIMARY_CARD=7 RETRY_CARDS="1 2 3 4 5 6" bash scripts/run_presmoke.sh 结果: - planned:170 - pass/fail/skip:168/0/2 - elapsed:667s - NPU busy/idle:665.697s / 0.893s - NPU utilization:99.9% - effective status:PASS 950 全量 NPU 看护验证: bash ARCH=dav-3510 MODES=npu PRIMARY_CARD=0 bash scripts/run_presmoke.sh 结果: - planned:249 - pass/fail/skip:244/3/2 - elapsed:1758s - NPU busy/idle:1757.458s / 0.812s - NPU utilization:接近 100% - effective status:FAIL 950 剩余 3 个失败均为 build 阶段编译失败,不是 NPU run timeout: - 03_simt_api/02_features/00_framework/00_pytorch/torch_library_roll - 03_simt_api/02_features/01_api_features/00_memory_access/insert_hash_table - 03_simt_api/03_best_practices/00_memory_optimizations/cache_hint 典型错误: - double precision operation is not allowed in aicore function - no matching function for call to 'max'/'min' ## 文档更新 更新 scripts/presmoke/README.md,补充: - 默认运行方式。 - 910B/950 看护参数示例。 - 单 case 调试方式。 - CPU 模式说明。 - 报告目录和日志说明。 - 运行全量时不要中途覆盖工作目录,避免污染 build/run 分阶段产物。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [x] ✨ feat: 新功能 - [x] ⚡ perf: 性能优化 - [x] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [x] 📝 docs: 文档更新 - [x] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!2900 | 4 个月前 |
| 扩展ruff-pre-commit hooks (第一批目录) Co-authored-by: Water8L<15279328600@163.com> # message auto-generated for no-merge-commit merge: !4256 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,并修改cmake|docs|impl|scripts|tests目录下对应不合规范的文件,除了暂时屏蔽的部分文件和错误类型 ## 关联的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!4256 | 3 个月前 |