| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
【collaborative-agent-kernel-evolution】新增 CAKE2 进化式 AscendC 算子生成 Team(仅 Vector 算子) Co-authored-by: Junyifannnn<fan.junyi@huawei.com> # message auto-generated for no-merge-commit merge: !313 merge feat/add-cake-plugin into master 【collaborative-agent-kernel-evolution】新增 CAKE2 进化式 AscendC 算子生成 Team(仅 Vector 算子) Created-by: gcw_P2Mh5H1S Commit-by: Junyifannnn Merged-by: cann-robot Description: ## 描述 **新特性**: 【collaborative-agent-kernel-evolution】新增 plugins-community/collaborative-agent-kernel-evolution —— 进化式 AscendC 算子生成 Team(仅 Vector 算子)。 含 3 个 Agent 与 19 个内置 Skill,覆盖「算子描述生成 → PyTorch 参考 → functional 转换 → AscendDSL baseline → DSL lowering 到 AscendC → 编译评估 →(可选)进化式多变体性能优化」全流程: - cake(primary):标准单算子生成主流程 - cake-evo(primary):并行多变体进化优化 - cake-partial(subagent):被 cake-evo 调度的半程生成子任务 自包含单插件(目录 plugins-community/collaborative-agent-kernel-evolution/,对齐 ops-easyasc-dsl 自包含形态) ## 关联的Issue 关联 Issue [#230](https://gitcode.com/cann/cannbot-skills/issues/230) ## 测试 - **L1 结构门禁 skill_validator.py**:19 skills + 3 agents **0 error**(warn-only:6× S-CON-05、2× S-CON-06「缺错误处理章节」,不阻断) - **tests/run-tests.sh --fast**:10 项全过(初次 test-line-endings 报 6 个 CRLF 文件,均为插件内 vendored 外部文档,已全部转 LF,复跑 PASS) ## 文档更新 - 新增 plugins-community/collaborative-agent-kernel-evolution/(含 README / docs / tests) - 根 .claude-plugin/marketplace.json 注册 cake(source ./plugins-community/collaborative-agent-kernel-evolution,category development) - 更新根 CHANGELOG.md(2026-06-02 条目) ## 类型标签 - [x] 🌟 新特性 ## AscendC 算子评测结果 | Operator | Job ID | Cases | Score | Avg speedup | Rel path | |---|---|---:|---:|---:|---|---| | apply_rotary_pos_emb | job_940a45830a2f | 20/20 | 63.339075 | 0.355671 | level2/apply_rotary_pos_emb | | softmax | job_5ec935012955 | 20/20 | 68.015671 | 0.661441 | level2/softmax | | topk | job_bc7b660e83a6 | 20/20 | 54.233631 | 0.119558 | level3/top_k | ## apply_rotary_pos_emb - Job: job_940a45830a2f; operator: ApplyRotaryPosEmb; cases: 20/20; score: 63.339075; avg_speedup: 0.355671. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level2/apply_rotary_pos_emb_1 | 182.06 | 89.56 | 35.02 | 0.491926 | 0.192354 | 0.270563 | | 2 | level2/apply_rotary_pos_emb_2 | 779.98 | 113.24 | 59.22 | 0.145183 | 0.075925 | 0.069723 | | 3 | level2/apply_rotary_pos_emb_3 | 125.34 | 78.24 | 14.56 | 0.624222 | 0.116164 | 0.365012 | | 4 | level2/apply_rotary_pos_emb_4 | 140.26 | 246.2 | 32.77 | 1.755312 | 0.233638 | 0.665057 | | 5 | level2/apply_rotary_pos_emb_5 | 3001.06 | 391.07 | 140.36 | 0.130311 | 0.04677 | 0.080578 | | 6 | level2/apply_rotary_pos_emb_6 | 654.54 | 347.8 | 34.78 | 0.531366 | 0.053137 | 0.335578 | | 7 | level2/apply_rotary_pos_emb_7 | 146.94 | 73.08 | 23.1 | 0.497346 | 0.157207 | 0.287539 | | 8 | level2/apply_rotary_pos_emb_8 | 360.54 | 74.4 | 26.64 | 0.206357 | 0.073889 | 0.125138 | | 9 | level2/apply_rotary_pos_emb_9 | 178.12 | 198.1 | 19.81 | 1.112172 | 0.111217 | 0.529679 | | 10 | level2/apply_rotary_pos_emb_10 | 274.06 | 163 | 16.3 | 0.59476 | 0.059476 | 0.362706 | | 11 | level2/apply_rotary_pos_emb_11 | 1398.00 | 186.7 | 98.62 | 0.133548 | 0.070544 | 0.063483 | | 12 | level2/apply_rotary_pos_emb_12 | 896.26 | 48 | 4.8 | 0.053556 | 0.005356 | 0.04622 | | 13 | level2/apply_rotary_pos_emb_13 | 595.38 | 425.07 | 100 | 0.713947 | 0.16796 | 0.396209 | | 14 | level2/apply_rotary_pos_emb_14 | 27.18 | 10 | 1 | 0.367918 | 0.036792 | 0.255827 | | 15 | level2/apply_rotary_pos_emb_15 | 86.22 | 21.7 | 2.17 | 0.251682 | 0.025168 | 0.18855 | | 16 | level2/apply_rotary_pos_emb_16 | 82.48 | 41.34 | 4.17 | 0.501212 | 0.050558 | 0.321874 | | 17 | level2/apply_rotary_pos_emb_17 | 5265.48 | 2621.60 | 262.16 | 0.497884 | 0.049788 | 0.320456 | | 18 | level2/apply_rotary_pos_emb_18 | 97.2 | 43.9 | 4.39 | 0.451646 | 0.045165 | 0.298594 | | 19 | level2/apply_rotary_pos_emb_19 | 27.12 | 10 | 1 | 0.368732 | 0.036873 | 0.256264 | | 20 | level2/apply_rotary_pos_emb_20 | 1260.70 | 183.04 | 54.04 | 0.145189 | 0.042865 | 0.096581 | ## softmax - Job: job_5ec935012955; operator: Softmax; cases: 20/20; score: 68.015671; avg_speedup: 0.661441. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level2/softmax_1 | 19.42 | 15.7 | 1.57 | 0.808445 | 0.080844 | 0.441839 | | 2 | level2/softmax_2 | 30.96 | 37.98 | 8.74 | 1.226744 | 0.2823 | 0.568208 | | 3 | level2/softmax_3 | 104.2 | 91.76 | 25.17 | 0.880614 | 0.241555 | 0.457286 | | 4 | level2/softmax_4 | 2175.34 | 1006.60 | 100.66 | 0.462732 | 0.046273 | 0.303943 | | 5 | level2/softmax_5 | 458.2 | 422.73 | 139.81 | 0.922588 | 0.305129 | 0.470506 | | 6 | level2/softmax_6 | 1907.08 | 786.04 | 101.69 | 0.412169 | 0.053322 | 0.274868 | | 7 | level2/softmax_7 | 22.42 | 20.04 | 3.14 | 0.893845 | 0.140054 | 0.467109 | | 8 | level2/softmax_8 | 61.92 | 58.12 | 17.49 | 0.93863 | 0.282461 | 0.477663 | | 9 | level2/softmax_9 | 1044.48 | 412.79 | 50.08 | 0.395211 | 0.047947 | 0.267266 | | 10 | level2/softmax_10 | 21.82 | 14.2 | 1.55 | 0.650779 | 0.071036 | 0.384265 | | 11 | level2/softmax_11 | 2669.88 | 1063.10 | 108.09 | 0.398183 | 0.040485 | 0.271557 | | 12 | level2/softmax_12 | 61.3 | 62.58 | 14.59 | 1.020881 | 0.23801 | 0.506758 | | 13 | level2/softmax_13 | 2246.58 | 30 | 3 | 0.013354 | 0.001335 | 0.011891 | | 14 | level2/softmax_14 | 238.52 | 227.3 | 22.73 | 0.95296 | 0.095296 | 0.486654 | | 15 | level2/softmax_15 | 30.6 | 30.46 | 4.56 | 0.995425 | 0.14902 | 0.498652 | | 16 | level2/softmax_16 | 115.28 | 15.7 | 1.57 | 0.13619 | 0.013619 | 0.110529 | | 17 | level2/softmax_17 | 19.98 | 18.64 | 4.35 | 0.932933 | 0.217718 | 0.477607 | | 18 | level2/softmax_18 | 24.9 | 20.12 | 3.14 | 0.808032 | 0.126104 | 0.438307 | | 19 | level2/softmax_19 | 119.64 | 31.3 | 3.13 | 0.261618 | 0.026162 | 0.194706 | | 20 | level2/softmax_20 | 1870.84 | 219.8 | 21.98 | 0.117487 | 0.011749 | 0.096654 | ## topk - Job: job_bc7b660e83a6; operator: TopK; cases: 20/20; score: 54.233631; avg_speedup: 0.119558. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level3/top_k_1 | 2431.10 | 10.9 | 1.09 | 0.004484 | 0.000448 | 0.004021 | | 2 | level3/top_k_2 | 279.02 | 21.8 | 2.18 | 0.078131 | 0.007813 | 0.066181 | | 3 | level3/top_k_3 | 995.88 | 174.8 | 17.48 | 0.175523 | 0.017552 | 0.13852 | | 4 | level3/top_k_4 | 281395.82 | 1398.10 | 139.81 | 0.004968 | 0.000497 | 0.004454 | | 5 | level3/top_k_5 | 2508.46 | 1398.10 | 139.81 | 0.557354 | 0.055735 | 0.346929 | | 6 | level3/top_k_6 | 6939698.16 | 1398.10 | 139.81 | 0.000201 | 2.015e-05 | 0.000181 | | 7 | level3/top_k_7 | 74.9 | 10.9 | 1.09 | 0.145527 | 0.014553 | 0.117316 | | 8 | level3/top_k_8 | 3213.32 | 21.5 | 2.15 | 0.006691 | 0.000669 | 0.00599 | | 9 | level3/top_k_9 | 97.66 | 13.8 | 1.38 | 0.141307 | 0.014131 | 0.114259 | | 10 | level3/top_k_10 | 95309.40 | 1035.20 | 103.52 | 0.010861 | 0.001086 | 0.009691 | | 11 | level3/top_k_11 | 104.16 | 10.9 | 1.09 | 0.104647 | 0.010465 | 0.086906 | | 12 | level3/top_k_12 | 111.12 | 22.8 | 2.28 | 0.205184 | 0.020518 | 0.158627 | | 13 | level3/top_k_13 | 4755.26 | 14.3 | 1.43 | 0.003007 | 0.000301 | 0.0027 | | 14 | level3/top_k_14 | 2448.26 | 20.8 | 2.08 | 0.008496 | 0.00085 | 0.007595 | | 15 | level3/top_k_15 | 19245.22 | 170.5 | 17.05 | 0.008859 | 0.000886 | 0.007917 | | 16 | level3/top_k_16 | 211.92 | 126.8 | 12.68 | 0.598339 | 0.059834 | 0.364182 | | 17 | level3/top_k_17 | 80.84 | 21.9 | 2.19 | 0.270905 | 0.027091 | 0.200386 | | 18 | level3/top_k_18 | 6133.36 | 24.4 | 2.44 | 0.003978 | 0.000398 | 0.003569 | | 19 | level3/top_k_19 | 184.64 | 10.9 | 1.09 | 0.059034 | 0.005903 | 0.050734 | | 20 | level3/top_k_20 | 5940.70 | 21.8 | 2.18 | 0.00367 | 0.000367 | 0.003293 | ## 未来三个月的计划 ### 第 1 个月 —— 完善 补全 reduce类,数学函数类,排序类算子的生成与优化skill和harness ### 第 2 个月 —— 拓展CV融合算子 增加对CV类融合算子如quant_batch_matmul,grouped_matmul_swiglu_quant等的生成适配,保障生成精度 ### 第 3 个月 —— 拓展attention算子 增加对attention类算子的适配 See merge request: cann/cannbot-skills!313 | 8 天前 | |
【collaborative-agent-kernel-evolution】新增 CAKE2 进化式 AscendC 算子生成 Team(仅 Vector 算子) Co-authored-by: Junyifannnn<fan.junyi@huawei.com> # message auto-generated for no-merge-commit merge: !313 merge feat/add-cake-plugin into master 【collaborative-agent-kernel-evolution】新增 CAKE2 进化式 AscendC 算子生成 Team(仅 Vector 算子) Created-by: gcw_P2Mh5H1S Commit-by: Junyifannnn Merged-by: cann-robot Description: ## 描述 **新特性**: 【collaborative-agent-kernel-evolution】新增 plugins-community/collaborative-agent-kernel-evolution —— 进化式 AscendC 算子生成 Team(仅 Vector 算子)。 含 3 个 Agent 与 19 个内置 Skill,覆盖「算子描述生成 → PyTorch 参考 → functional 转换 → AscendDSL baseline → DSL lowering 到 AscendC → 编译评估 →(可选)进化式多变体性能优化」全流程: - cake(primary):标准单算子生成主流程 - cake-evo(primary):并行多变体进化优化 - cake-partial(subagent):被 cake-evo 调度的半程生成子任务 自包含单插件(目录 plugins-community/collaborative-agent-kernel-evolution/,对齐 ops-easyasc-dsl 自包含形态) ## 关联的Issue 关联 Issue [#230](https://gitcode.com/cann/cannbot-skills/issues/230) ## 测试 - **L1 结构门禁 skill_validator.py**:19 skills + 3 agents **0 error**(warn-only:6× S-CON-05、2× S-CON-06「缺错误处理章节」,不阻断) - **tests/run-tests.sh --fast**:10 项全过(初次 test-line-endings 报 6 个 CRLF 文件,均为插件内 vendored 外部文档,已全部转 LF,复跑 PASS) ## 文档更新 - 新增 plugins-community/collaborative-agent-kernel-evolution/(含 README / docs / tests) - 根 .claude-plugin/marketplace.json 注册 cake(source ./plugins-community/collaborative-agent-kernel-evolution,category development) - 更新根 CHANGELOG.md(2026-06-02 条目) ## 类型标签 - [x] 🌟 新特性 ## AscendC 算子评测结果 | Operator | Job ID | Cases | Score | Avg speedup | Rel path | |---|---|---:|---:|---:|---|---| | apply_rotary_pos_emb | job_940a45830a2f | 20/20 | 63.339075 | 0.355671 | level2/apply_rotary_pos_emb | | softmax | job_5ec935012955 | 20/20 | 68.015671 | 0.661441 | level2/softmax | | topk | job_bc7b660e83a6 | 20/20 | 54.233631 | 0.119558 | level3/top_k | ## apply_rotary_pos_emb - Job: job_940a45830a2f; operator: ApplyRotaryPosEmb; cases: 20/20; score: 63.339075; avg_speedup: 0.355671. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level2/apply_rotary_pos_emb_1 | 182.06 | 89.56 | 35.02 | 0.491926 | 0.192354 | 0.270563 | | 2 | level2/apply_rotary_pos_emb_2 | 779.98 | 113.24 | 59.22 | 0.145183 | 0.075925 | 0.069723 | | 3 | level2/apply_rotary_pos_emb_3 | 125.34 | 78.24 | 14.56 | 0.624222 | 0.116164 | 0.365012 | | 4 | level2/apply_rotary_pos_emb_4 | 140.26 | 246.2 | 32.77 | 1.755312 | 0.233638 | 0.665057 | | 5 | level2/apply_rotary_pos_emb_5 | 3001.06 | 391.07 | 140.36 | 0.130311 | 0.04677 | 0.080578 | | 6 | level2/apply_rotary_pos_emb_6 | 654.54 | 347.8 | 34.78 | 0.531366 | 0.053137 | 0.335578 | | 7 | level2/apply_rotary_pos_emb_7 | 146.94 | 73.08 | 23.1 | 0.497346 | 0.157207 | 0.287539 | | 8 | level2/apply_rotary_pos_emb_8 | 360.54 | 74.4 | 26.64 | 0.206357 | 0.073889 | 0.125138 | | 9 | level2/apply_rotary_pos_emb_9 | 178.12 | 198.1 | 19.81 | 1.112172 | 0.111217 | 0.529679 | | 10 | level2/apply_rotary_pos_emb_10 | 274.06 | 163 | 16.3 | 0.59476 | 0.059476 | 0.362706 | | 11 | level2/apply_rotary_pos_emb_11 | 1398.00 | 186.7 | 98.62 | 0.133548 | 0.070544 | 0.063483 | | 12 | level2/apply_rotary_pos_emb_12 | 896.26 | 48 | 4.8 | 0.053556 | 0.005356 | 0.04622 | | 13 | level2/apply_rotary_pos_emb_13 | 595.38 | 425.07 | 100 | 0.713947 | 0.16796 | 0.396209 | | 14 | level2/apply_rotary_pos_emb_14 | 27.18 | 10 | 1 | 0.367918 | 0.036792 | 0.255827 | | 15 | level2/apply_rotary_pos_emb_15 | 86.22 | 21.7 | 2.17 | 0.251682 | 0.025168 | 0.18855 | | 16 | level2/apply_rotary_pos_emb_16 | 82.48 | 41.34 | 4.17 | 0.501212 | 0.050558 | 0.321874 | | 17 | level2/apply_rotary_pos_emb_17 | 5265.48 | 2621.60 | 262.16 | 0.497884 | 0.049788 | 0.320456 | | 18 | level2/apply_rotary_pos_emb_18 | 97.2 | 43.9 | 4.39 | 0.451646 | 0.045165 | 0.298594 | | 19 | level2/apply_rotary_pos_emb_19 | 27.12 | 10 | 1 | 0.368732 | 0.036873 | 0.256264 | | 20 | level2/apply_rotary_pos_emb_20 | 1260.70 | 183.04 | 54.04 | 0.145189 | 0.042865 | 0.096581 | ## softmax - Job: job_5ec935012955; operator: Softmax; cases: 20/20; score: 68.015671; avg_speedup: 0.661441. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level2/softmax_1 | 19.42 | 15.7 | 1.57 | 0.808445 | 0.080844 | 0.441839 | | 2 | level2/softmax_2 | 30.96 | 37.98 | 8.74 | 1.226744 | 0.2823 | 0.568208 | | 3 | level2/softmax_3 | 104.2 | 91.76 | 25.17 | 0.880614 | 0.241555 | 0.457286 | | 4 | level2/softmax_4 | 2175.34 | 1006.60 | 100.66 | 0.462732 | 0.046273 | 0.303943 | | 5 | level2/softmax_5 | 458.2 | 422.73 | 139.81 | 0.922588 | 0.305129 | 0.470506 | | 6 | level2/softmax_6 | 1907.08 | 786.04 | 101.69 | 0.412169 | 0.053322 | 0.274868 | | 7 | level2/softmax_7 | 22.42 | 20.04 | 3.14 | 0.893845 | 0.140054 | 0.467109 | | 8 | level2/softmax_8 | 61.92 | 58.12 | 17.49 | 0.93863 | 0.282461 | 0.477663 | | 9 | level2/softmax_9 | 1044.48 | 412.79 | 50.08 | 0.395211 | 0.047947 | 0.267266 | | 10 | level2/softmax_10 | 21.82 | 14.2 | 1.55 | 0.650779 | 0.071036 | 0.384265 | | 11 | level2/softmax_11 | 2669.88 | 1063.10 | 108.09 | 0.398183 | 0.040485 | 0.271557 | | 12 | level2/softmax_12 | 61.3 | 62.58 | 14.59 | 1.020881 | 0.23801 | 0.506758 | | 13 | level2/softmax_13 | 2246.58 | 30 | 3 | 0.013354 | 0.001335 | 0.011891 | | 14 | level2/softmax_14 | 238.52 | 227.3 | 22.73 | 0.95296 | 0.095296 | 0.486654 | | 15 | level2/softmax_15 | 30.6 | 30.46 | 4.56 | 0.995425 | 0.14902 | 0.498652 | | 16 | level2/softmax_16 | 115.28 | 15.7 | 1.57 | 0.13619 | 0.013619 | 0.110529 | | 17 | level2/softmax_17 | 19.98 | 18.64 | 4.35 | 0.932933 | 0.217718 | 0.477607 | | 18 | level2/softmax_18 | 24.9 | 20.12 | 3.14 | 0.808032 | 0.126104 | 0.438307 | | 19 | level2/softmax_19 | 119.64 | 31.3 | 3.13 | 0.261618 | 0.026162 | 0.194706 | | 20 | level2/softmax_20 | 1870.84 | 219.8 | 21.98 | 0.117487 | 0.011749 | 0.096654 | ## topk - Job: job_bc7b660e83a6; operator: TopK; cases: 20/20; score: 54.233631; avg_speedup: 0.119558. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level3/top_k_1 | 2431.10 | 10.9 | 1.09 | 0.004484 | 0.000448 | 0.004021 | | 2 | level3/top_k_2 | 279.02 | 21.8 | 2.18 | 0.078131 | 0.007813 | 0.066181 | | 3 | level3/top_k_3 | 995.88 | 174.8 | 17.48 | 0.175523 | 0.017552 | 0.13852 | | 4 | level3/top_k_4 | 281395.82 | 1398.10 | 139.81 | 0.004968 | 0.000497 | 0.004454 | | 5 | level3/top_k_5 | 2508.46 | 1398.10 | 139.81 | 0.557354 | 0.055735 | 0.346929 | | 6 | level3/top_k_6 | 6939698.16 | 1398.10 | 139.81 | 0.000201 | 2.015e-05 | 0.000181 | | 7 | level3/top_k_7 | 74.9 | 10.9 | 1.09 | 0.145527 | 0.014553 | 0.117316 | | 8 | level3/top_k_8 | 3213.32 | 21.5 | 2.15 | 0.006691 | 0.000669 | 0.00599 | | 9 | level3/top_k_9 | 97.66 | 13.8 | 1.38 | 0.141307 | 0.014131 | 0.114259 | | 10 | level3/top_k_10 | 95309.40 | 1035.20 | 103.52 | 0.010861 | 0.001086 | 0.009691 | | 11 | level3/top_k_11 | 104.16 | 10.9 | 1.09 | 0.104647 | 0.010465 | 0.086906 | | 12 | level3/top_k_12 | 111.12 | 22.8 | 2.28 | 0.205184 | 0.020518 | 0.158627 | | 13 | level3/top_k_13 | 4755.26 | 14.3 | 1.43 | 0.003007 | 0.000301 | 0.0027 | | 14 | level3/top_k_14 | 2448.26 | 20.8 | 2.08 | 0.008496 | 0.00085 | 0.007595 | | 15 | level3/top_k_15 | 19245.22 | 170.5 | 17.05 | 0.008859 | 0.000886 | 0.007917 | | 16 | level3/top_k_16 | 211.92 | 126.8 | 12.68 | 0.598339 | 0.059834 | 0.364182 | | 17 | level3/top_k_17 | 80.84 | 21.9 | 2.19 | 0.270905 | 0.027091 | 0.200386 | | 18 | level3/top_k_18 | 6133.36 | 24.4 | 2.44 | 0.003978 | 0.000398 | 0.003569 | | 19 | level3/top_k_19 | 184.64 | 10.9 | 1.09 | 0.059034 | 0.005903 | 0.050734 | | 20 | level3/top_k_20 | 5940.70 | 21.8 | 2.18 | 0.00367 | 0.000367 | 0.003293 | ## 未来三个月的计划 ### 第 1 个月 —— 完善 补全 reduce类,数学函数类,排序类算子的生成与优化skill和harness ### 第 2 个月 —— 拓展CV融合算子 增加对CV类融合算子如quant_batch_matmul,grouped_matmul_swiglu_quant等的生成适配,保障生成精度 ### 第 3 个月 —— 拓展attention算子 增加对attention类算子的适配 See merge request: cann/cannbot-skills!313 | 8 天前 | |
【collaborative-agent-kernel-evolution】新增 CAKE2 进化式 AscendC 算子生成 Team(仅 Vector 算子) Co-authored-by: Junyifannnn<fan.junyi@huawei.com> # message auto-generated for no-merge-commit merge: !313 merge feat/add-cake-plugin into master 【collaborative-agent-kernel-evolution】新增 CAKE2 进化式 AscendC 算子生成 Team(仅 Vector 算子) Created-by: gcw_P2Mh5H1S Commit-by: Junyifannnn Merged-by: cann-robot Description: ## 描述 **新特性**: 【collaborative-agent-kernel-evolution】新增 plugins-community/collaborative-agent-kernel-evolution —— 进化式 AscendC 算子生成 Team(仅 Vector 算子)。 含 3 个 Agent 与 19 个内置 Skill,覆盖「算子描述生成 → PyTorch 参考 → functional 转换 → AscendDSL baseline → DSL lowering 到 AscendC → 编译评估 →(可选)进化式多变体性能优化」全流程: - cake(primary):标准单算子生成主流程 - cake-evo(primary):并行多变体进化优化 - cake-partial(subagent):被 cake-evo 调度的半程生成子任务 自包含单插件(目录 plugins-community/collaborative-agent-kernel-evolution/,对齐 ops-easyasc-dsl 自包含形态) ## 关联的Issue 关联 Issue [#230](https://gitcode.com/cann/cannbot-skills/issues/230) ## 测试 - **L1 结构门禁 skill_validator.py**:19 skills + 3 agents **0 error**(warn-only:6× S-CON-05、2× S-CON-06「缺错误处理章节」,不阻断) - **tests/run-tests.sh --fast**:10 项全过(初次 test-line-endings 报 6 个 CRLF 文件,均为插件内 vendored 外部文档,已全部转 LF,复跑 PASS) ## 文档更新 - 新增 plugins-community/collaborative-agent-kernel-evolution/(含 README / docs / tests) - 根 .claude-plugin/marketplace.json 注册 cake(source ./plugins-community/collaborative-agent-kernel-evolution,category development) - 更新根 CHANGELOG.md(2026-06-02 条目) ## 类型标签 - [x] 🌟 新特性 ## AscendC 算子评测结果 | Operator | Job ID | Cases | Score | Avg speedup | Rel path | |---|---|---:|---:|---:|---|---| | apply_rotary_pos_emb | job_940a45830a2f | 20/20 | 63.339075 | 0.355671 | level2/apply_rotary_pos_emb | | softmax | job_5ec935012955 | 20/20 | 68.015671 | 0.661441 | level2/softmax | | topk | job_bc7b660e83a6 | 20/20 | 54.233631 | 0.119558 | level3/top_k | ## apply_rotary_pos_emb - Job: job_940a45830a2f; operator: ApplyRotaryPosEmb; cases: 20/20; score: 63.339075; avg_speedup: 0.355671. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level2/apply_rotary_pos_emb_1 | 182.06 | 89.56 | 35.02 | 0.491926 | 0.192354 | 0.270563 | | 2 | level2/apply_rotary_pos_emb_2 | 779.98 | 113.24 | 59.22 | 0.145183 | 0.075925 | 0.069723 | | 3 | level2/apply_rotary_pos_emb_3 | 125.34 | 78.24 | 14.56 | 0.624222 | 0.116164 | 0.365012 | | 4 | level2/apply_rotary_pos_emb_4 | 140.26 | 246.2 | 32.77 | 1.755312 | 0.233638 | 0.665057 | | 5 | level2/apply_rotary_pos_emb_5 | 3001.06 | 391.07 | 140.36 | 0.130311 | 0.04677 | 0.080578 | | 6 | level2/apply_rotary_pos_emb_6 | 654.54 | 347.8 | 34.78 | 0.531366 | 0.053137 | 0.335578 | | 7 | level2/apply_rotary_pos_emb_7 | 146.94 | 73.08 | 23.1 | 0.497346 | 0.157207 | 0.287539 | | 8 | level2/apply_rotary_pos_emb_8 | 360.54 | 74.4 | 26.64 | 0.206357 | 0.073889 | 0.125138 | | 9 | level2/apply_rotary_pos_emb_9 | 178.12 | 198.1 | 19.81 | 1.112172 | 0.111217 | 0.529679 | | 10 | level2/apply_rotary_pos_emb_10 | 274.06 | 163 | 16.3 | 0.59476 | 0.059476 | 0.362706 | | 11 | level2/apply_rotary_pos_emb_11 | 1398.00 | 186.7 | 98.62 | 0.133548 | 0.070544 | 0.063483 | | 12 | level2/apply_rotary_pos_emb_12 | 896.26 | 48 | 4.8 | 0.053556 | 0.005356 | 0.04622 | | 13 | level2/apply_rotary_pos_emb_13 | 595.38 | 425.07 | 100 | 0.713947 | 0.16796 | 0.396209 | | 14 | level2/apply_rotary_pos_emb_14 | 27.18 | 10 | 1 | 0.367918 | 0.036792 | 0.255827 | | 15 | level2/apply_rotary_pos_emb_15 | 86.22 | 21.7 | 2.17 | 0.251682 | 0.025168 | 0.18855 | | 16 | level2/apply_rotary_pos_emb_16 | 82.48 | 41.34 | 4.17 | 0.501212 | 0.050558 | 0.321874 | | 17 | level2/apply_rotary_pos_emb_17 | 5265.48 | 2621.60 | 262.16 | 0.497884 | 0.049788 | 0.320456 | | 18 | level2/apply_rotary_pos_emb_18 | 97.2 | 43.9 | 4.39 | 0.451646 | 0.045165 | 0.298594 | | 19 | level2/apply_rotary_pos_emb_19 | 27.12 | 10 | 1 | 0.368732 | 0.036873 | 0.256264 | | 20 | level2/apply_rotary_pos_emb_20 | 1260.70 | 183.04 | 54.04 | 0.145189 | 0.042865 | 0.096581 | ## softmax - Job: job_5ec935012955; operator: Softmax; cases: 20/20; score: 68.015671; avg_speedup: 0.661441. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level2/softmax_1 | 19.42 | 15.7 | 1.57 | 0.808445 | 0.080844 | 0.441839 | | 2 | level2/softmax_2 | 30.96 | 37.98 | 8.74 | 1.226744 | 0.2823 | 0.568208 | | 3 | level2/softmax_3 | 104.2 | 91.76 | 25.17 | 0.880614 | 0.241555 | 0.457286 | | 4 | level2/softmax_4 | 2175.34 | 1006.60 | 100.66 | 0.462732 | 0.046273 | 0.303943 | | 5 | level2/softmax_5 | 458.2 | 422.73 | 139.81 | 0.922588 | 0.305129 | 0.470506 | | 6 | level2/softmax_6 | 1907.08 | 786.04 | 101.69 | 0.412169 | 0.053322 | 0.274868 | | 7 | level2/softmax_7 | 22.42 | 20.04 | 3.14 | 0.893845 | 0.140054 | 0.467109 | | 8 | level2/softmax_8 | 61.92 | 58.12 | 17.49 | 0.93863 | 0.282461 | 0.477663 | | 9 | level2/softmax_9 | 1044.48 | 412.79 | 50.08 | 0.395211 | 0.047947 | 0.267266 | | 10 | level2/softmax_10 | 21.82 | 14.2 | 1.55 | 0.650779 | 0.071036 | 0.384265 | | 11 | level2/softmax_11 | 2669.88 | 1063.10 | 108.09 | 0.398183 | 0.040485 | 0.271557 | | 12 | level2/softmax_12 | 61.3 | 62.58 | 14.59 | 1.020881 | 0.23801 | 0.506758 | | 13 | level2/softmax_13 | 2246.58 | 30 | 3 | 0.013354 | 0.001335 | 0.011891 | | 14 | level2/softmax_14 | 238.52 | 227.3 | 22.73 | 0.95296 | 0.095296 | 0.486654 | | 15 | level2/softmax_15 | 30.6 | 30.46 | 4.56 | 0.995425 | 0.14902 | 0.498652 | | 16 | level2/softmax_16 | 115.28 | 15.7 | 1.57 | 0.13619 | 0.013619 | 0.110529 | | 17 | level2/softmax_17 | 19.98 | 18.64 | 4.35 | 0.932933 | 0.217718 | 0.477607 | | 18 | level2/softmax_18 | 24.9 | 20.12 | 3.14 | 0.808032 | 0.126104 | 0.438307 | | 19 | level2/softmax_19 | 119.64 | 31.3 | 3.13 | 0.261618 | 0.026162 | 0.194706 | | 20 | level2/softmax_20 | 1870.84 | 219.8 | 21.98 | 0.117487 | 0.011749 | 0.096654 | ## topk - Job: job_bc7b660e83a6; operator: TopK; cases: 20/20; score: 54.233631; avg_speedup: 0.119558. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level3/top_k_1 | 2431.10 | 10.9 | 1.09 | 0.004484 | 0.000448 | 0.004021 | | 2 | level3/top_k_2 | 279.02 | 21.8 | 2.18 | 0.078131 | 0.007813 | 0.066181 | | 3 | level3/top_k_3 | 995.88 | 174.8 | 17.48 | 0.175523 | 0.017552 | 0.13852 | | 4 | level3/top_k_4 | 281395.82 | 1398.10 | 139.81 | 0.004968 | 0.000497 | 0.004454 | | 5 | level3/top_k_5 | 2508.46 | 1398.10 | 139.81 | 0.557354 | 0.055735 | 0.346929 | | 6 | level3/top_k_6 | 6939698.16 | 1398.10 | 139.81 | 0.000201 | 2.015e-05 | 0.000181 | | 7 | level3/top_k_7 | 74.9 | 10.9 | 1.09 | 0.145527 | 0.014553 | 0.117316 | | 8 | level3/top_k_8 | 3213.32 | 21.5 | 2.15 | 0.006691 | 0.000669 | 0.00599 | | 9 | level3/top_k_9 | 97.66 | 13.8 | 1.38 | 0.141307 | 0.014131 | 0.114259 | | 10 | level3/top_k_10 | 95309.40 | 1035.20 | 103.52 | 0.010861 | 0.001086 | 0.009691 | | 11 | level3/top_k_11 | 104.16 | 10.9 | 1.09 | 0.104647 | 0.010465 | 0.086906 | | 12 | level3/top_k_12 | 111.12 | 22.8 | 2.28 | 0.205184 | 0.020518 | 0.158627 | | 13 | level3/top_k_13 | 4755.26 | 14.3 | 1.43 | 0.003007 | 0.000301 | 0.0027 | | 14 | level3/top_k_14 | 2448.26 | 20.8 | 2.08 | 0.008496 | 0.00085 | 0.007595 | | 15 | level3/top_k_15 | 19245.22 | 170.5 | 17.05 | 0.008859 | 0.000886 | 0.007917 | | 16 | level3/top_k_16 | 211.92 | 126.8 | 12.68 | 0.598339 | 0.059834 | 0.364182 | | 17 | level3/top_k_17 | 80.84 | 21.9 | 2.19 | 0.270905 | 0.027091 | 0.200386 | | 18 | level3/top_k_18 | 6133.36 | 24.4 | 2.44 | 0.003978 | 0.000398 | 0.003569 | | 19 | level3/top_k_19 | 184.64 | 10.9 | 1.09 | 0.059034 | 0.005903 | 0.050734 | | 20 | level3/top_k_20 | 5940.70 | 21.8 | 2.18 | 0.00367 | 0.000367 | 0.003293 | ## 未来三个月的计划 ### 第 1 个月 —— 完善 补全 reduce类,数学函数类,排序类算子的生成与优化skill和harness ### 第 2 个月 —— 拓展CV融合算子 增加对CV类融合算子如quant_batch_matmul,grouped_matmul_swiglu_quant等的生成适配,保障生成精度 ### 第 3 个月 —— 拓展attention算子 增加对attention类算子的适配 See merge request: cann/cannbot-skills!313 | 8 天前 | |
【collaborative-agent-kernel-evolution】新增 CAKE2 进化式 AscendC 算子生成 Team(仅 Vector 算子) Co-authored-by: Junyifannnn<fan.junyi@huawei.com> # message auto-generated for no-merge-commit merge: !313 merge feat/add-cake-plugin into master 【collaborative-agent-kernel-evolution】新增 CAKE2 进化式 AscendC 算子生成 Team(仅 Vector 算子) Created-by: gcw_P2Mh5H1S Commit-by: Junyifannnn Merged-by: cann-robot Description: ## 描述 **新特性**: 【collaborative-agent-kernel-evolution】新增 plugins-community/collaborative-agent-kernel-evolution —— 进化式 AscendC 算子生成 Team(仅 Vector 算子)。 含 3 个 Agent 与 19 个内置 Skill,覆盖「算子描述生成 → PyTorch 参考 → functional 转换 → AscendDSL baseline → DSL lowering 到 AscendC → 编译评估 →(可选)进化式多变体性能优化」全流程: - cake(primary):标准单算子生成主流程 - cake-evo(primary):并行多变体进化优化 - cake-partial(subagent):被 cake-evo 调度的半程生成子任务 自包含单插件(目录 plugins-community/collaborative-agent-kernel-evolution/,对齐 ops-easyasc-dsl 自包含形态) ## 关联的Issue 关联 Issue [#230](https://gitcode.com/cann/cannbot-skills/issues/230) ## 测试 - **L1 结构门禁 skill_validator.py**:19 skills + 3 agents **0 error**(warn-only:6× S-CON-05、2× S-CON-06「缺错误处理章节」,不阻断) - **tests/run-tests.sh --fast**:10 项全过(初次 test-line-endings 报 6 个 CRLF 文件,均为插件内 vendored 外部文档,已全部转 LF,复跑 PASS) ## 文档更新 - 新增 plugins-community/collaborative-agent-kernel-evolution/(含 README / docs / tests) - 根 .claude-plugin/marketplace.json 注册 cake(source ./plugins-community/collaborative-agent-kernel-evolution,category development) - 更新根 CHANGELOG.md(2026-06-02 条目) ## 类型标签 - [x] 🌟 新特性 ## AscendC 算子评测结果 | Operator | Job ID | Cases | Score | Avg speedup | Rel path | |---|---|---:|---:|---:|---|---| | apply_rotary_pos_emb | job_940a45830a2f | 20/20 | 63.339075 | 0.355671 | level2/apply_rotary_pos_emb | | softmax | job_5ec935012955 | 20/20 | 68.015671 | 0.661441 | level2/softmax | | topk | job_bc7b660e83a6 | 20/20 | 54.233631 | 0.119558 | level3/top_k | ## apply_rotary_pos_emb - Job: job_940a45830a2f; operator: ApplyRotaryPosEmb; cases: 20/20; score: 63.339075; avg_speedup: 0.355671. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level2/apply_rotary_pos_emb_1 | 182.06 | 89.56 | 35.02 | 0.491926 | 0.192354 | 0.270563 | | 2 | level2/apply_rotary_pos_emb_2 | 779.98 | 113.24 | 59.22 | 0.145183 | 0.075925 | 0.069723 | | 3 | level2/apply_rotary_pos_emb_3 | 125.34 | 78.24 | 14.56 | 0.624222 | 0.116164 | 0.365012 | | 4 | level2/apply_rotary_pos_emb_4 | 140.26 | 246.2 | 32.77 | 1.755312 | 0.233638 | 0.665057 | | 5 | level2/apply_rotary_pos_emb_5 | 3001.06 | 391.07 | 140.36 | 0.130311 | 0.04677 | 0.080578 | | 6 | level2/apply_rotary_pos_emb_6 | 654.54 | 347.8 | 34.78 | 0.531366 | 0.053137 | 0.335578 | | 7 | level2/apply_rotary_pos_emb_7 | 146.94 | 73.08 | 23.1 | 0.497346 | 0.157207 | 0.287539 | | 8 | level2/apply_rotary_pos_emb_8 | 360.54 | 74.4 | 26.64 | 0.206357 | 0.073889 | 0.125138 | | 9 | level2/apply_rotary_pos_emb_9 | 178.12 | 198.1 | 19.81 | 1.112172 | 0.111217 | 0.529679 | | 10 | level2/apply_rotary_pos_emb_10 | 274.06 | 163 | 16.3 | 0.59476 | 0.059476 | 0.362706 | | 11 | level2/apply_rotary_pos_emb_11 | 1398.00 | 186.7 | 98.62 | 0.133548 | 0.070544 | 0.063483 | | 12 | level2/apply_rotary_pos_emb_12 | 896.26 | 48 | 4.8 | 0.053556 | 0.005356 | 0.04622 | | 13 | level2/apply_rotary_pos_emb_13 | 595.38 | 425.07 | 100 | 0.713947 | 0.16796 | 0.396209 | | 14 | level2/apply_rotary_pos_emb_14 | 27.18 | 10 | 1 | 0.367918 | 0.036792 | 0.255827 | | 15 | level2/apply_rotary_pos_emb_15 | 86.22 | 21.7 | 2.17 | 0.251682 | 0.025168 | 0.18855 | | 16 | level2/apply_rotary_pos_emb_16 | 82.48 | 41.34 | 4.17 | 0.501212 | 0.050558 | 0.321874 | | 17 | level2/apply_rotary_pos_emb_17 | 5265.48 | 2621.60 | 262.16 | 0.497884 | 0.049788 | 0.320456 | | 18 | level2/apply_rotary_pos_emb_18 | 97.2 | 43.9 | 4.39 | 0.451646 | 0.045165 | 0.298594 | | 19 | level2/apply_rotary_pos_emb_19 | 27.12 | 10 | 1 | 0.368732 | 0.036873 | 0.256264 | | 20 | level2/apply_rotary_pos_emb_20 | 1260.70 | 183.04 | 54.04 | 0.145189 | 0.042865 | 0.096581 | ## softmax - Job: job_5ec935012955; operator: Softmax; cases: 20/20; score: 68.015671; avg_speedup: 0.661441. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level2/softmax_1 | 19.42 | 15.7 | 1.57 | 0.808445 | 0.080844 | 0.441839 | | 2 | level2/softmax_2 | 30.96 | 37.98 | 8.74 | 1.226744 | 0.2823 | 0.568208 | | 3 | level2/softmax_3 | 104.2 | 91.76 | 25.17 | 0.880614 | 0.241555 | 0.457286 | | 4 | level2/softmax_4 | 2175.34 | 1006.60 | 100.66 | 0.462732 | 0.046273 | 0.303943 | | 5 | level2/softmax_5 | 458.2 | 422.73 | 139.81 | 0.922588 | 0.305129 | 0.470506 | | 6 | level2/softmax_6 | 1907.08 | 786.04 | 101.69 | 0.412169 | 0.053322 | 0.274868 | | 7 | level2/softmax_7 | 22.42 | 20.04 | 3.14 | 0.893845 | 0.140054 | 0.467109 | | 8 | level2/softmax_8 | 61.92 | 58.12 | 17.49 | 0.93863 | 0.282461 | 0.477663 | | 9 | level2/softmax_9 | 1044.48 | 412.79 | 50.08 | 0.395211 | 0.047947 | 0.267266 | | 10 | level2/softmax_10 | 21.82 | 14.2 | 1.55 | 0.650779 | 0.071036 | 0.384265 | | 11 | level2/softmax_11 | 2669.88 | 1063.10 | 108.09 | 0.398183 | 0.040485 | 0.271557 | | 12 | level2/softmax_12 | 61.3 | 62.58 | 14.59 | 1.020881 | 0.23801 | 0.506758 | | 13 | level2/softmax_13 | 2246.58 | 30 | 3 | 0.013354 | 0.001335 | 0.011891 | | 14 | level2/softmax_14 | 238.52 | 227.3 | 22.73 | 0.95296 | 0.095296 | 0.486654 | | 15 | level2/softmax_15 | 30.6 | 30.46 | 4.56 | 0.995425 | 0.14902 | 0.498652 | | 16 | level2/softmax_16 | 115.28 | 15.7 | 1.57 | 0.13619 | 0.013619 | 0.110529 | | 17 | level2/softmax_17 | 19.98 | 18.64 | 4.35 | 0.932933 | 0.217718 | 0.477607 | | 18 | level2/softmax_18 | 24.9 | 20.12 | 3.14 | 0.808032 | 0.126104 | 0.438307 | | 19 | level2/softmax_19 | 119.64 | 31.3 | 3.13 | 0.261618 | 0.026162 | 0.194706 | | 20 | level2/softmax_20 | 1870.84 | 219.8 | 21.98 | 0.117487 | 0.011749 | 0.096654 | ## topk - Job: job_bc7b660e83a6; operator: TopK; cases: 20/20; score: 54.233631; avg_speedup: 0.119558. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level3/top_k_1 | 2431.10 | 10.9 | 1.09 | 0.004484 | 0.000448 | 0.004021 | | 2 | level3/top_k_2 | 279.02 | 21.8 | 2.18 | 0.078131 | 0.007813 | 0.066181 | | 3 | level3/top_k_3 | 995.88 | 174.8 | 17.48 | 0.175523 | 0.017552 | 0.13852 | | 4 | level3/top_k_4 | 281395.82 | 1398.10 | 139.81 | 0.004968 | 0.000497 | 0.004454 | | 5 | level3/top_k_5 | 2508.46 | 1398.10 | 139.81 | 0.557354 | 0.055735 | 0.346929 | | 6 | level3/top_k_6 | 6939698.16 | 1398.10 | 139.81 | 0.000201 | 2.015e-05 | 0.000181 | | 7 | level3/top_k_7 | 74.9 | 10.9 | 1.09 | 0.145527 | 0.014553 | 0.117316 | | 8 | level3/top_k_8 | 3213.32 | 21.5 | 2.15 | 0.006691 | 0.000669 | 0.00599 | | 9 | level3/top_k_9 | 97.66 | 13.8 | 1.38 | 0.141307 | 0.014131 | 0.114259 | | 10 | level3/top_k_10 | 95309.40 | 1035.20 | 103.52 | 0.010861 | 0.001086 | 0.009691 | | 11 | level3/top_k_11 | 104.16 | 10.9 | 1.09 | 0.104647 | 0.010465 | 0.086906 | | 12 | level3/top_k_12 | 111.12 | 22.8 | 2.28 | 0.205184 | 0.020518 | 0.158627 | | 13 | level3/top_k_13 | 4755.26 | 14.3 | 1.43 | 0.003007 | 0.000301 | 0.0027 | | 14 | level3/top_k_14 | 2448.26 | 20.8 | 2.08 | 0.008496 | 0.00085 | 0.007595 | | 15 | level3/top_k_15 | 19245.22 | 170.5 | 17.05 | 0.008859 | 0.000886 | 0.007917 | | 16 | level3/top_k_16 | 211.92 | 126.8 | 12.68 | 0.598339 | 0.059834 | 0.364182 | | 17 | level3/top_k_17 | 80.84 | 21.9 | 2.19 | 0.270905 | 0.027091 | 0.200386 | | 18 | level3/top_k_18 | 6133.36 | 24.4 | 2.44 | 0.003978 | 0.000398 | 0.003569 | | 19 | level3/top_k_19 | 184.64 | 10.9 | 1.09 | 0.059034 | 0.005903 | 0.050734 | | 20 | level3/top_k_20 | 5940.70 | 21.8 | 2.18 | 0.00367 | 0.000367 | 0.003293 | ## 未来三个月的计划 ### 第 1 个月 —— 完善 补全 reduce类,数学函数类,排序类算子的生成与优化skill和harness ### 第 2 个月 —— 拓展CV融合算子 增加对CV类融合算子如quant_batch_matmul,grouped_matmul_swiglu_quant等的生成适配,保障生成精度 ### 第 3 个月 —— 拓展attention算子 增加对attention类算子的适配 See merge request: cann/cannbot-skills!313 | 8 天前 | |
【collaborative-agent-kernel-evolution】新增 CAKE2 进化式 AscendC 算子生成 Team(仅 Vector 算子) Co-authored-by: Junyifannnn<fan.junyi@huawei.com> # message auto-generated for no-merge-commit merge: !313 merge feat/add-cake-plugin into master 【collaborative-agent-kernel-evolution】新增 CAKE2 进化式 AscendC 算子生成 Team(仅 Vector 算子) Created-by: gcw_P2Mh5H1S Commit-by: Junyifannnn Merged-by: cann-robot Description: ## 描述 **新特性**: 【collaborative-agent-kernel-evolution】新增 plugins-community/collaborative-agent-kernel-evolution —— 进化式 AscendC 算子生成 Team(仅 Vector 算子)。 含 3 个 Agent 与 19 个内置 Skill,覆盖「算子描述生成 → PyTorch 参考 → functional 转换 → AscendDSL baseline → DSL lowering 到 AscendC → 编译评估 →(可选)进化式多变体性能优化」全流程: - cake(primary):标准单算子生成主流程 - cake-evo(primary):并行多变体进化优化 - cake-partial(subagent):被 cake-evo 调度的半程生成子任务 自包含单插件(目录 plugins-community/collaborative-agent-kernel-evolution/,对齐 ops-easyasc-dsl 自包含形态) ## 关联的Issue 关联 Issue [#230](https://gitcode.com/cann/cannbot-skills/issues/230) ## 测试 - **L1 结构门禁 skill_validator.py**:19 skills + 3 agents **0 error**(warn-only:6× S-CON-05、2× S-CON-06「缺错误处理章节」,不阻断) - **tests/run-tests.sh --fast**:10 项全过(初次 test-line-endings 报 6 个 CRLF 文件,均为插件内 vendored 外部文档,已全部转 LF,复跑 PASS) ## 文档更新 - 新增 plugins-community/collaborative-agent-kernel-evolution/(含 README / docs / tests) - 根 .claude-plugin/marketplace.json 注册 cake(source ./plugins-community/collaborative-agent-kernel-evolution,category development) - 更新根 CHANGELOG.md(2026-06-02 条目) ## 类型标签 - [x] 🌟 新特性 ## AscendC 算子评测结果 | Operator | Job ID | Cases | Score | Avg speedup | Rel path | |---|---|---:|---:|---:|---|---| | apply_rotary_pos_emb | job_940a45830a2f | 20/20 | 63.339075 | 0.355671 | level2/apply_rotary_pos_emb | | softmax | job_5ec935012955 | 20/20 | 68.015671 | 0.661441 | level2/softmax | | topk | job_bc7b660e83a6 | 20/20 | 54.233631 | 0.119558 | level3/top_k | ## apply_rotary_pos_emb - Job: job_940a45830a2f; operator: ApplyRotaryPosEmb; cases: 20/20; score: 63.339075; avg_speedup: 0.355671. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level2/apply_rotary_pos_emb_1 | 182.06 | 89.56 | 35.02 | 0.491926 | 0.192354 | 0.270563 | | 2 | level2/apply_rotary_pos_emb_2 | 779.98 | 113.24 | 59.22 | 0.145183 | 0.075925 | 0.069723 | | 3 | level2/apply_rotary_pos_emb_3 | 125.34 | 78.24 | 14.56 | 0.624222 | 0.116164 | 0.365012 | | 4 | level2/apply_rotary_pos_emb_4 | 140.26 | 246.2 | 32.77 | 1.755312 | 0.233638 | 0.665057 | | 5 | level2/apply_rotary_pos_emb_5 | 3001.06 | 391.07 | 140.36 | 0.130311 | 0.04677 | 0.080578 | | 6 | level2/apply_rotary_pos_emb_6 | 654.54 | 347.8 | 34.78 | 0.531366 | 0.053137 | 0.335578 | | 7 | level2/apply_rotary_pos_emb_7 | 146.94 | 73.08 | 23.1 | 0.497346 | 0.157207 | 0.287539 | | 8 | level2/apply_rotary_pos_emb_8 | 360.54 | 74.4 | 26.64 | 0.206357 | 0.073889 | 0.125138 | | 9 | level2/apply_rotary_pos_emb_9 | 178.12 | 198.1 | 19.81 | 1.112172 | 0.111217 | 0.529679 | | 10 | level2/apply_rotary_pos_emb_10 | 274.06 | 163 | 16.3 | 0.59476 | 0.059476 | 0.362706 | | 11 | level2/apply_rotary_pos_emb_11 | 1398.00 | 186.7 | 98.62 | 0.133548 | 0.070544 | 0.063483 | | 12 | level2/apply_rotary_pos_emb_12 | 896.26 | 48 | 4.8 | 0.053556 | 0.005356 | 0.04622 | | 13 | level2/apply_rotary_pos_emb_13 | 595.38 | 425.07 | 100 | 0.713947 | 0.16796 | 0.396209 | | 14 | level2/apply_rotary_pos_emb_14 | 27.18 | 10 | 1 | 0.367918 | 0.036792 | 0.255827 | | 15 | level2/apply_rotary_pos_emb_15 | 86.22 | 21.7 | 2.17 | 0.251682 | 0.025168 | 0.18855 | | 16 | level2/apply_rotary_pos_emb_16 | 82.48 | 41.34 | 4.17 | 0.501212 | 0.050558 | 0.321874 | | 17 | level2/apply_rotary_pos_emb_17 | 5265.48 | 2621.60 | 262.16 | 0.497884 | 0.049788 | 0.320456 | | 18 | level2/apply_rotary_pos_emb_18 | 97.2 | 43.9 | 4.39 | 0.451646 | 0.045165 | 0.298594 | | 19 | level2/apply_rotary_pos_emb_19 | 27.12 | 10 | 1 | 0.368732 | 0.036873 | 0.256264 | | 20 | level2/apply_rotary_pos_emb_20 | 1260.70 | 183.04 | 54.04 | 0.145189 | 0.042865 | 0.096581 | ## softmax - Job: job_5ec935012955; operator: Softmax; cases: 20/20; score: 68.015671; avg_speedup: 0.661441. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level2/softmax_1 | 19.42 | 15.7 | 1.57 | 0.808445 | 0.080844 | 0.441839 | | 2 | level2/softmax_2 | 30.96 | 37.98 | 8.74 | 1.226744 | 0.2823 | 0.568208 | | 3 | level2/softmax_3 | 104.2 | 91.76 | 25.17 | 0.880614 | 0.241555 | 0.457286 | | 4 | level2/softmax_4 | 2175.34 | 1006.60 | 100.66 | 0.462732 | 0.046273 | 0.303943 | | 5 | level2/softmax_5 | 458.2 | 422.73 | 139.81 | 0.922588 | 0.305129 | 0.470506 | | 6 | level2/softmax_6 | 1907.08 | 786.04 | 101.69 | 0.412169 | 0.053322 | 0.274868 | | 7 | level2/softmax_7 | 22.42 | 20.04 | 3.14 | 0.893845 | 0.140054 | 0.467109 | | 8 | level2/softmax_8 | 61.92 | 58.12 | 17.49 | 0.93863 | 0.282461 | 0.477663 | | 9 | level2/softmax_9 | 1044.48 | 412.79 | 50.08 | 0.395211 | 0.047947 | 0.267266 | | 10 | level2/softmax_10 | 21.82 | 14.2 | 1.55 | 0.650779 | 0.071036 | 0.384265 | | 11 | level2/softmax_11 | 2669.88 | 1063.10 | 108.09 | 0.398183 | 0.040485 | 0.271557 | | 12 | level2/softmax_12 | 61.3 | 62.58 | 14.59 | 1.020881 | 0.23801 | 0.506758 | | 13 | level2/softmax_13 | 2246.58 | 30 | 3 | 0.013354 | 0.001335 | 0.011891 | | 14 | level2/softmax_14 | 238.52 | 227.3 | 22.73 | 0.95296 | 0.095296 | 0.486654 | | 15 | level2/softmax_15 | 30.6 | 30.46 | 4.56 | 0.995425 | 0.14902 | 0.498652 | | 16 | level2/softmax_16 | 115.28 | 15.7 | 1.57 | 0.13619 | 0.013619 | 0.110529 | | 17 | level2/softmax_17 | 19.98 | 18.64 | 4.35 | 0.932933 | 0.217718 | 0.477607 | | 18 | level2/softmax_18 | 24.9 | 20.12 | 3.14 | 0.808032 | 0.126104 | 0.438307 | | 19 | level2/softmax_19 | 119.64 | 31.3 | 3.13 | 0.261618 | 0.026162 | 0.194706 | | 20 | level2/softmax_20 | 1870.84 | 219.8 | 21.98 | 0.117487 | 0.011749 | 0.096654 | ## topk - Job: job_bc7b660e83a6; operator: TopK; cases: 20/20; score: 54.233631; avg_speedup: 0.119558. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level3/top_k_1 | 2431.10 | 10.9 | 1.09 | 0.004484 | 0.000448 | 0.004021 | | 2 | level3/top_k_2 | 279.02 | 21.8 | 2.18 | 0.078131 | 0.007813 | 0.066181 | | 3 | level3/top_k_3 | 995.88 | 174.8 | 17.48 | 0.175523 | 0.017552 | 0.13852 | | 4 | level3/top_k_4 | 281395.82 | 1398.10 | 139.81 | 0.004968 | 0.000497 | 0.004454 | | 5 | level3/top_k_5 | 2508.46 | 1398.10 | 139.81 | 0.557354 | 0.055735 | 0.346929 | | 6 | level3/top_k_6 | 6939698.16 | 1398.10 | 139.81 | 0.000201 | 2.015e-05 | 0.000181 | | 7 | level3/top_k_7 | 74.9 | 10.9 | 1.09 | 0.145527 | 0.014553 | 0.117316 | | 8 | level3/top_k_8 | 3213.32 | 21.5 | 2.15 | 0.006691 | 0.000669 | 0.00599 | | 9 | level3/top_k_9 | 97.66 | 13.8 | 1.38 | 0.141307 | 0.014131 | 0.114259 | | 10 | level3/top_k_10 | 95309.40 | 1035.20 | 103.52 | 0.010861 | 0.001086 | 0.009691 | | 11 | level3/top_k_11 | 104.16 | 10.9 | 1.09 | 0.104647 | 0.010465 | 0.086906 | | 12 | level3/top_k_12 | 111.12 | 22.8 | 2.28 | 0.205184 | 0.020518 | 0.158627 | | 13 | level3/top_k_13 | 4755.26 | 14.3 | 1.43 | 0.003007 | 0.000301 | 0.0027 | | 14 | level3/top_k_14 | 2448.26 | 20.8 | 2.08 | 0.008496 | 0.00085 | 0.007595 | | 15 | level3/top_k_15 | 19245.22 | 170.5 | 17.05 | 0.008859 | 0.000886 | 0.007917 | | 16 | level3/top_k_16 | 211.92 | 126.8 | 12.68 | 0.598339 | 0.059834 | 0.364182 | | 17 | level3/top_k_17 | 80.84 | 21.9 | 2.19 | 0.270905 | 0.027091 | 0.200386 | | 18 | level3/top_k_18 | 6133.36 | 24.4 | 2.44 | 0.003978 | 0.000398 | 0.003569 | | 19 | level3/top_k_19 | 184.64 | 10.9 | 1.09 | 0.059034 | 0.005903 | 0.050734 | | 20 | level3/top_k_20 | 5940.70 | 21.8 | 2.18 | 0.00367 | 0.000367 | 0.003293 | ## 未来三个月的计划 ### 第 1 个月 —— 完善 补全 reduce类,数学函数类,排序类算子的生成与优化skill和harness ### 第 2 个月 —— 拓展CV融合算子 增加对CV类融合算子如quant_batch_matmul,grouped_matmul_swiglu_quant等的生成适配,保障生成精度 ### 第 3 个月 —— 拓展attention算子 增加对attention类算子的适配 See merge request: cann/cannbot-skills!313 | 8 天前 | |
【collaborative-agent-kernel-evolution】新增 CAKE2 进化式 AscendC 算子生成 Team(仅 Vector 算子) Co-authored-by: Junyifannnn<fan.junyi@huawei.com> # message auto-generated for no-merge-commit merge: !313 merge feat/add-cake-plugin into master 【collaborative-agent-kernel-evolution】新增 CAKE2 进化式 AscendC 算子生成 Team(仅 Vector 算子) Created-by: gcw_P2Mh5H1S Commit-by: Junyifannnn Merged-by: cann-robot Description: ## 描述 **新特性**: 【collaborative-agent-kernel-evolution】新增 plugins-community/collaborative-agent-kernel-evolution —— 进化式 AscendC 算子生成 Team(仅 Vector 算子)。 含 3 个 Agent 与 19 个内置 Skill,覆盖「算子描述生成 → PyTorch 参考 → functional 转换 → AscendDSL baseline → DSL lowering 到 AscendC → 编译评估 →(可选)进化式多变体性能优化」全流程: - cake(primary):标准单算子生成主流程 - cake-evo(primary):并行多变体进化优化 - cake-partial(subagent):被 cake-evo 调度的半程生成子任务 自包含单插件(目录 plugins-community/collaborative-agent-kernel-evolution/,对齐 ops-easyasc-dsl 自包含形态) ## 关联的Issue 关联 Issue [#230](https://gitcode.com/cann/cannbot-skills/issues/230) ## 测试 - **L1 结构门禁 skill_validator.py**:19 skills + 3 agents **0 error**(warn-only:6× S-CON-05、2× S-CON-06「缺错误处理章节」,不阻断) - **tests/run-tests.sh --fast**:10 项全过(初次 test-line-endings 报 6 个 CRLF 文件,均为插件内 vendored 外部文档,已全部转 LF,复跑 PASS) ## 文档更新 - 新增 plugins-community/collaborative-agent-kernel-evolution/(含 README / docs / tests) - 根 .claude-plugin/marketplace.json 注册 cake(source ./plugins-community/collaborative-agent-kernel-evolution,category development) - 更新根 CHANGELOG.md(2026-06-02 条目) ## 类型标签 - [x] 🌟 新特性 ## AscendC 算子评测结果 | Operator | Job ID | Cases | Score | Avg speedup | Rel path | |---|---|---:|---:|---:|---|---| | apply_rotary_pos_emb | job_940a45830a2f | 20/20 | 63.339075 | 0.355671 | level2/apply_rotary_pos_emb | | softmax | job_5ec935012955 | 20/20 | 68.015671 | 0.661441 | level2/softmax | | topk | job_bc7b660e83a6 | 20/20 | 54.233631 | 0.119558 | level3/top_k | ## apply_rotary_pos_emb - Job: job_940a45830a2f; operator: ApplyRotaryPosEmb; cases: 20/20; score: 63.339075; avg_speedup: 0.355671. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level2/apply_rotary_pos_emb_1 | 182.06 | 89.56 | 35.02 | 0.491926 | 0.192354 | 0.270563 | | 2 | level2/apply_rotary_pos_emb_2 | 779.98 | 113.24 | 59.22 | 0.145183 | 0.075925 | 0.069723 | | 3 | level2/apply_rotary_pos_emb_3 | 125.34 | 78.24 | 14.56 | 0.624222 | 0.116164 | 0.365012 | | 4 | level2/apply_rotary_pos_emb_4 | 140.26 | 246.2 | 32.77 | 1.755312 | 0.233638 | 0.665057 | | 5 | level2/apply_rotary_pos_emb_5 | 3001.06 | 391.07 | 140.36 | 0.130311 | 0.04677 | 0.080578 | | 6 | level2/apply_rotary_pos_emb_6 | 654.54 | 347.8 | 34.78 | 0.531366 | 0.053137 | 0.335578 | | 7 | level2/apply_rotary_pos_emb_7 | 146.94 | 73.08 | 23.1 | 0.497346 | 0.157207 | 0.287539 | | 8 | level2/apply_rotary_pos_emb_8 | 360.54 | 74.4 | 26.64 | 0.206357 | 0.073889 | 0.125138 | | 9 | level2/apply_rotary_pos_emb_9 | 178.12 | 198.1 | 19.81 | 1.112172 | 0.111217 | 0.529679 | | 10 | level2/apply_rotary_pos_emb_10 | 274.06 | 163 | 16.3 | 0.59476 | 0.059476 | 0.362706 | | 11 | level2/apply_rotary_pos_emb_11 | 1398.00 | 186.7 | 98.62 | 0.133548 | 0.070544 | 0.063483 | | 12 | level2/apply_rotary_pos_emb_12 | 896.26 | 48 | 4.8 | 0.053556 | 0.005356 | 0.04622 | | 13 | level2/apply_rotary_pos_emb_13 | 595.38 | 425.07 | 100 | 0.713947 | 0.16796 | 0.396209 | | 14 | level2/apply_rotary_pos_emb_14 | 27.18 | 10 | 1 | 0.367918 | 0.036792 | 0.255827 | | 15 | level2/apply_rotary_pos_emb_15 | 86.22 | 21.7 | 2.17 | 0.251682 | 0.025168 | 0.18855 | | 16 | level2/apply_rotary_pos_emb_16 | 82.48 | 41.34 | 4.17 | 0.501212 | 0.050558 | 0.321874 | | 17 | level2/apply_rotary_pos_emb_17 | 5265.48 | 2621.60 | 262.16 | 0.497884 | 0.049788 | 0.320456 | | 18 | level2/apply_rotary_pos_emb_18 | 97.2 | 43.9 | 4.39 | 0.451646 | 0.045165 | 0.298594 | | 19 | level2/apply_rotary_pos_emb_19 | 27.12 | 10 | 1 | 0.368732 | 0.036873 | 0.256264 | | 20 | level2/apply_rotary_pos_emb_20 | 1260.70 | 183.04 | 54.04 | 0.145189 | 0.042865 | 0.096581 | ## softmax - Job: job_5ec935012955; operator: Softmax; cases: 20/20; score: 68.015671; avg_speedup: 0.661441. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level2/softmax_1 | 19.42 | 15.7 | 1.57 | 0.808445 | 0.080844 | 0.441839 | | 2 | level2/softmax_2 | 30.96 | 37.98 | 8.74 | 1.226744 | 0.2823 | 0.568208 | | 3 | level2/softmax_3 | 104.2 | 91.76 | 25.17 | 0.880614 | 0.241555 | 0.457286 | | 4 | level2/softmax_4 | 2175.34 | 1006.60 | 100.66 | 0.462732 | 0.046273 | 0.303943 | | 5 | level2/softmax_5 | 458.2 | 422.73 | 139.81 | 0.922588 | 0.305129 | 0.470506 | | 6 | level2/softmax_6 | 1907.08 | 786.04 | 101.69 | 0.412169 | 0.053322 | 0.274868 | | 7 | level2/softmax_7 | 22.42 | 20.04 | 3.14 | 0.893845 | 0.140054 | 0.467109 | | 8 | level2/softmax_8 | 61.92 | 58.12 | 17.49 | 0.93863 | 0.282461 | 0.477663 | | 9 | level2/softmax_9 | 1044.48 | 412.79 | 50.08 | 0.395211 | 0.047947 | 0.267266 | | 10 | level2/softmax_10 | 21.82 | 14.2 | 1.55 | 0.650779 | 0.071036 | 0.384265 | | 11 | level2/softmax_11 | 2669.88 | 1063.10 | 108.09 | 0.398183 | 0.040485 | 0.271557 | | 12 | level2/softmax_12 | 61.3 | 62.58 | 14.59 | 1.020881 | 0.23801 | 0.506758 | | 13 | level2/softmax_13 | 2246.58 | 30 | 3 | 0.013354 | 0.001335 | 0.011891 | | 14 | level2/softmax_14 | 238.52 | 227.3 | 22.73 | 0.95296 | 0.095296 | 0.486654 | | 15 | level2/softmax_15 | 30.6 | 30.46 | 4.56 | 0.995425 | 0.14902 | 0.498652 | | 16 | level2/softmax_16 | 115.28 | 15.7 | 1.57 | 0.13619 | 0.013619 | 0.110529 | | 17 | level2/softmax_17 | 19.98 | 18.64 | 4.35 | 0.932933 | 0.217718 | 0.477607 | | 18 | level2/softmax_18 | 24.9 | 20.12 | 3.14 | 0.808032 | 0.126104 | 0.438307 | | 19 | level2/softmax_19 | 119.64 | 31.3 | 3.13 | 0.261618 | 0.026162 | 0.194706 | | 20 | level2/softmax_20 | 1870.84 | 219.8 | 21.98 | 0.117487 | 0.011749 | 0.096654 | ## topk - Job: job_bc7b660e83a6; operator: TopK; cases: 20/20; score: 54.233631; avg_speedup: 0.119558. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level3/top_k_1 | 2431.10 | 10.9 | 1.09 | 0.004484 | 0.000448 | 0.004021 | | 2 | level3/top_k_2 | 279.02 | 21.8 | 2.18 | 0.078131 | 0.007813 | 0.066181 | | 3 | level3/top_k_3 | 995.88 | 174.8 | 17.48 | 0.175523 | 0.017552 | 0.13852 | | 4 | level3/top_k_4 | 281395.82 | 1398.10 | 139.81 | 0.004968 | 0.000497 | 0.004454 | | 5 | level3/top_k_5 | 2508.46 | 1398.10 | 139.81 | 0.557354 | 0.055735 | 0.346929 | | 6 | level3/top_k_6 | 6939698.16 | 1398.10 | 139.81 | 0.000201 | 2.015e-05 | 0.000181 | | 7 | level3/top_k_7 | 74.9 | 10.9 | 1.09 | 0.145527 | 0.014553 | 0.117316 | | 8 | level3/top_k_8 | 3213.32 | 21.5 | 2.15 | 0.006691 | 0.000669 | 0.00599 | | 9 | level3/top_k_9 | 97.66 | 13.8 | 1.38 | 0.141307 | 0.014131 | 0.114259 | | 10 | level3/top_k_10 | 95309.40 | 1035.20 | 103.52 | 0.010861 | 0.001086 | 0.009691 | | 11 | level3/top_k_11 | 104.16 | 10.9 | 1.09 | 0.104647 | 0.010465 | 0.086906 | | 12 | level3/top_k_12 | 111.12 | 22.8 | 2.28 | 0.205184 | 0.020518 | 0.158627 | | 13 | level3/top_k_13 | 4755.26 | 14.3 | 1.43 | 0.003007 | 0.000301 | 0.0027 | | 14 | level3/top_k_14 | 2448.26 | 20.8 | 2.08 | 0.008496 | 0.00085 | 0.007595 | | 15 | level3/top_k_15 | 19245.22 | 170.5 | 17.05 | 0.008859 | 0.000886 | 0.007917 | | 16 | level3/top_k_16 | 211.92 | 126.8 | 12.68 | 0.598339 | 0.059834 | 0.364182 | | 17 | level3/top_k_17 | 80.84 | 21.9 | 2.19 | 0.270905 | 0.027091 | 0.200386 | | 18 | level3/top_k_18 | 6133.36 | 24.4 | 2.44 | 0.003978 | 0.000398 | 0.003569 | | 19 | level3/top_k_19 | 184.64 | 10.9 | 1.09 | 0.059034 | 0.005903 | 0.050734 | | 20 | level3/top_k_20 | 5940.70 | 21.8 | 2.18 | 0.00367 | 0.000367 | 0.003293 | ## 未来三个月的计划 ### 第 1 个月 —— 完善 补全 reduce类,数学函数类,排序类算子的生成与优化skill和harness ### 第 2 个月 —— 拓展CV融合算子 增加对CV类融合算子如quant_batch_matmul,grouped_matmul_swiglu_quant等的生成适配,保障生成精度 ### 第 3 个月 —— 拓展attention算子 增加对attention类算子的适配 See merge request: cann/cannbot-skills!313 | 8 天前 | |
【collaborative-agent-kernel-evolution】新增 CAKE2 进化式 AscendC 算子生成 Team(仅 Vector 算子) Co-authored-by: Junyifannnn<fan.junyi@huawei.com> # message auto-generated for no-merge-commit merge: !313 merge feat/add-cake-plugin into master 【collaborative-agent-kernel-evolution】新增 CAKE2 进化式 AscendC 算子生成 Team(仅 Vector 算子) Created-by: gcw_P2Mh5H1S Commit-by: Junyifannnn Merged-by: cann-robot Description: ## 描述 **新特性**: 【collaborative-agent-kernel-evolution】新增 plugins-community/collaborative-agent-kernel-evolution —— 进化式 AscendC 算子生成 Team(仅 Vector 算子)。 含 3 个 Agent 与 19 个内置 Skill,覆盖「算子描述生成 → PyTorch 参考 → functional 转换 → AscendDSL baseline → DSL lowering 到 AscendC → 编译评估 →(可选)进化式多变体性能优化」全流程: - cake(primary):标准单算子生成主流程 - cake-evo(primary):并行多变体进化优化 - cake-partial(subagent):被 cake-evo 调度的半程生成子任务 自包含单插件(目录 plugins-community/collaborative-agent-kernel-evolution/,对齐 ops-easyasc-dsl 自包含形态) ## 关联的Issue 关联 Issue [#230](https://gitcode.com/cann/cannbot-skills/issues/230) ## 测试 - **L1 结构门禁 skill_validator.py**:19 skills + 3 agents **0 error**(warn-only:6× S-CON-05、2× S-CON-06「缺错误处理章节」,不阻断) - **tests/run-tests.sh --fast**:10 项全过(初次 test-line-endings 报 6 个 CRLF 文件,均为插件内 vendored 外部文档,已全部转 LF,复跑 PASS) ## 文档更新 - 新增 plugins-community/collaborative-agent-kernel-evolution/(含 README / docs / tests) - 根 .claude-plugin/marketplace.json 注册 cake(source ./plugins-community/collaborative-agent-kernel-evolution,category development) - 更新根 CHANGELOG.md(2026-06-02 条目) ## 类型标签 - [x] 🌟 新特性 ## AscendC 算子评测结果 | Operator | Job ID | Cases | Score | Avg speedup | Rel path | |---|---|---:|---:|---:|---|---| | apply_rotary_pos_emb | job_940a45830a2f | 20/20 | 63.339075 | 0.355671 | level2/apply_rotary_pos_emb | | softmax | job_5ec935012955 | 20/20 | 68.015671 | 0.661441 | level2/softmax | | topk | job_bc7b660e83a6 | 20/20 | 54.233631 | 0.119558 | level3/top_k | ## apply_rotary_pos_emb - Job: job_940a45830a2f; operator: ApplyRotaryPosEmb; cases: 20/20; score: 63.339075; avg_speedup: 0.355671. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level2/apply_rotary_pos_emb_1 | 182.06 | 89.56 | 35.02 | 0.491926 | 0.192354 | 0.270563 | | 2 | level2/apply_rotary_pos_emb_2 | 779.98 | 113.24 | 59.22 | 0.145183 | 0.075925 | 0.069723 | | 3 | level2/apply_rotary_pos_emb_3 | 125.34 | 78.24 | 14.56 | 0.624222 | 0.116164 | 0.365012 | | 4 | level2/apply_rotary_pos_emb_4 | 140.26 | 246.2 | 32.77 | 1.755312 | 0.233638 | 0.665057 | | 5 | level2/apply_rotary_pos_emb_5 | 3001.06 | 391.07 | 140.36 | 0.130311 | 0.04677 | 0.080578 | | 6 | level2/apply_rotary_pos_emb_6 | 654.54 | 347.8 | 34.78 | 0.531366 | 0.053137 | 0.335578 | | 7 | level2/apply_rotary_pos_emb_7 | 146.94 | 73.08 | 23.1 | 0.497346 | 0.157207 | 0.287539 | | 8 | level2/apply_rotary_pos_emb_8 | 360.54 | 74.4 | 26.64 | 0.206357 | 0.073889 | 0.125138 | | 9 | level2/apply_rotary_pos_emb_9 | 178.12 | 198.1 | 19.81 | 1.112172 | 0.111217 | 0.529679 | | 10 | level2/apply_rotary_pos_emb_10 | 274.06 | 163 | 16.3 | 0.59476 | 0.059476 | 0.362706 | | 11 | level2/apply_rotary_pos_emb_11 | 1398.00 | 186.7 | 98.62 | 0.133548 | 0.070544 | 0.063483 | | 12 | level2/apply_rotary_pos_emb_12 | 896.26 | 48 | 4.8 | 0.053556 | 0.005356 | 0.04622 | | 13 | level2/apply_rotary_pos_emb_13 | 595.38 | 425.07 | 100 | 0.713947 | 0.16796 | 0.396209 | | 14 | level2/apply_rotary_pos_emb_14 | 27.18 | 10 | 1 | 0.367918 | 0.036792 | 0.255827 | | 15 | level2/apply_rotary_pos_emb_15 | 86.22 | 21.7 | 2.17 | 0.251682 | 0.025168 | 0.18855 | | 16 | level2/apply_rotary_pos_emb_16 | 82.48 | 41.34 | 4.17 | 0.501212 | 0.050558 | 0.321874 | | 17 | level2/apply_rotary_pos_emb_17 | 5265.48 | 2621.60 | 262.16 | 0.497884 | 0.049788 | 0.320456 | | 18 | level2/apply_rotary_pos_emb_18 | 97.2 | 43.9 | 4.39 | 0.451646 | 0.045165 | 0.298594 | | 19 | level2/apply_rotary_pos_emb_19 | 27.12 | 10 | 1 | 0.368732 | 0.036873 | 0.256264 | | 20 | level2/apply_rotary_pos_emb_20 | 1260.70 | 183.04 | 54.04 | 0.145189 | 0.042865 | 0.096581 | ## softmax - Job: job_5ec935012955; operator: Softmax; cases: 20/20; score: 68.015671; avg_speedup: 0.661441. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level2/softmax_1 | 19.42 | 15.7 | 1.57 | 0.808445 | 0.080844 | 0.441839 | | 2 | level2/softmax_2 | 30.96 | 37.98 | 8.74 | 1.226744 | 0.2823 | 0.568208 | | 3 | level2/softmax_3 | 104.2 | 91.76 | 25.17 | 0.880614 | 0.241555 | 0.457286 | | 4 | level2/softmax_4 | 2175.34 | 1006.60 | 100.66 | 0.462732 | 0.046273 | 0.303943 | | 5 | level2/softmax_5 | 458.2 | 422.73 | 139.81 | 0.922588 | 0.305129 | 0.470506 | | 6 | level2/softmax_6 | 1907.08 | 786.04 | 101.69 | 0.412169 | 0.053322 | 0.274868 | | 7 | level2/softmax_7 | 22.42 | 20.04 | 3.14 | 0.893845 | 0.140054 | 0.467109 | | 8 | level2/softmax_8 | 61.92 | 58.12 | 17.49 | 0.93863 | 0.282461 | 0.477663 | | 9 | level2/softmax_9 | 1044.48 | 412.79 | 50.08 | 0.395211 | 0.047947 | 0.267266 | | 10 | level2/softmax_10 | 21.82 | 14.2 | 1.55 | 0.650779 | 0.071036 | 0.384265 | | 11 | level2/softmax_11 | 2669.88 | 1063.10 | 108.09 | 0.398183 | 0.040485 | 0.271557 | | 12 | level2/softmax_12 | 61.3 | 62.58 | 14.59 | 1.020881 | 0.23801 | 0.506758 | | 13 | level2/softmax_13 | 2246.58 | 30 | 3 | 0.013354 | 0.001335 | 0.011891 | | 14 | level2/softmax_14 | 238.52 | 227.3 | 22.73 | 0.95296 | 0.095296 | 0.486654 | | 15 | level2/softmax_15 | 30.6 | 30.46 | 4.56 | 0.995425 | 0.14902 | 0.498652 | | 16 | level2/softmax_16 | 115.28 | 15.7 | 1.57 | 0.13619 | 0.013619 | 0.110529 | | 17 | level2/softmax_17 | 19.98 | 18.64 | 4.35 | 0.932933 | 0.217718 | 0.477607 | | 18 | level2/softmax_18 | 24.9 | 20.12 | 3.14 | 0.808032 | 0.126104 | 0.438307 | | 19 | level2/softmax_19 | 119.64 | 31.3 | 3.13 | 0.261618 | 0.026162 | 0.194706 | | 20 | level2/softmax_20 | 1870.84 | 219.8 | 21.98 | 0.117487 | 0.011749 | 0.096654 | ## topk - Job: job_bc7b660e83a6; operator: TopK; cases: 20/20; score: 54.233631; avg_speedup: 0.119558. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level3/top_k_1 | 2431.10 | 10.9 | 1.09 | 0.004484 | 0.000448 | 0.004021 | | 2 | level3/top_k_2 | 279.02 | 21.8 | 2.18 | 0.078131 | 0.007813 | 0.066181 | | 3 | level3/top_k_3 | 995.88 | 174.8 | 17.48 | 0.175523 | 0.017552 | 0.13852 | | 4 | level3/top_k_4 | 281395.82 | 1398.10 | 139.81 | 0.004968 | 0.000497 | 0.004454 | | 5 | level3/top_k_5 | 2508.46 | 1398.10 | 139.81 | 0.557354 | 0.055735 | 0.346929 | | 6 | level3/top_k_6 | 6939698.16 | 1398.10 | 139.81 | 0.000201 | 2.015e-05 | 0.000181 | | 7 | level3/top_k_7 | 74.9 | 10.9 | 1.09 | 0.145527 | 0.014553 | 0.117316 | | 8 | level3/top_k_8 | 3213.32 | 21.5 | 2.15 | 0.006691 | 0.000669 | 0.00599 | | 9 | level3/top_k_9 | 97.66 | 13.8 | 1.38 | 0.141307 | 0.014131 | 0.114259 | | 10 | level3/top_k_10 | 95309.40 | 1035.20 | 103.52 | 0.010861 | 0.001086 | 0.009691 | | 11 | level3/top_k_11 | 104.16 | 10.9 | 1.09 | 0.104647 | 0.010465 | 0.086906 | | 12 | level3/top_k_12 | 111.12 | 22.8 | 2.28 | 0.205184 | 0.020518 | 0.158627 | | 13 | level3/top_k_13 | 4755.26 | 14.3 | 1.43 | 0.003007 | 0.000301 | 0.0027 | | 14 | level3/top_k_14 | 2448.26 | 20.8 | 2.08 | 0.008496 | 0.00085 | 0.007595 | | 15 | level3/top_k_15 | 19245.22 | 170.5 | 17.05 | 0.008859 | 0.000886 | 0.007917 | | 16 | level3/top_k_16 | 211.92 | 126.8 | 12.68 | 0.598339 | 0.059834 | 0.364182 | | 17 | level3/top_k_17 | 80.84 | 21.9 | 2.19 | 0.270905 | 0.027091 | 0.200386 | | 18 | level3/top_k_18 | 6133.36 | 24.4 | 2.44 | 0.003978 | 0.000398 | 0.003569 | | 19 | level3/top_k_19 | 184.64 | 10.9 | 1.09 | 0.059034 | 0.005903 | 0.050734 | | 20 | level3/top_k_20 | 5940.70 | 21.8 | 2.18 | 0.00367 | 0.000367 | 0.003293 | ## 未来三个月的计划 ### 第 1 个月 —— 完善 补全 reduce类,数学函数类,排序类算子的生成与优化skill和harness ### 第 2 个月 —— 拓展CV融合算子 增加对CV类融合算子如quant_batch_matmul,grouped_matmul_swiglu_quant等的生成适配,保障生成精度 ### 第 3 个月 —— 拓展attention算子 增加对attention类算子的适配 See merge request: cann/cannbot-skills!313 | 8 天前 | |
【collaborative-agent-kernel-evolution】新增 CAKE2 进化式 AscendC 算子生成 Team(仅 Vector 算子) Co-authored-by: Junyifannnn<fan.junyi@huawei.com> # message auto-generated for no-merge-commit merge: !313 merge feat/add-cake-plugin into master 【collaborative-agent-kernel-evolution】新增 CAKE2 进化式 AscendC 算子生成 Team(仅 Vector 算子) Created-by: gcw_P2Mh5H1S Commit-by: Junyifannnn Merged-by: cann-robot Description: ## 描述 **新特性**: 【collaborative-agent-kernel-evolution】新增 plugins-community/collaborative-agent-kernel-evolution —— 进化式 AscendC 算子生成 Team(仅 Vector 算子)。 含 3 个 Agent 与 19 个内置 Skill,覆盖「算子描述生成 → PyTorch 参考 → functional 转换 → AscendDSL baseline → DSL lowering 到 AscendC → 编译评估 →(可选)进化式多变体性能优化」全流程: - cake(primary):标准单算子生成主流程 - cake-evo(primary):并行多变体进化优化 - cake-partial(subagent):被 cake-evo 调度的半程生成子任务 自包含单插件(目录 plugins-community/collaborative-agent-kernel-evolution/,对齐 ops-easyasc-dsl 自包含形态) ## 关联的Issue 关联 Issue [#230](https://gitcode.com/cann/cannbot-skills/issues/230) ## 测试 - **L1 结构门禁 skill_validator.py**:19 skills + 3 agents **0 error**(warn-only:6× S-CON-05、2× S-CON-06「缺错误处理章节」,不阻断) - **tests/run-tests.sh --fast**:10 项全过(初次 test-line-endings 报 6 个 CRLF 文件,均为插件内 vendored 外部文档,已全部转 LF,复跑 PASS) ## 文档更新 - 新增 plugins-community/collaborative-agent-kernel-evolution/(含 README / docs / tests) - 根 .claude-plugin/marketplace.json 注册 cake(source ./plugins-community/collaborative-agent-kernel-evolution,category development) - 更新根 CHANGELOG.md(2026-06-02 条目) ## 类型标签 - [x] 🌟 新特性 ## AscendC 算子评测结果 | Operator | Job ID | Cases | Score | Avg speedup | Rel path | |---|---|---:|---:|---:|---|---| | apply_rotary_pos_emb | job_940a45830a2f | 20/20 | 63.339075 | 0.355671 | level2/apply_rotary_pos_emb | | softmax | job_5ec935012955 | 20/20 | 68.015671 | 0.661441 | level2/softmax | | topk | job_bc7b660e83a6 | 20/20 | 54.233631 | 0.119558 | level3/top_k | ## apply_rotary_pos_emb - Job: job_940a45830a2f; operator: ApplyRotaryPosEmb; cases: 20/20; score: 63.339075; avg_speedup: 0.355671. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level2/apply_rotary_pos_emb_1 | 182.06 | 89.56 | 35.02 | 0.491926 | 0.192354 | 0.270563 | | 2 | level2/apply_rotary_pos_emb_2 | 779.98 | 113.24 | 59.22 | 0.145183 | 0.075925 | 0.069723 | | 3 | level2/apply_rotary_pos_emb_3 | 125.34 | 78.24 | 14.56 | 0.624222 | 0.116164 | 0.365012 | | 4 | level2/apply_rotary_pos_emb_4 | 140.26 | 246.2 | 32.77 | 1.755312 | 0.233638 | 0.665057 | | 5 | level2/apply_rotary_pos_emb_5 | 3001.06 | 391.07 | 140.36 | 0.130311 | 0.04677 | 0.080578 | | 6 | level2/apply_rotary_pos_emb_6 | 654.54 | 347.8 | 34.78 | 0.531366 | 0.053137 | 0.335578 | | 7 | level2/apply_rotary_pos_emb_7 | 146.94 | 73.08 | 23.1 | 0.497346 | 0.157207 | 0.287539 | | 8 | level2/apply_rotary_pos_emb_8 | 360.54 | 74.4 | 26.64 | 0.206357 | 0.073889 | 0.125138 | | 9 | level2/apply_rotary_pos_emb_9 | 178.12 | 198.1 | 19.81 | 1.112172 | 0.111217 | 0.529679 | | 10 | level2/apply_rotary_pos_emb_10 | 274.06 | 163 | 16.3 | 0.59476 | 0.059476 | 0.362706 | | 11 | level2/apply_rotary_pos_emb_11 | 1398.00 | 186.7 | 98.62 | 0.133548 | 0.070544 | 0.063483 | | 12 | level2/apply_rotary_pos_emb_12 | 896.26 | 48 | 4.8 | 0.053556 | 0.005356 | 0.04622 | | 13 | level2/apply_rotary_pos_emb_13 | 595.38 | 425.07 | 100 | 0.713947 | 0.16796 | 0.396209 | | 14 | level2/apply_rotary_pos_emb_14 | 27.18 | 10 | 1 | 0.367918 | 0.036792 | 0.255827 | | 15 | level2/apply_rotary_pos_emb_15 | 86.22 | 21.7 | 2.17 | 0.251682 | 0.025168 | 0.18855 | | 16 | level2/apply_rotary_pos_emb_16 | 82.48 | 41.34 | 4.17 | 0.501212 | 0.050558 | 0.321874 | | 17 | level2/apply_rotary_pos_emb_17 | 5265.48 | 2621.60 | 262.16 | 0.497884 | 0.049788 | 0.320456 | | 18 | level2/apply_rotary_pos_emb_18 | 97.2 | 43.9 | 4.39 | 0.451646 | 0.045165 | 0.298594 | | 19 | level2/apply_rotary_pos_emb_19 | 27.12 | 10 | 1 | 0.368732 | 0.036873 | 0.256264 | | 20 | level2/apply_rotary_pos_emb_20 | 1260.70 | 183.04 | 54.04 | 0.145189 | 0.042865 | 0.096581 | ## softmax - Job: job_5ec935012955; operator: Softmax; cases: 20/20; score: 68.015671; avg_speedup: 0.661441. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level2/softmax_1 | 19.42 | 15.7 | 1.57 | 0.808445 | 0.080844 | 0.441839 | | 2 | level2/softmax_2 | 30.96 | 37.98 | 8.74 | 1.226744 | 0.2823 | 0.568208 | | 3 | level2/softmax_3 | 104.2 | 91.76 | 25.17 | 0.880614 | 0.241555 | 0.457286 | | 4 | level2/softmax_4 | 2175.34 | 1006.60 | 100.66 | 0.462732 | 0.046273 | 0.303943 | | 5 | level2/softmax_5 | 458.2 | 422.73 | 139.81 | 0.922588 | 0.305129 | 0.470506 | | 6 | level2/softmax_6 | 1907.08 | 786.04 | 101.69 | 0.412169 | 0.053322 | 0.274868 | | 7 | level2/softmax_7 | 22.42 | 20.04 | 3.14 | 0.893845 | 0.140054 | 0.467109 | | 8 | level2/softmax_8 | 61.92 | 58.12 | 17.49 | 0.93863 | 0.282461 | 0.477663 | | 9 | level2/softmax_9 | 1044.48 | 412.79 | 50.08 | 0.395211 | 0.047947 | 0.267266 | | 10 | level2/softmax_10 | 21.82 | 14.2 | 1.55 | 0.650779 | 0.071036 | 0.384265 | | 11 | level2/softmax_11 | 2669.88 | 1063.10 | 108.09 | 0.398183 | 0.040485 | 0.271557 | | 12 | level2/softmax_12 | 61.3 | 62.58 | 14.59 | 1.020881 | 0.23801 | 0.506758 | | 13 | level2/softmax_13 | 2246.58 | 30 | 3 | 0.013354 | 0.001335 | 0.011891 | | 14 | level2/softmax_14 | 238.52 | 227.3 | 22.73 | 0.95296 | 0.095296 | 0.486654 | | 15 | level2/softmax_15 | 30.6 | 30.46 | 4.56 | 0.995425 | 0.14902 | 0.498652 | | 16 | level2/softmax_16 | 115.28 | 15.7 | 1.57 | 0.13619 | 0.013619 | 0.110529 | | 17 | level2/softmax_17 | 19.98 | 18.64 | 4.35 | 0.932933 | 0.217718 | 0.477607 | | 18 | level2/softmax_18 | 24.9 | 20.12 | 3.14 | 0.808032 | 0.126104 | 0.438307 | | 19 | level2/softmax_19 | 119.64 | 31.3 | 3.13 | 0.261618 | 0.026162 | 0.194706 | | 20 | level2/softmax_20 | 1870.84 | 219.8 | 21.98 | 0.117487 | 0.011749 | 0.096654 | ## topk - Job: job_bc7b660e83a6; operator: TopK; cases: 20/20; score: 54.233631; avg_speedup: 0.119558. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level3/top_k_1 | 2431.10 | 10.9 | 1.09 | 0.004484 | 0.000448 | 0.004021 | | 2 | level3/top_k_2 | 279.02 | 21.8 | 2.18 | 0.078131 | 0.007813 | 0.066181 | | 3 | level3/top_k_3 | 995.88 | 174.8 | 17.48 | 0.175523 | 0.017552 | 0.13852 | | 4 | level3/top_k_4 | 281395.82 | 1398.10 | 139.81 | 0.004968 | 0.000497 | 0.004454 | | 5 | level3/top_k_5 | 2508.46 | 1398.10 | 139.81 | 0.557354 | 0.055735 | 0.346929 | | 6 | level3/top_k_6 | 6939698.16 | 1398.10 | 139.81 | 0.000201 | 2.015e-05 | 0.000181 | | 7 | level3/top_k_7 | 74.9 | 10.9 | 1.09 | 0.145527 | 0.014553 | 0.117316 | | 8 | level3/top_k_8 | 3213.32 | 21.5 | 2.15 | 0.006691 | 0.000669 | 0.00599 | | 9 | level3/top_k_9 | 97.66 | 13.8 | 1.38 | 0.141307 | 0.014131 | 0.114259 | | 10 | level3/top_k_10 | 95309.40 | 1035.20 | 103.52 | 0.010861 | 0.001086 | 0.009691 | | 11 | level3/top_k_11 | 104.16 | 10.9 | 1.09 | 0.104647 | 0.010465 | 0.086906 | | 12 | level3/top_k_12 | 111.12 | 22.8 | 2.28 | 0.205184 | 0.020518 | 0.158627 | | 13 | level3/top_k_13 | 4755.26 | 14.3 | 1.43 | 0.003007 | 0.000301 | 0.0027 | | 14 | level3/top_k_14 | 2448.26 | 20.8 | 2.08 | 0.008496 | 0.00085 | 0.007595 | | 15 | level3/top_k_15 | 19245.22 | 170.5 | 17.05 | 0.008859 | 0.000886 | 0.007917 | | 16 | level3/top_k_16 | 211.92 | 126.8 | 12.68 | 0.598339 | 0.059834 | 0.364182 | | 17 | level3/top_k_17 | 80.84 | 21.9 | 2.19 | 0.270905 | 0.027091 | 0.200386 | | 18 | level3/top_k_18 | 6133.36 | 24.4 | 2.44 | 0.003978 | 0.000398 | 0.003569 | | 19 | level3/top_k_19 | 184.64 | 10.9 | 1.09 | 0.059034 | 0.005903 | 0.050734 | | 20 | level3/top_k_20 | 5940.70 | 21.8 | 2.18 | 0.00367 | 0.000367 | 0.003293 | ## 未来三个月的计划 ### 第 1 个月 —— 完善 补全 reduce类,数学函数类,排序类算子的生成与优化skill和harness ### 第 2 个月 —— 拓展CV融合算子 增加对CV类融合算子如quant_batch_matmul,grouped_matmul_swiglu_quant等的生成适配,保障生成精度 ### 第 3 个月 —— 拓展attention算子 增加对attention类算子的适配 See merge request: cann/cannbot-skills!313 | 8 天前 | |
【collaborative-agent-kernel-evolution】新增 CAKE2 进化式 AscendC 算子生成 Team(仅 Vector 算子) Co-authored-by: Junyifannnn<fan.junyi@huawei.com> # message auto-generated for no-merge-commit merge: !313 merge feat/add-cake-plugin into master 【collaborative-agent-kernel-evolution】新增 CAKE2 进化式 AscendC 算子生成 Team(仅 Vector 算子) Created-by: gcw_P2Mh5H1S Commit-by: Junyifannnn Merged-by: cann-robot Description: ## 描述 **新特性**: 【collaborative-agent-kernel-evolution】新增 plugins-community/collaborative-agent-kernel-evolution —— 进化式 AscendC 算子生成 Team(仅 Vector 算子)。 含 3 个 Agent 与 19 个内置 Skill,覆盖「算子描述生成 → PyTorch 参考 → functional 转换 → AscendDSL baseline → DSL lowering 到 AscendC → 编译评估 →(可选)进化式多变体性能优化」全流程: - cake(primary):标准单算子生成主流程 - cake-evo(primary):并行多变体进化优化 - cake-partial(subagent):被 cake-evo 调度的半程生成子任务 自包含单插件(目录 plugins-community/collaborative-agent-kernel-evolution/,对齐 ops-easyasc-dsl 自包含形态) ## 关联的Issue 关联 Issue [#230](https://gitcode.com/cann/cannbot-skills/issues/230) ## 测试 - **L1 结构门禁 skill_validator.py**:19 skills + 3 agents **0 error**(warn-only:6× S-CON-05、2× S-CON-06「缺错误处理章节」,不阻断) - **tests/run-tests.sh --fast**:10 项全过(初次 test-line-endings 报 6 个 CRLF 文件,均为插件内 vendored 外部文档,已全部转 LF,复跑 PASS) ## 文档更新 - 新增 plugins-community/collaborative-agent-kernel-evolution/(含 README / docs / tests) - 根 .claude-plugin/marketplace.json 注册 cake(source ./plugins-community/collaborative-agent-kernel-evolution,category development) - 更新根 CHANGELOG.md(2026-06-02 条目) ## 类型标签 - [x] 🌟 新特性 ## AscendC 算子评测结果 | Operator | Job ID | Cases | Score | Avg speedup | Rel path | |---|---|---:|---:|---:|---|---| | apply_rotary_pos_emb | job_940a45830a2f | 20/20 | 63.339075 | 0.355671 | level2/apply_rotary_pos_emb | | softmax | job_5ec935012955 | 20/20 | 68.015671 | 0.661441 | level2/softmax | | topk | job_bc7b660e83a6 | 20/20 | 54.233631 | 0.119558 | level3/top_k | ## apply_rotary_pos_emb - Job: job_940a45830a2f; operator: ApplyRotaryPosEmb; cases: 20/20; score: 63.339075; avg_speedup: 0.355671. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level2/apply_rotary_pos_emb_1 | 182.06 | 89.56 | 35.02 | 0.491926 | 0.192354 | 0.270563 | | 2 | level2/apply_rotary_pos_emb_2 | 779.98 | 113.24 | 59.22 | 0.145183 | 0.075925 | 0.069723 | | 3 | level2/apply_rotary_pos_emb_3 | 125.34 | 78.24 | 14.56 | 0.624222 | 0.116164 | 0.365012 | | 4 | level2/apply_rotary_pos_emb_4 | 140.26 | 246.2 | 32.77 | 1.755312 | 0.233638 | 0.665057 | | 5 | level2/apply_rotary_pos_emb_5 | 3001.06 | 391.07 | 140.36 | 0.130311 | 0.04677 | 0.080578 | | 6 | level2/apply_rotary_pos_emb_6 | 654.54 | 347.8 | 34.78 | 0.531366 | 0.053137 | 0.335578 | | 7 | level2/apply_rotary_pos_emb_7 | 146.94 | 73.08 | 23.1 | 0.497346 | 0.157207 | 0.287539 | | 8 | level2/apply_rotary_pos_emb_8 | 360.54 | 74.4 | 26.64 | 0.206357 | 0.073889 | 0.125138 | | 9 | level2/apply_rotary_pos_emb_9 | 178.12 | 198.1 | 19.81 | 1.112172 | 0.111217 | 0.529679 | | 10 | level2/apply_rotary_pos_emb_10 | 274.06 | 163 | 16.3 | 0.59476 | 0.059476 | 0.362706 | | 11 | level2/apply_rotary_pos_emb_11 | 1398.00 | 186.7 | 98.62 | 0.133548 | 0.070544 | 0.063483 | | 12 | level2/apply_rotary_pos_emb_12 | 896.26 | 48 | 4.8 | 0.053556 | 0.005356 | 0.04622 | | 13 | level2/apply_rotary_pos_emb_13 | 595.38 | 425.07 | 100 | 0.713947 | 0.16796 | 0.396209 | | 14 | level2/apply_rotary_pos_emb_14 | 27.18 | 10 | 1 | 0.367918 | 0.036792 | 0.255827 | | 15 | level2/apply_rotary_pos_emb_15 | 86.22 | 21.7 | 2.17 | 0.251682 | 0.025168 | 0.18855 | | 16 | level2/apply_rotary_pos_emb_16 | 82.48 | 41.34 | 4.17 | 0.501212 | 0.050558 | 0.321874 | | 17 | level2/apply_rotary_pos_emb_17 | 5265.48 | 2621.60 | 262.16 | 0.497884 | 0.049788 | 0.320456 | | 18 | level2/apply_rotary_pos_emb_18 | 97.2 | 43.9 | 4.39 | 0.451646 | 0.045165 | 0.298594 | | 19 | level2/apply_rotary_pos_emb_19 | 27.12 | 10 | 1 | 0.368732 | 0.036873 | 0.256264 | | 20 | level2/apply_rotary_pos_emb_20 | 1260.70 | 183.04 | 54.04 | 0.145189 | 0.042865 | 0.096581 | ## softmax - Job: job_5ec935012955; operator: Softmax; cases: 20/20; score: 68.015671; avg_speedup: 0.661441. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level2/softmax_1 | 19.42 | 15.7 | 1.57 | 0.808445 | 0.080844 | 0.441839 | | 2 | level2/softmax_2 | 30.96 | 37.98 | 8.74 | 1.226744 | 0.2823 | 0.568208 | | 3 | level2/softmax_3 | 104.2 | 91.76 | 25.17 | 0.880614 | 0.241555 | 0.457286 | | 4 | level2/softmax_4 | 2175.34 | 1006.60 | 100.66 | 0.462732 | 0.046273 | 0.303943 | | 5 | level2/softmax_5 | 458.2 | 422.73 | 139.81 | 0.922588 | 0.305129 | 0.470506 | | 6 | level2/softmax_6 | 1907.08 | 786.04 | 101.69 | 0.412169 | 0.053322 | 0.274868 | | 7 | level2/softmax_7 | 22.42 | 20.04 | 3.14 | 0.893845 | 0.140054 | 0.467109 | | 8 | level2/softmax_8 | 61.92 | 58.12 | 17.49 | 0.93863 | 0.282461 | 0.477663 | | 9 | level2/softmax_9 | 1044.48 | 412.79 | 50.08 | 0.395211 | 0.047947 | 0.267266 | | 10 | level2/softmax_10 | 21.82 | 14.2 | 1.55 | 0.650779 | 0.071036 | 0.384265 | | 11 | level2/softmax_11 | 2669.88 | 1063.10 | 108.09 | 0.398183 | 0.040485 | 0.271557 | | 12 | level2/softmax_12 | 61.3 | 62.58 | 14.59 | 1.020881 | 0.23801 | 0.506758 | | 13 | level2/softmax_13 | 2246.58 | 30 | 3 | 0.013354 | 0.001335 | 0.011891 | | 14 | level2/softmax_14 | 238.52 | 227.3 | 22.73 | 0.95296 | 0.095296 | 0.486654 | | 15 | level2/softmax_15 | 30.6 | 30.46 | 4.56 | 0.995425 | 0.14902 | 0.498652 | | 16 | level2/softmax_16 | 115.28 | 15.7 | 1.57 | 0.13619 | 0.013619 | 0.110529 | | 17 | level2/softmax_17 | 19.98 | 18.64 | 4.35 | 0.932933 | 0.217718 | 0.477607 | | 18 | level2/softmax_18 | 24.9 | 20.12 | 3.14 | 0.808032 | 0.126104 | 0.438307 | | 19 | level2/softmax_19 | 119.64 | 31.3 | 3.13 | 0.261618 | 0.026162 | 0.194706 | | 20 | level2/softmax_20 | 1870.84 | 219.8 | 21.98 | 0.117487 | 0.011749 | 0.096654 | ## topk - Job: job_bc7b660e83a6; operator: TopK; cases: 20/20; score: 54.233631; avg_speedup: 0.119558. | # | Case ID | Elapsed us | Baseline us | HW limit us | Speedup | Speedup vs HW | Perf score | |---:|---|---:|---:|---:|---:|---:|---:| | 1 | level3/top_k_1 | 2431.10 | 10.9 | 1.09 | 0.004484 | 0.000448 | 0.004021 | | 2 | level3/top_k_2 | 279.02 | 21.8 | 2.18 | 0.078131 | 0.007813 | 0.066181 | | 3 | level3/top_k_3 | 995.88 | 174.8 | 17.48 | 0.175523 | 0.017552 | 0.13852 | | 4 | level3/top_k_4 | 281395.82 | 1398.10 | 139.81 | 0.004968 | 0.000497 | 0.004454 | | 5 | level3/top_k_5 | 2508.46 | 1398.10 | 139.81 | 0.557354 | 0.055735 | 0.346929 | | 6 | level3/top_k_6 | 6939698.16 | 1398.10 | 139.81 | 0.000201 | 2.015e-05 | 0.000181 | | 7 | level3/top_k_7 | 74.9 | 10.9 | 1.09 | 0.145527 | 0.014553 | 0.117316 | | 8 | level3/top_k_8 | 3213.32 | 21.5 | 2.15 | 0.006691 | 0.000669 | 0.00599 | | 9 | level3/top_k_9 | 97.66 | 13.8 | 1.38 | 0.141307 | 0.014131 | 0.114259 | | 10 | level3/top_k_10 | 95309.40 | 1035.20 | 103.52 | 0.010861 | 0.001086 | 0.009691 | | 11 | level3/top_k_11 | 104.16 | 10.9 | 1.09 | 0.104647 | 0.010465 | 0.086906 | | 12 | level3/top_k_12 | 111.12 | 22.8 | 2.28 | 0.205184 | 0.020518 | 0.158627 | | 13 | level3/top_k_13 | 4755.26 | 14.3 | 1.43 | 0.003007 | 0.000301 | 0.0027 | | 14 | level3/top_k_14 | 2448.26 | 20.8 | 2.08 | 0.008496 | 0.00085 | 0.007595 | | 15 | level3/top_k_15 | 19245.22 | 170.5 | 17.05 | 0.008859 | 0.000886 | 0.007917 | | 16 | level3/top_k_16 | 211.92 | 126.8 | 12.68 | 0.598339 | 0.059834 | 0.364182 | | 17 | level3/top_k_17 | 80.84 | 21.9 | 2.19 | 0.270905 | 0.027091 | 0.200386 | | 18 | level3/top_k_18 | 6133.36 | 24.4 | 2.44 | 0.003978 | 0.000398 | 0.003569 | | 19 | level3/top_k_19 | 184.64 | 10.9 | 1.09 | 0.059034 | 0.005903 | 0.050734 | | 20 | level3/top_k_20 | 5940.70 | 21.8 | 2.18 | 0.00367 | 0.000367 | 0.003293 | ## 未来三个月的计划 ### 第 1 个月 —— 完善 补全 reduce类,数学函数类,排序类算子的生成与优化skill和harness ### 第 2 个月 —— 拓展CV融合算子 增加对CV类融合算子如quant_batch_matmul,grouped_matmul_swiglu_quant等的生成适配,保障生成精度 ### 第 3 个月 —— 拓展attention算子 增加对attention类算子的适配 See merge request: cann/cannbot-skills!313 | 8 天前 |
CAKE2
CAKE2 (Collaborative Agent Kernel Evolution 2) 是一个用于昇腾(Ascend)NPU 算子开发的进化式Agent系统。它提供了一套完整的流程,从算子描述生成到最终的AscendC代码实现和评估,并支持通过进化算法自动优化内核性能。
快速开始
安装 Plugin
方式1: 从 Marketplace 安装
# 在 Claude Code 中注册 cannbot marketplace(CAKE2 作为社区插件 cake 合入其中)
/plugin marketplace add https://gitcode.com/cann/cannbot-skills.git
# 安装 cake 插件
/plugin install cake@cannbot
# 安装后直接以 agent 启动
claude --agent cake:cake
claude --agent cake:cake-evo
Marketplace 是 Claude Code 的插件分发机制。CAKE2 作为 cake 插件登记在 cannbot 仓库根的 .claude-plugin/marketplace.json 中,使用 /plugin marketplace add 注册该 marketplace 后即可安装。
方式2: 开发模式加载
# 从本地路径临时加载(不写入配置)
claude --plugin-dir /path/to/cake2
# 直接以特定 agent 启动
claude --plugin-dir /path/to/cake2 --agent cake:cake
claude --plugin-dir /path/to/cake2 --agent cake:cake-evo
使用 Agent
# 可用 agent:
# cake - 标准算子生成
# cake-evo - 进化式多变体优化
# cake-partial - 部分流程生成(DSL → 评估)
# 命令行直接指定 agent 启动
claude --agent cake
# 或进入 Claude Code 后:
# 输入 /agents 选择 agent
# 或直接在对话中请求,如 "用 cake agent 生成一个 Softmax 算子"
示例用法
读取 docs/SinkhornKnopp 中的算子描述, 生成 SinkhornKnoppCustom 算子。
读取 docs/MoeInitRouting 中的算子描述, 进化生成 MoeInitRoutingCustom 算子,最大轮数 2,每轮并行数 2,目标加速比 2x 相对于 PyTorch 小算子 eager 实现。
📚 文档导航
简介
本项目旨在简化昇腾NPU自定义算子的开发流程,通过自动化的方式将算子描述转换为可在昇腾NPU上运行的高性能算子实现。
主要功能包括:
- 算子描述生成(JSON格式)
- PyTorch参考代码生成
- 函数式API转换
- AscendDSL代码生成与优化
- AscendC算子代码生成
- AscendC项目创建与编译
- 算子正确性与性能评估
- 进化式多变体并行优化
环境准备
方式1: 本地 CANN 环境
需要完整的 CANN + Ascend NPU 环境(无 CPU-only 模式,不支持 macOS/Windows):
| 组件 | 要求 | 说明 |
|---|---|---|
| Ascend NPU | 910B,已装 driver(npu-smi 可用) |
编译 / 精度 / 性能评测必需 |
| CANN | >= 8.3.RC1(在 8.5.0 上验证) | 提供 msopgen / msprof / acl 等工具链 |
| Python | >= 3.10 | |
| PyTorch + torch_npu | 二者及 CANN 三者版本需匹配(验证组合:torch 2.9.0 + torch_npu 2.9.0 + CANN 8.5.0) | torch_npu 由昇腾环境提供,需按 CANN 版本选对应 wheel,非 PyPI 通用分发 |
| Node.js + Claude Code | Node 20+,npm i -g @anthropic-ai/claude-code |
运行本插件的宿主 |
| tilelang-ascend / torchair | (可选,源码构建) | 仅 TileLang DSL / torch.compile 图模式需要 |
创建隔离的 Python 虚拟环境(conda/uv/venv)后,安装纯 Python 依赖:
pip install -r requirements.txt
# 再安装与你的 CANN 版本匹配的 torch / torch_npu(见上表)
注意: 该工具在使用过程中会安装custom-ops.whl进行测试, 多人环境下会造成冲突,导致算子生成失败。因此必须使用隔离的python环境(例如,使用conda创建)。
方式2: 远程开发模式
本地没有 NPU 硬件时,可以通过 SSH 连接远程 NPU 服务器进行编译和测试:
# 1. 配置远程连接
cp ${CLAUDE_SKILL_DIR}/scripts/npus.example.yaml .npus.yaml
# 编辑 .npus.yaml 配置 remotes(docker / hdspace 后端均支持)
# 2. 探测远程平台信息
uv run ${CLAUDE_SKILL_DIR}/scripts/npu.py exec <target> info
Agent 启动时会自动检测环境模式(本地/远程),详见 skills/remote-cann-development/ 。
用法
作为 Plugin 使用(推荐)
claude --plugin-dir /path/to/cake2
打开 Claude Code 后输入 /agents 选择 cake agent,然后描述算子需求即可。
基于二进制
./cake.run
输出
会在当前目录下生成output/{op_name}文件夹,生成产物如下:
output/
└── {op_name}/
├── {op_name}_op_desc.json # 算子描述
├── {op_name}_reference.py # PyTorch参考实现
├── {op_name}_functional.py # 函数式API实现
├── {op_name}_dsl.py # DSL基线代码
├── {op_name}_project.json # 项目配置
├── {op_name}.cpp # Python绑定代码
└── {op_name}Custom/ # AscendC项目目录
支持的算子类型
- 池化算子 (pooling): average_pooling2d 等
- 归约算子 (reduction): sum, mean 等
- 损失函数 (loss): mse_loss 等
- 归一化 (normalization): layer_norm 等
- 激活函数 (activation)
- 卷积 (convolution)
- 矩阵乘法 (matmul)
- 数学运算 (math)