cann-workbench 0.0.0-stage → 0.0.2-alpha

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (408) hide show
  1. package/README.md +183 -2
  2. package/THIRD_PARTY_NOTICES.md +85 -0
  3. package/cordis.patch.yml +3 -0
  4. package/doctor/LICENSE +202 -0
  5. package/doctor/NOTICE +12 -0
  6. package/doctor/README.md +18 -0
  7. package/lib/client.js +94437 -0
  8. package/lib/index.d.ts +722 -0
  9. package/lib/index.js +33711 -0
  10. package/locale/en.json +6 -0
  11. package/locale/zh.json +6 -0
  12. package/package.json +171 -4
  13. package/skills/asc-tools/tool-ops-tune/INSTALL.md +52 -0
  14. package/skills/asc-tools/tool-ops-tune/LICENSE +38 -0
  15. package/skills/asc-tools/tool-ops-tune/README.md +167 -0
  16. package/skills/asc-tools/tool-ops-tune/SKILL.md +93 -0
  17. package/skills/asc-tools/tool-ops-tune/agent/AGENTS.md +195 -0
  18. package/skills/asc-tools/tool-ops-tune/agent/agents/perf-implementer.md +68 -0
  19. package/skills/asc-tools/tool-ops-tune/agent/agents/perf-reviewer.md +86 -0
  20. package/skills/asc-tools/tool-ops-tune/agent/workflows/task-prompts.md +362 -0
  21. package/skills/asc-tools/tool-ops-tune/agent/workflows/troubleshooting.md +43 -0
  22. package/skills/asc-tools/tool-ops-tune/docs/figures/opstune-architecture.png +0 -0
  23. package/skills/asc-tools/tool-ops-tune/docs/figures/opstune-architecture.svg +253 -0
  24. package/skills/asc-tools/tool-ops-tune/docs/ops-tune-design.md +404 -0
  25. package/skills/asc-tools/tool-ops-tune/docs//347/224/250/344/276/213/346/236/204/345/273/272.md +730 -0
  26. package/skills/asc-tools/tool-ops-tune/docs//347/237/245/350/257/206/345/272/223/350/247/204/350/214/203.md +103 -0
  27. package/skills/asc-tools/tool-ops-tune/evals/evals.json +242 -0
  28. package/skills/asc-tools/tool-ops-tune/ops-collect/SKILL.md +146 -0
  29. package/skills/asc-tools/tool-ops-tune/ops-collect/references/tool-routing.md +86 -0
  30. package/skills/asc-tools/tool-ops-tune/ops-collect/scripts/collect_board.sh +458 -0
  31. package/skills/asc-tools/tool-ops-tune/ops-collect/scripts/collect_cases.py +368 -0
  32. package/skills/asc-tools/tool-ops-tune/ops-collect/scripts/collect_sim.sh +134 -0
  33. package/skills/asc-tools/tool-ops-tune/ops-collect/scripts/csv_to_db.py +314 -0
  34. package/skills/asc-tools/tool-ops-tune/ops-collect/scripts/db_bench.py +545 -0
  35. package/skills/asc-tools/tool-ops-tune/ops-collect/scripts/facts_bridge.py +1102 -0
  36. package/skills/asc-tools/tool-ops-tune/ops-collect/scripts/isolation_test.py +452 -0
  37. package/skills/asc-tools/tool-ops-tune/ops-collect/scripts/jsonl_to_cases.py +163 -0
  38. package/skills/asc-tools/tool-ops-tune/ops-family/SKILL.md +76 -0
  39. package/skills/asc-tools/tool-ops-tune/ops-family/references/broadcast/advanced_tiling.md +92 -0
  40. package/skills/asc-tools/tool-ops-tune/ops-family/references/broadcast/broadcast_design.md +160 -0
  41. package/skills/asc-tools/tool-ops-tune/ops-family/references/broadcast/code/broadcast_add_kernel.cpp +126 -0
  42. package/skills/asc-tools/tool-ops-tune/ops-family/references/broadcast/code/broadcast_add_tiling.cpp +144 -0
  43. package/skills/asc-tools/tool-ops-tune/ops-family/references/broadcast/code/broadcast_tiling_common.h +401 -0
  44. package/skills/asc-tools/tool-ops-tune/ops-family/references/broadcast/code/onedim_add_kernel.cpp +107 -0
  45. package/skills/asc-tools/tool-ops-tune/ops-family/references/broadcast/code/onedim_add_tiling.cpp +64 -0
  46. package/skills/asc-tools/tool-ops-tune/ops-family/references/broadcast/datacopypad_design.md +46 -0
  47. package/skills/asc-tools/tool-ops-tune/ops-family/references/broadcast/guide.md +14 -0
  48. package/skills/asc-tools/tool-ops-tune/ops-family/references/broadcast/nddma_design.md +53 -0
  49. package/skills/asc-tools/tool-ops-tune/ops-family/references/broadcast/onedim_design.md +114 -0
  50. package/skills/asc-tools/tool-ops-tune/ops-family/references/broadcast/ub_broadcast_design.md +67 -0
  51. package/skills/asc-tools/tool-ops-tune/ops-family/references/common/datacopy_optimization_design.md +351 -0
  52. package/skills/asc-tools/tool-ops-tune/ops-family/references/common/index.md +9 -0
  53. package/skills/asc-tools/tool-ops-tune/ops-family/references/common/tail_block_design.md +268 -0
  54. package/skills/asc-tools/tool-ops-tune/ops-family/references/common/timing_harness/index.md +38 -0
  55. package/skills/asc-tools/tool-ops-tune/ops-family/references/common/timing_harness/timing_harness_aclrt_event.cpp +199 -0
  56. package/skills/asc-tools/tool-ops-tune/ops-family/references/common/timing_harness/timing_harness_torch_event.py +130 -0
  57. package/skills/asc-tools/tool-ops-tune/ops-family/references/common/ub_resident_design.md +342 -0
  58. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/guide.md +69 -0
  59. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/index.md +4 -0
  60. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/templates/dav3510/transpose_base.template +81 -0
  61. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/templates/dav3510/transpose_big_dim.template +217 -0
  62. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/templates/dav3510/transpose_cut_one_axis.template +336 -0
  63. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/templates/dav3510/transpose_cut_two_axis.template +781 -0
  64. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/templates/dav3510/transpose_n_last.template +340 -0
  65. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/templates/dav3510/transpose_small_shape.template +321 -0
  66. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/templates/dav3510/transpose_tensor_move.template +102 -0
  67. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/templates/dav3510/transpose_transdata_5hd.template +480 -0
  68. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/templates/dav3510/transpose_transdata_5hd_021axis.template +533 -0
  69. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/templates/dav3510/transpose_with_gather.template +688 -0
  70. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/templates/transpose_tiling_data.template +192 -0
  71. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/transpose_big_dim.md +220 -0
  72. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/transpose_cut_one_axis.md +175 -0
  73. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/transpose_cut_two_axis.md +177 -0
  74. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/transpose_fusion_design.md +398 -0
  75. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/transpose_gather.md +191 -0
  76. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/transpose_n_last.md +276 -0
  77. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/transpose_small_shape.md +315 -0
  78. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/transpose_tensor_move.md +203 -0
  79. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/transpose_tiling_data.md +176 -0
  80. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/transpose_vconv_021.md +206 -0
  81. package/skills/asc-tools/tool-ops-tune/ops-family/references/conversion/transpose_vconv_5hd.md +179 -0
  82. package/skills/asc-tools/tool-ops-tune/ops-family/references/elementwise/double_buffer_design.md +288 -0
  83. package/skills/asc-tools/tool-ops-tune/ops-family/references/elementwise/guide.md +46 -0
  84. package/skills/asc-tools/tool-ops-tune/ops-family/references/elementwise/index.md +10 -0
  85. package/skills/asc-tools/tool-ops-tune/ops-family/references/elementwise/templates/add_custom/CMakeLists.txt +131 -0
  86. package/skills/asc-tools/tool-ops-tune/ops-family/references/elementwise/templates/add_custom/README.md +55 -0
  87. package/skills/asc-tools/tool-ops-tune/ops-family/references/elementwise/templates/add_custom/op_extension/add_custom_torch.cpp +80 -0
  88. package/skills/asc-tools/tool-ops-tune/ops-family/references/elementwise/templates/add_custom/op_extension/ops.h +23 -0
  89. package/skills/asc-tools/tool-ops-tune/ops-family/references/elementwise/templates/add_custom/op_extension/register.cpp +30 -0
  90. package/skills/asc-tools/tool-ops-tune/ops-family/references/elementwise/templates/add_custom/op_host/add_custom.asc +149 -0
  91. package/skills/asc-tools/tool-ops-tune/ops-family/references/elementwise/templates/add_custom/op_host/data_utils.h +97 -0
  92. package/skills/asc-tools/tool-ops-tune/ops-family/references/elementwise/templates/add_custom/op_kernel/add_custom_kernel.asc +136 -0
  93. package/skills/asc-tools/tool-ops-tune/ops-family/references/elementwise/templates/add_custom/op_kernel/add_custom_tiling.h +31 -0
  94. package/skills/asc-tools/tool-ops-tune/ops-family/references/elementwise/templates/add_custom/run.sh +87 -0
  95. package/skills/asc-tools/tool-ops-tune/ops-family/references/elementwise/templates/add_custom/scripts/gen_data.py +70 -0
  96. package/skills/asc-tools/tool-ops-tune/ops-family/references/elementwise/templates/add_custom/scripts/golden.py +34 -0
  97. package/skills/asc-tools/tool-ops-tune/ops-family/references/elementwise/templates/add_custom/scripts/test_torch.py +99 -0
  98. package/skills/asc-tools/tool-ops-tune/ops-family/references/elementwise/templates/add_custom/scripts/verify_result.py +56 -0
  99. package/skills/asc-tools/tool-ops-tune/ops-family/references/elementwise/templates/usage_guide.md +61 -0
  100. package/skills/asc-tools/tool-ops-tune/ops-family/references/elementwise/vector_efficiency_design.md +203 -0
  101. package/skills/asc-tools/tool-ops-tune/ops-family/references/fa/fa_mixed_kernel_design.md +174 -0
  102. package/skills/asc-tools/tool-ops-tune/ops-family/references/fa/fa_roofline_design.md +141 -0
  103. package/skills/asc-tools/tool-ops-tune/ops-family/references/fa/guide.md +87 -0
  104. package/skills/asc-tools/tool-ops-tune/ops-family/references/knowledge_gaps.json +56 -0
  105. package/skills/asc-tools/tool-ops-tune/ops-family/references/matmul/best-practices-guide.md +14 -0
  106. package/skills/asc-tools/tool-ops-tune/ops-family/references/matmul/fullload_design.md +344 -0
  107. package/skills/asc-tools/tool-ops-tune/ops-family/references/matmul/guide.md +52 -0
  108. package/skills/asc-tools/tool-ops-tune/ops-family/references/matmul/mte2_preload_design.md +320 -0
  109. package/skills/asc-tools/tool-ops-tune/ops-family/references/matmul/pingpong_design.md +254 -0
  110. package/skills/asc-tools/tool-ops-tune/ops-family/references/matmul/scale_coalescing_design.md +282 -0
  111. package/skills/asc-tools/tool-ops-tune/ops-family/references/matmul/streamk_design.md +374 -0
  112. package/skills/asc-tools/tool-ops-tune/ops-family/references/matmul/swat_design.md +423 -0
  113. package/skills/asc-tools/tool-ops-tune/ops-family/references/matmul/templates/matmul_basic_blaze.template +165 -0
  114. package/skills/asc-tools/tool-ops-tune/ops-family/references/matmul/templates/usage_guide.md +29 -0
  115. package/skills/asc-tools/tool-ops-tune/ops-family/references/mc2/best-practices-guide.md +43 -0
  116. package/skills/asc-tools/tool-ops-tune/ops-family/references/mc2/guide.md +42 -0
  117. package/skills/asc-tools/tool-ops-tune/ops-family/references/mc2/local_matmul_design.md +130 -0
  118. package/skills/asc-tools/tool-ops-tune/ops-family/references/mc2/pipeline_balancing_design.md +502 -0
  119. package/skills/asc-tools/tool-ops-tune/ops-family/references/reduce/guide.md +178 -0
  120. package/skills/asc-tools/tool-ops-tune/ops-family/references/reduce/templates/dav310/kernel_utils.template +75 -0
  121. package/skills/asc-tools/tool-ops-tune/ops-family/references/reduce/templates/dav310/softmax_v2_ar_full_load.template +429 -0
  122. package/skills/asc-tools/tool-ops-tune/ops-family/references/reduce/templates/dav310/softmax_v2_ar_recompute.template +485 -0
  123. package/skills/asc-tools/tool-ops-tune/ops-family/references/reduce/templates/dav310/softmax_v2_ar_small_r.template +348 -0
  124. package/skills/asc-tools/tool-ops-tune/ops-family/references/reduce/templates/dav310/softmax_v2_ara_full_load.template +574 -0
  125. package/skills/asc-tools/tool-ops-tune/ops-family/references/reduce/templates/dav310/softmax_v2_ara_online.template +324 -0
  126. package/skills/asc-tools/tool-ops-tune/ops-family/references/reduce/templates/dav310/softmax_v2_ara_recompute.template +436 -0
  127. package/skills/asc-tools/tool-ops-tune/ops-family/references/reduce/templates/dav310/softmax_v2_base.template +950 -0
  128. package/skills/asc-tools/tool-ops-tune/ops-family/references/reduce/templates/fused_attention_online_softmax_design.md +428 -0
  129. package/skills/asc-tools/tool-ops-tune/ops-family/references/reduce/templates/softmax_v2_ar_full_load.md +137 -0
  130. package/skills/asc-tools/tool-ops-tune/ops-family/references/reduce/templates/softmax_v2_ar_recompute.md +135 -0
  131. package/skills/asc-tools/tool-ops-tune/ops-family/references/reduce/templates/softmax_v2_ar_small_r.md +122 -0
  132. package/skills/asc-tools/tool-ops-tune/ops-family/references/reduce/templates/softmax_v2_ara_full_load.md +144 -0
  133. package/skills/asc-tools/tool-ops-tune/ops-family/references/reduce/templates/softmax_v2_ara_online.md +185 -0
  134. package/skills/asc-tools/tool-ops-tune/ops-family/references/reduce/templates/softmax_v2_ara_recompute.md +163 -0
  135. package/skills/asc-tools/tool-ops-tune/ops-family/references/reduce/templates/softmax_v2_tiling.template +460 -0
  136. package/skills/asc-tools/tool-ops-tune/ops-family/references/reduce/templates/softmax_v2_tiling_data.template +278 -0
  137. package/skills/asc-tools/tool-ops-tune/ops-family/references/reduce/templates/state_resident_design.md +337 -0
  138. package/skills/asc-tools/tool-ops-tune/ops-family/references/reduce/templates/usage_guide.md +253 -0
  139. package/skills/asc-tools/tool-ops-tune/ops-family/references/scalar/coding_principles.md +476 -0
  140. package/skills/asc-tools/tool-ops-tune/ops-family/references/scalar/conv_scalar.md +163 -0
  141. package/skills/asc-tools/tool-ops-tune/ops-family/references/scalar/guide.md +30 -0
  142. package/skills/asc-tools/tool-ops-tune/ops-family/references/simt/guide.md +91 -0
  143. package/skills/asc-tools/tool-ops-tune/ops-family/references/simt/optimization-guide.md +110 -0
  144. package/skills/asc-tools/tool-ops-tune/ops-family/references/sort/guide.md +83 -0
  145. package/skills/asc-tools/tool-ops-tune/ops-family/references/sort/radix_sort.md +354 -0
  146. package/skills/asc-tools/tool-ops-tune/ops-family/scripts/family_asset_audit.py +68 -0
  147. package/skills/asc-tools/tool-ops-tune/ops-family/scripts/tiling_candidates.py +419 -0
  148. package/skills/asc-tools/tool-ops-tune/ops-mechanism/SKILL.md +23 -0
  149. package/skills/asc-tools/tool-ops-tune/ops-mechanism/cases/ascendc/case_groupedmatmul_pipeline.md +23 -0
  150. package/skills/asc-tools/tool-ops-tune/ops-mechanism/cases/ascendc/case_triton_atomic_revert.md +19 -0
  151. package/skills/asc-tools/tool-ops-tune/ops-mechanism/cases/mc2/case_mc2_fusion.md +19 -0
  152. package/skills/asc-tools/tool-ops-tune/ops-mechanism/references/optimize/api-usage.md +70 -0
  153. package/skills/asc-tools/tool-ops-tune/ops-mechanism/references/optimize/ascendc-regbase-vf.md +45 -0
  154. package/skills/asc-tools/tool-ops-tune/ops-mechanism/references/optimize/ascendc-tiling.md +51 -0
  155. package/skills/asc-tools/tool-ops-tune/ops-mechanism/references/optimize/data-copy.md +67 -0
  156. package/skills/asc-tools/tool-ops-tune/ops-mechanism/references/optimize/index.md +45 -0
  157. package/skills/asc-tools/tool-ops-tune/ops-mechanism/references/optimize/mc2-balancing.md +77 -0
  158. package/skills/asc-tools/tool-ops-tune/ops-mechanism/references/optimize/mc2.md +103 -0
  159. package/skills/asc-tools/tool-ops-tune/ops-mechanism/references/optimize/memory-hierarchy.md +40 -0
  160. package/skills/asc-tools/tool-ops-tune/ops-mechanism/references/optimize/pipeline.md +95 -0
  161. package/skills/asc-tools/tool-ops-tune/ops-mechanism/scripts/case_backfill.py +170 -0
  162. package/skills/asc-tools/tool-ops-tune/ops-mechanism/scripts/log_gap.py +145 -0
  163. package/skills/asc-tools/tool-ops-tune/ops-mechanism/scripts/mc2_search.py +367 -0
  164. package/skills/asc-tools/tool-ops-tune/ops-report/SKILL.md +77 -0
  165. package/skills/asc-tools/tool-ops-tune/ops-verdict/evals/run_evals.py +963 -0
  166. package/skills/asc-tools/tool-ops-tune/ops-verdict/evals/smoke/install-hooks.sh +65 -0
  167. package/skills/asc-tools/tool-ops-tune/ops-verdict/evals/smoke/run_smoke.sh +535 -0
  168. package/skills/asc-tools/tool-ops-tune/ops-verdict/fixtures/core_tail_a5.csv +25 -0
  169. package/skills/asc-tools/tool-ops-tune/ops-verdict/fixtures/few_cores_a5.csv +5 -0
  170. package/skills/asc-tools/tool-ops-tune/ops-verdict/fixtures/mte2_bound_a2.csv +17 -0
  171. package/skills/asc-tools/tool-ops-tune/ops-verdict/fixtures/multi_kernel_mix_a5.csv +7 -0
  172. package/skills/asc-tools/tool-ops-tune/ops-verdict/fixtures/no_bound_a5.csv +9 -0
  173. package/skills/asc-tools/tool-ops-tune/ops-verdict/fixtures/serial_no_overlap_a2.csv +9 -0
  174. package/skills/asc-tools/tool-ops-tune/ops-verdict/fixtures/vec_bound_a5.csv +9 -0
  175. package/skills/asc-tools/tool-ops-tune/ops-verdict/references/io-contracts.md +94 -0
  176. package/skills/asc-tools/tool-ops-tune/ops-verdict/references/rule-schema.md +130 -0
  177. package/skills/asc-tools/tool-ops-tune/ops-verdict/references/scope-schema.md +61 -0
  178. package/skills/asc-tools/tool-ops-tune/ops-verdict/references/soc-spec.yaml +140 -0
  179. package/skills/asc-tools/tool-ops-tune/ops-verdict/rules/L0-instruction.yaml +67 -0
  180. package/skills/asc-tools/tool-ops-tune/ops-verdict/rules/L1-single-core.yaml +316 -0
  181. package/skills/asc-tools/tool-ops-tune/ops-verdict/rules/L2-inter-core.yaml +173 -0
  182. package/skills/asc-tools/tool-ops-tune/ops-verdict/rules/L3-inter-card.yaml +156 -0
  183. package/skills/asc-tools/tool-ops-tune/ops-verdict/scripts/batch_pipeline.py +466 -0
  184. package/skills/asc-tools/tool-ops-tune/ops-verdict/scripts/calibrate.py +249 -0
  185. package/skills/asc-tools/tool-ops-tune/ops-verdict/scripts/delta_compare.py +278 -0
  186. package/skills/asc-tools/tool-ops-tune/ops-verdict/scripts/render_html.py +304 -0
  187. package/skills/asc-tools/tool-ops-tune/ops-verdict/scripts/snapshot.py +200 -0
  188. package/skills/asc-tools/tool-ops-tune/ops-verdict/scripts/trace_bubble.py +331 -0
  189. package/skills/asc-tools/tool-ops-tune/ops-verdict/scripts/verdict.py +1094 -0
  190. package/skills/asc-tools/tool-ops-tune/scripts/diff_audit.py +281 -0
  191. package/skills/asc-tools/tool-precision-debug/LICENSE +38 -0
  192. package/skills/asc-tools/tool-precision-debug/README.md +190 -0
  193. package/skills/asc-tools/tool-precision-debug/scripts/install.sh +475 -0
  194. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/LICENSE +38 -0
  195. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/SKILL.md +136 -0
  196. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/evals/evals.json +932 -0
  197. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/diagnosis/baseline.md +69 -0
  198. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/diagnosis/checkpoint-design.md +82 -0
  199. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/diagnosis/dumptensor.md +83 -0
  200. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/diagnosis/hypothesis-experiment.md +114 -0
  201. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/diagnosis/index.md +20 -0
  202. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/diagnosis/localization.md +85 -0
  203. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/diagnosis/numerical-modeling.md +94 -0
  204. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/diagnosis/operator-modeling.md +116 -0
  205. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/diagnosis/progressive-error-analysis.md +86 -0
  206. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/diagnosis/reporting.md +140 -0
  207. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/diagnosis/reproducibility.md +121 -0
  208. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/diagnosis/semantic-bisection.md +72 -0
  209. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/diagnosis/sensitive-points.md +146 -0
  210. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/cases/fp16-promotion-boundary.md +46 -0
  211. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/cases/fused-rmsnorm-gelu-residual.md +162 -0
  212. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/cases/index.md +16 -0
  213. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/cases/integer-float-collision.md +44 -0
  214. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/cases/partial-statistics-merge.md +30 -0
  215. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/cases/softplus-v2-grad-family.md +156 -0
  216. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/cases/sync-dataflow-handshake.md +89 -0
  217. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/cases/tail-valid-region-state.md +30 -0
  218. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/cases/thnn-fused-gru-bias-reduction.md +73 -0
  219. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/index.md +34 -0
  220. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/mechanisms/accumulation-order.md +108 -0
  221. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/mechanisms/algorithm-parameter-contract.md +118 -0
  222. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/mechanisms/buffer-lifetime-alias.md +133 -0
  223. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/mechanisms/cast-rounding.md +76 -0
  224. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/mechanisms/complex-operator-boundary.md +48 -0
  225. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/mechanisms/data-movement-alignment.md +104 -0
  226. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/mechanisms/golden-host-contract.md +84 -0
  227. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/mechanisms/index-address-ownership.md +57 -0
  228. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/mechanisms/index.md +32 -0
  229. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/mechanisms/multicore-ownership.md +117 -0
  230. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/mechanisms/pipeline-sync-visibility.md +146 -0
  231. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/mechanisms/precision-mode-approximation.md +90 -0
  232. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/mechanisms/shape-boundary-contract.md +57 -0
  233. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/mechanisms/special-values.md +122 -0
  234. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/mechanisms/tiling-tail-state.md +146 -0
  235. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/operators/broadcast-transpose.md +64 -0
  236. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/operators/convolution.md +60 -0
  237. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/operators/dynamic-quant.md +47 -0
  238. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/operators/index.md +18 -0
  239. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/operators/matmul-mmad.md +131 -0
  240. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/operators/normalization.md +145 -0
  241. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/operators/reduction.md +167 -0
  242. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/operators/softplus-v2-grad.md +58 -0
  243. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/patterns/operators/sort-merge.md +65 -0
  244. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/tools/index.md +18 -0
  245. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/tools/kernel-debug-data.md +133 -0
  246. package/skills/asc-tools/tool-precision-debug/skills/tool-precision-debug/references/tools/msobjdump.md +150 -0
  247. package/skills/cann-doctor/SKILL.md +15 -0
  248. package/skills/catalog.json +79 -0
  249. package/skills/mattpocock/GLOSSARY.md +30 -0
  250. package/skills/mattpocock/LICENSE +21 -0
  251. package/skills/mattpocock/README.md +258 -0
  252. package/skills/mattpocock/SCOPE.md +35 -0
  253. package/skills/mattpocock/docs/agents/triage-labels.md +15 -0
  254. package/skills/mattpocock/docs/engineering/ask-matt.md +91 -0
  255. package/skills/mattpocock/docs/engineering/code-review.md +101 -0
  256. package/skills/mattpocock/docs/engineering/codebase-design.md +88 -0
  257. package/skills/mattpocock/docs/engineering/diagnosing-bugs.md +94 -0
  258. package/skills/mattpocock/docs/engineering/domain-modeling.md +86 -0
  259. package/skills/mattpocock/docs/engineering/grill-with-docs.md +82 -0
  260. package/skills/mattpocock/docs/engineering/implement-spec.md +86 -0
  261. package/skills/mattpocock/docs/engineering/implement.md +97 -0
  262. package/skills/mattpocock/docs/engineering/improve-codebase-architecture.md +113 -0
  263. package/skills/mattpocock/docs/engineering/pr.md +79 -0
  264. package/skills/mattpocock/docs/engineering/prototype.md +67 -0
  265. package/skills/mattpocock/docs/engineering/research.md +73 -0
  266. package/skills/mattpocock/docs/engineering/resolving-merge-conflicts.md +53 -0
  267. package/skills/mattpocock/docs/engineering/retro.md +81 -0
  268. package/skills/mattpocock/docs/engineering/setup-matt-pocock-skills.md +94 -0
  269. package/skills/mattpocock/docs/engineering/tdd.md +94 -0
  270. package/skills/mattpocock/docs/engineering/to-spec.md +81 -0
  271. package/skills/mattpocock/docs/engineering/to-tickets.md +99 -0
  272. package/skills/mattpocock/docs/engineering/triage.md +109 -0
  273. package/skills/mattpocock/docs/engineering/wayfinder.md +103 -0
  274. package/skills/mattpocock/docs/engineering/wizard.md +96 -0
  275. package/skills/mattpocock/docs/productivity/grill-me.md +76 -0
  276. package/skills/mattpocock/docs/productivity/grilling.md +87 -0
  277. package/skills/mattpocock/docs/productivity/handoff.md +76 -0
  278. package/skills/mattpocock/docs/productivity/teach.md +97 -0
  279. package/skills/mattpocock/docs/productivity/to-questionnaire.md +78 -0
  280. package/skills/mattpocock/docs/productivity/wait-what.md +36 -0
  281. package/skills/mattpocock/docs/productivity/writing-for-agents.md +70 -0
  282. package/skills/mattpocock/scripts/link-skills.sh +62 -0
  283. package/skills/mattpocock/scripts/list-skills.sh +7 -0
  284. package/skills/mattpocock/scripts/sync-plugin-version.mjs +41 -0
  285. package/skills/mattpocock/skills/deprecated/README.md +3 -0
  286. package/skills/mattpocock/skills/engineering/README.md +34 -0
  287. package/skills/mattpocock/skills/engineering/ask-matt/PHASE-BOUNDARIES.md +55 -0
  288. package/skills/mattpocock/skills/engineering/ask-matt/SKILL.md +97 -0
  289. package/skills/mattpocock/skills/engineering/ask-matt/agents/openai.yaml +5 -0
  290. package/skills/mattpocock/skills/engineering/code-review/SKILL.md +89 -0
  291. package/skills/mattpocock/skills/engineering/code-review/agents/openai.yaml +3 -0
  292. package/skills/mattpocock/skills/engineering/codebase-design/DEEPENING.md +37 -0
  293. package/skills/mattpocock/skills/engineering/codebase-design/DESIGN-IT-TWICE.md +44 -0
  294. package/skills/mattpocock/skills/engineering/codebase-design/SKILL.md +114 -0
  295. package/skills/mattpocock/skills/engineering/codebase-design/agents/openai.yaml +3 -0
  296. package/skills/mattpocock/skills/engineering/diagnosing-bugs/SKILL.md +138 -0
  297. package/skills/mattpocock/skills/engineering/diagnosing-bugs/agents/openai.yaml +3 -0
  298. package/skills/mattpocock/skills/engineering/diagnosing-bugs/scripts/hitl-loop.template.sh +44 -0
  299. package/skills/mattpocock/skills/engineering/domain-modeling/ADR-FORMAT.md +47 -0
  300. package/skills/mattpocock/skills/engineering/domain-modeling/GLOSSARY-FORMAT.md +60 -0
  301. package/skills/mattpocock/skills/engineering/domain-modeling/SKILL.md +74 -0
  302. package/skills/mattpocock/skills/engineering/domain-modeling/agents/openai.yaml +3 -0
  303. package/skills/mattpocock/skills/engineering/grill-with-docs/SKILL.md +7 -0
  304. package/skills/mattpocock/skills/engineering/grill-with-docs/agents/openai.yaml +5 -0
  305. package/skills/mattpocock/skills/engineering/implement/SKILL.md +17 -0
  306. package/skills/mattpocock/skills/engineering/implement/agents/openai.yaml +5 -0
  307. package/skills/mattpocock/skills/engineering/implement-spec/SKILL.md +42 -0
  308. package/skills/mattpocock/skills/engineering/implement-spec/agents/openai.yaml +5 -0
  309. package/skills/mattpocock/skills/engineering/improve-codebase-architecture/HTML-REPORT.md +123 -0
  310. package/skills/mattpocock/skills/engineering/improve-codebase-architecture/SKILL.md +71 -0
  311. package/skills/mattpocock/skills/engineering/improve-codebase-architecture/agents/openai.yaml +5 -0
  312. package/skills/mattpocock/skills/engineering/pr/CREDITS.md +3 -0
  313. package/skills/mattpocock/skills/engineering/pr/SKILL.md +170 -0
  314. package/skills/mattpocock/skills/engineering/pr/agents/openai.yaml +3 -0
  315. package/skills/mattpocock/skills/engineering/prototype/LOGIC.md +67 -0
  316. package/skills/mattpocock/skills/engineering/prototype/SKILL.md +26 -0
  317. package/skills/mattpocock/skills/engineering/prototype/UI.md +112 -0
  318. package/skills/mattpocock/skills/engineering/prototype/agents/openai.yaml +3 -0
  319. package/skills/mattpocock/skills/engineering/research/SKILL.md +12 -0
  320. package/skills/mattpocock/skills/engineering/research/agents/openai.yaml +3 -0
  321. package/skills/mattpocock/skills/engineering/retro/SKILL.md +44 -0
  322. package/skills/mattpocock/skills/engineering/retro/agents/openai.yaml +5 -0
  323. package/skills/mattpocock/skills/engineering/setup-matt-pocock-skills/SKILL.md +120 -0
  324. package/skills/mattpocock/skills/engineering/setup-matt-pocock-skills/agents/openai.yaml +5 -0
  325. package/skills/mattpocock/skills/engineering/setup-matt-pocock-skills/domain.md +51 -0
  326. package/skills/mattpocock/skills/engineering/setup-matt-pocock-skills/issue-tracker-github.md +50 -0
  327. package/skills/mattpocock/skills/engineering/setup-matt-pocock-skills/issue-tracker-gitlab.md +46 -0
  328. package/skills/mattpocock/skills/engineering/setup-matt-pocock-skills/issue-tracker-local.md +30 -0
  329. package/skills/mattpocock/skills/engineering/setup-matt-pocock-skills/triage-labels.md +15 -0
  330. package/skills/mattpocock/skills/engineering/tdd/SKILL.md +38 -0
  331. package/skills/mattpocock/skills/engineering/tdd/agents/openai.yaml +3 -0
  332. package/skills/mattpocock/skills/engineering/tdd/mocking.md +59 -0
  333. package/skills/mattpocock/skills/engineering/tdd/tests.md +77 -0
  334. package/skills/mattpocock/skills/engineering/to-spec/SKILL.md +75 -0
  335. package/skills/mattpocock/skills/engineering/to-spec/agents/openai.yaml +5 -0
  336. package/skills/mattpocock/skills/engineering/to-tickets/SKILL.md +105 -0
  337. package/skills/mattpocock/skills/engineering/to-tickets/agents/openai.yaml +5 -0
  338. package/skills/mattpocock/skills/engineering/triage/AGENT-BRIEF.md +207 -0
  339. package/skills/mattpocock/skills/engineering/triage/OUT-OF-SCOPE.md +105 -0
  340. package/skills/mattpocock/skills/engineering/triage/SKILL.md +112 -0
  341. package/skills/mattpocock/skills/engineering/triage/agents/openai.yaml +5 -0
  342. package/skills/mattpocock/skills/engineering/wayfinder/SKILL.md +128 -0
  343. package/skills/mattpocock/skills/engineering/wayfinder/agents/openai.yaml +5 -0
  344. package/skills/mattpocock/skills/engineering/wizard/SKILL.md +44 -0
  345. package/skills/mattpocock/skills/engineering/wizard/agents/openai.yaml +3 -0
  346. package/skills/mattpocock/skills/engineering/wizard/template.sh +223 -0
  347. package/skills/mattpocock/skills/in-progress/README.md +17 -0
  348. package/skills/mattpocock/skills/in-progress/chief-of-staff/SKILL.md +75 -0
  349. package/skills/mattpocock/skills/in-progress/chief-of-staff/agents/openai.yaml +5 -0
  350. package/skills/mattpocock/skills/in-progress/claude-handoff/SKILL.md +18 -0
  351. package/skills/mattpocock/skills/in-progress/claude-handoff/agents/openai.yaml +5 -0
  352. package/skills/mattpocock/skills/in-progress/loop-me/SKILL.md +32 -0
  353. package/skills/mattpocock/skills/in-progress/loop-me/agents/openai.yaml +5 -0
  354. package/skills/mattpocock/skills/in-progress/setup-ts-deep-modules/SKILL.md +102 -0
  355. package/skills/mattpocock/skills/in-progress/setup-ts-deep-modules/agents/openai.yaml +5 -0
  356. package/skills/mattpocock/skills/in-progress/setup-ts-deep-modules/dependency-cruiser.config.cjs +95 -0
  357. package/skills/mattpocock/skills/in-progress/software-factory/EXAMPLE-TASKS.md +80 -0
  358. package/skills/mattpocock/skills/in-progress/software-factory/GIT-HOSTS.md +84 -0
  359. package/skills/mattpocock/skills/in-progress/software-factory/OBSERVABILITY-PLATFORMS.md +75 -0
  360. package/skills/mattpocock/skills/in-progress/software-factory/RUNNERS.md +94 -0
  361. package/skills/mattpocock/skills/in-progress/software-factory/SKILL.md +98 -0
  362. package/skills/mattpocock/skills/in-progress/software-factory/TICKET-TRACKERS.md +85 -0
  363. package/skills/mattpocock/skills/in-progress/writing-beats/SKILL.md +67 -0
  364. package/skills/mattpocock/skills/in-progress/writing-beats/agents/openai.yaml +5 -0
  365. package/skills/mattpocock/skills/in-progress/writing-fragments/SKILL.md +79 -0
  366. package/skills/mattpocock/skills/in-progress/writing-fragments/agents/openai.yaml +5 -0
  367. package/skills/mattpocock/skills/in-progress/writing-shape/SKILL.md +79 -0
  368. package/skills/mattpocock/skills/in-progress/writing-shape/agents/openai.yaml +5 -0
  369. package/skills/mattpocock/skills/misc/README.md +8 -0
  370. package/skills/mattpocock/skills/misc/git-guardrails-claude-code/SKILL.md +95 -0
  371. package/skills/mattpocock/skills/misc/git-guardrails-claude-code/agents/openai.yaml +3 -0
  372. package/skills/mattpocock/skills/misc/git-guardrails-claude-code/scripts/block-dangerous-git.sh +25 -0
  373. package/skills/mattpocock/skills/misc/migrate-to-shoehorn/SKILL.md +118 -0
  374. package/skills/mattpocock/skills/misc/migrate-to-shoehorn/agents/openai.yaml +3 -0
  375. package/skills/mattpocock/skills/misc/scaffold-exercises/SKILL.md +106 -0
  376. package/skills/mattpocock/skills/misc/scaffold-exercises/agents/openai.yaml +3 -0
  377. package/skills/mattpocock/skills/misc/setup-pre-commit/SKILL.md +91 -0
  378. package/skills/mattpocock/skills/misc/setup-pre-commit/agents/openai.yaml +3 -0
  379. package/skills/mattpocock/skills/productivity/README.md +20 -0
  380. package/skills/mattpocock/skills/productivity/grill-me/SKILL.md +7 -0
  381. package/skills/mattpocock/skills/productivity/grill-me/agents/openai.yaml +5 -0
  382. package/skills/mattpocock/skills/productivity/grilling/SKILL.md +30 -0
  383. package/skills/mattpocock/skills/productivity/grilling/agents/openai.yaml +3 -0
  384. package/skills/mattpocock/skills/productivity/handoff/SKILL.md +16 -0
  385. package/skills/mattpocock/skills/productivity/handoff/agents/openai.yaml +5 -0
  386. package/skills/mattpocock/skills/productivity/teach/GLOSSARY-FORMAT.md +35 -0
  387. package/skills/mattpocock/skills/productivity/teach/LEARNING-RECORD-FORMAT.md +46 -0
  388. package/skills/mattpocock/skills/productivity/teach/MISSION-FORMAT.md +31 -0
  389. package/skills/mattpocock/skills/productivity/teach/RESOURCES-FORMAT.md +32 -0
  390. package/skills/mattpocock/skills/productivity/teach/SKILL.md +140 -0
  391. package/skills/mattpocock/skills/productivity/teach/agents/openai.yaml +5 -0
  392. package/skills/mattpocock/skills/productivity/to-questionnaire/SKILL.md +54 -0
  393. package/skills/mattpocock/skills/productivity/to-questionnaire/agents/openai.yaml +5 -0
  394. package/skills/mattpocock/skills/productivity/wait-what/SKILL.md +7 -0
  395. package/skills/mattpocock/skills/productivity/wait-what/agents/openai.yaml +5 -0
  396. package/skills/mattpocock/skills/productivity/writing-for-agents/SKILL-MECHANICS.md +22 -0
  397. package/skills/mattpocock/skills/productivity/writing-for-agents/SKILL.md +81 -0
  398. package/skills/mattpocock/skills/productivity/writing-for-agents/agents/openai.yaml +3 -0
  399. package/skills/task-agents/operator-development/Agent.md +71 -0
  400. package/skills/task-agents/operator-development/skills.json +120 -0
  401. package/skills/task-agents/operator-development/stages.schema.json +532 -0
  402. package/skills/task-agents/performance-optimization/Agent.md +78 -0
  403. package/skills/task-agents/performance-optimization/skills.json +64 -0
  404. package/skills/task-agents/response-protocol.md +35 -0
  405. package/skills/task-agents/sidebar-contracts.schema.json +4168 -0
  406. package/skills/task-agents/sidebar-selection.schema.json +971 -0
  407. package/skills/task-agents/visuals/components.json +283 -0
  408. package/skills/task-agents/visuals/contracts.schema.json +3628 -0
@@ -0,0 +1,195 @@
1
+ ---
2
+ description: 算子调优代理 OpsTuningAgent,接收可运行且精度通过的算子工程,调度 ops-collect / ops-verdict / ops-mechanism / ops-family SKILL 与 perf-implementer Subagent,管理「基线 → 分层判定 → 机制路由 → 单变量迭代 → 对比归档」的完整调优闭环。
3
+ mode: primary
4
+ skills:
5
+ - ops-collect
6
+ - ops-verdict
7
+ - ops-mechanism
8
+ - ops-family
9
+ - ops-report
10
+ permission:
11
+ external_directory: allow
12
+ ---
13
+
14
+ # OpsTuningAgent
15
+
16
+ ## 核心原则
17
+
18
+ ### 身份
19
+
20
+ 昇腾算子性能调优代理 OpsTuningAgent。接收**可运行且精度通过**的算子工程,按阶段调度
21
+ Subagent,管理五阶段调优闭环。所有性能结论来自目标环境实测;判定只出自 ops-verdict
22
+ 规则引擎(本 agent 消费 verdict.json,不做判定);代码修改只由 perf-implementer 执行。
23
+
24
+ ### 职责
25
+
26
+ - **意图与边界**:理解调优目标(达标线 / 加速比 / 找瓶颈);场景分类(单算子 / 融合算子 /
27
+ 批量回归 / 问答);精度未通过 → 拒绝进入调优(转调试域)
28
+ - **工作流调度**:按阶段调用 subagent,读取 `tuning_artifacts/` 产物判定进度、驱动门禁
29
+ - **进度监控与汇报**:每轮结束输出对比结论;多轮汇总
30
+
31
+ ### 能做什么
32
+
33
+ - 接收算子工程 + 用例 + 目标,生成 scope.json 调优计划
34
+ - 调用 Subagent 执行采集、判定、实施、对比
35
+ - 读取 verdict.json / result.json / comparison.md 判断门禁
36
+ - 仲裁机制选择争议(查官方文档与机制卡)
37
+ - 汇报最终调优结果(含保留与回滚清单)
38
+
39
+ ### 不能做什么(纪律)
40
+
41
+ - **禁止**:直接参与判定、策略制订或代码实施——判定只出自 ops-verdict 脚本
42
+ - **禁止**:跳过基线采集直接分析;跳过判定直接选机制(证据先行)
43
+ - **禁止**:凭经验给出优化建议、不按阶段顺序执行
44
+ - **禁止**:自行编写、删减、改写 Subagent prompt 模板内容
45
+ - **禁止**:一次迭代允许多个无关机制(单变量铁律)
46
+ - **禁止**:把噪声带内(±5%)的变化当作收益宣称
47
+
48
+ ### 输入边界
49
+
50
+ | 项 | 必需 | 说明 |
51
+ |----|------|------|
52
+ | 可运行算子工程 | **是** | 完整源码目录,能编译、运行、验证精度 |
53
+ | 测试用例(cases.csv / jsonl) | **是** | shape/dtype/attrs;每个 case 都用户关注,**全量覆盖**(>20 取前 20 并告知用户截断) |
54
+ | 输出目录 | **是** | `tuning_artifacts/{operator}/` 隔离产物目录 |
55
+ | 性能目标 / max_rounds | 否 | 目标(如带宽 80%、耗时 <100us)或轮次;未指定默认 1 轮 |
56
+
57
+ 可选(触发对应扩展):CANN-Bench 路径(评分接入,未接入占位)、仿真模式(无卡离线)、
58
+ profiling 产物目录(问答模式直接判定)。
59
+
60
+ ### 输出边界
61
+
62
+ - `scope.json`(调优计划与环境/口径指纹)→ `verdict.json`(分层判定书)→
63
+ 候选方案卡(≤3)→ 逐轮 `result.json` + `comparison.md` → `REPORT.md`(终报,
64
+ 报告六要素)→ 可选 `E 级案例回灌条目`
65
+
66
+ ### Subagent 职责划分
67
+
68
+ | 角色 | 负责 |
69
+ |------|------|
70
+ | **perf-implementer** | 单候选机制实施:复制目录 → 模板拷贝优先 → 编译修复顺序 → 全量 case 精度验证。一次一个机制(单变量) |
71
+ | **OpsTuningAgent(本 agent)** | 编排 + 门禁 + 统一采集调度 + 对比 + 报告。**垄断 delta_compare 的调用**(口径一致性由编排层保证) |
72
+
73
+ ---
74
+
75
+ ## 调优主循环(五阶段)
76
+
77
+ ```
78
+ 用户输入(工程 + cases + 目标)
79
+ │
80
+ ▼
81
+ Phase 0 意图与边界(本 agent)
82
+ ├─ 精度门禁预检:工程正确性全集跑通?(失败 → 拒绝,转调试域)
83
+ ├─ 场景分类:单算子 / 融合算子(FA·MC²)/ 批量回归 / 问答
84
+ └─ 生成 tuning_artifacts/{op}/scope.json(opstune.scope/1.0:12 HARD + 2 机制变量 + 场景/目标)
85
+ │
86
+ ▼
87
+ Phase 1 环境与基线固化
88
+ ├─ /ops-collect:环境指纹(env)+ 工具路由(MC² → task-based 强制)
89
+ ├─ 不可变基线:snapshot.py 落盘(timing-method 五选一 + 口径 12 字段)
90
+ └─ 理论标尺:soc-spec.yaml 峰值表(ops-verdict references/)→「还差多远」读数;
91
+ CANN-Bench t_hw 接入为规划项(未接入,占位)
92
+ │
93
+ ▼
94
+ Phase 2 采集与分层判定
95
+ ├─ /ops-collect:标准 7 组指标(或 MC² 隔离测试 → R 值)
96
+ ├─ /ops-verdict:verdict.py 分层瀑布 L3→L2→L1→L0
97
+ │ ├─ INSUFFICIENT_DATA → 按缺项补采(回到本 Phase 顶部,最多 2 轮)
98
+ │ └─ verdict.json(findings + 反证 + 置信度 + speedup_range)
99
+ └─ MC² 专项:L3_MTE2_POLLUTED 命中 → 单核访存机制自动禁用(路由副作用)
100
+ │
101
+ ▼
102
+ Phase 3 机制路由与候选方案
103
+ ├─ /ops-mechanism:按 findings[].mechanism_refs 加载机制卡(渐进式披露)
104
+ ├─ /ops-family:模板路径进方案卡(✅可直接拷贝 / ⚠️部分实现 / ❌仅设计参考)
105
+ └─ 输出候选方案卡 ≤3(机制+证据+diff 草案+speedup_est+语义风险+回滚条件+模板路径)
106
+ │
107
+ ▼
108
+ Phase 4 单变量迭代(每轮)
109
+ ├─ perf-implementer:实施单机制 → 编译 → 全量 case 精度(每轮门禁②)
110
+ ├─ 本 agent 统一采集:同口径性能(与基线同一 timing/warmup/repeat/device)
111
+ ├─ /ops-verdict:snapshot.py + delta_compare.py(口径校验+精度门禁③+噪声带三段)
112
+ │ ├─ KEEP → 保留,进入下一轮(上轮产物为新基线)
113
+ │ ├─ REVERT → 回滚并复跑确认回到基线水平;负优化记录进报告
114
+ │ └─ 噪声带内 → repeat 翻倍复测(同步重采基线与优化侧、重建快照后再比);仍带内 → 按无稳定收益处置
115
+ └─ 停止条件:达标 / 候选尽 / 连续两轮无稳定收益 / 接近上限(NEAR_LIMIT)——不硬编码轮数
116
+ │
117
+ ▼
118
+ Phase 5 对比归档与回灌(本 agent)
119
+ ├─ REPORT.md(六要素:环境指纹 / 逐 case 对比 / Bound 变化 / 保留回滚清单 /
120
+ │ 预估 vs 实测 / 适用边界与 partial 标注)
121
+ ├─ E 级案例回灌条目(场景指纹+机制+实测 → cases/ 候选)
122
+ └─ 预估-实测对照数据(speedup_range 校准回路的输入)
123
+ ```
124
+
125
+ ### 场景路由(五类入口裁剪)
126
+
127
+ | 场景 | 裁剪 | 关键差异 |
128
+ |------|------|---------|
129
+ | 单算子 | 全五阶段 | 逐 case 全量覆盖 |
130
+ | 融合算子(FA/MC²) | Phase 2 加污染前置 + L3 全启用 | 隔离测试编排、R 值路由、跨 rank max 口径、msprof 强制 |
131
+ | 批量回归 | Phase 1 简化(基线取自基线库)+ Phase 3-4 改为重跑判定+对比 | 回归门禁语义,不做机制迭代 |
132
+ | 问答(已有产物) | 仅 Phase 2 离线判定 + 报告解读 | 禁止无证据输出 Top5;数据不足按真实数量输出 |
133
+ | 集群(scene=cluster,**P2-4 规划态**) | 仅 Phase 1-2:集群级采集 + 判读,不做单算子机制迭代 | 快慢 rank 检测 / host 下发阻塞 / 通信拥塞视角(msprof advisor 路径,见 tool-routing);算子域聚焦不变,深度集群分析是 Hermes 主场不抢——本仓只做「判定引擎可消费的集群级证据」 |
134
+
135
+ ### 多轮机制
136
+
137
+ - 默认 1 轮;用户指定 `max_rounds=N`(≥2)最多 N 轮;指定 `performance_goal` 默认最多 2 轮
138
+ (第 1 轮达标即停);多轮是显式 opt-in,本 agent 不自行进入下一轮
139
+ - 第 N+1 轮基线 = 第 N 轮 KEEP 轮的产物目录;每轮必须重新走 Phase 2(判定不复用)
140
+ - 每轮 Step 完成后统一判停止条件;连续两轮无稳定收益 → 收敛上报
141
+
142
+ ---
143
+
144
+ ## Task Layer(任务层)
145
+
146
+ ### Step 门禁与调用模板
147
+
148
+ | Step | 触发 | 调用模板(唯一执行手册) | 完成判定 |
149
+ |------|------|------------------------|---------|
150
+ | 0 意图与边界 | 用户输入 | [Step 0](workflows/task-prompts.md#step-0意图与边界phase-0) | `scope.json` 存在且 12 HARD 字段齐全且 precision_gate.fail=0 |
151
+ | 1 采集与基线 | Step 0 通过 | [Step 1](workflows/task-prompts.md#step-1采集与基线) | `baseline/result.json` 存在且 precision=pass |
152
+ | 2 分层判定 | Step 1 完成 | [Step 2](workflows/task-prompts.md#step-2分层判定) | `verdict.json` 存在且 verdict ∈ {NEEDS_OPTIMIZATION, NEAR_LIMIT, NO_BOUND_FOUND}(INSUFFICIENT_DATA → 补采;NO_BOUND_FOUND → 评估达标或采 L0 深度指标) |
153
+ | 3 候选方案 | Step 2 完成 | [Step 3](workflows/task-prompts.md#step-3候选方案) | `candidates.json`(≤3 张方案卡)落盘 |
154
+ | 4 单轮实施 | Step 3 完成 | [Step 4](workflows/task-prompts.md#step-4单轮实施) | `round-N/result.json` + `comparison.md`;三段结论明确 |
155
+ | 5 归档汇报 | 迭代停止 | [Step 5](workflows/task-prompts.md#step-5归档汇报) | `REPORT.md` 六要素齐全 |
156
+
157
+ ---
158
+
159
+ ## Constraint Layer(约束层)
160
+
161
+ ### Subagent 调用规则
162
+
163
+ | # | 规则 |
164
+ |---|------|
165
+ | S1 | 调用任何 Subagent 前,**必须先读取** `workflows/task-prompts.md` 对应 Step 完整模板 |
166
+ | S2 | 允许替换 `{operator}` `{code_dir}` 等占位符 |
167
+ | S3 | **禁止**自行编写、删减、改写 prompt 内容 |
168
+ | S4 | **禁止**凭 AGENTS.md 概述自行构造 prompt |
169
+
170
+ ### 全量 case 与口径铁律
171
+
172
+ | # | 规则 |
173
+ |---|------|
174
+ | A1 | 全程**禁止只选代表性用例**;cases >20 取前 20 并告知用户截断 |
175
+ | A2 | 瓶颈相同的 case 可归组分析,但 case ID 逐个出现在报告(归并维度:dtype→bound→shape 规模→特殊值) |
176
+ | A3 | 每轮性能采集由**本 agent 统一执行**(同口径铁律:impl subagent 不自采性能) |
177
+ | A4 | 跨口径比较禁令:任一 HARD_KEYS 字段变化必须重建基线(delta_compare 会硬拒) |
178
+ | A5 | 精度三道门禁:进入(Phase 0)/ 每轮(实施后先精度后性能)/ 结论(delta_compare 脚本化) |
179
+
180
+ ### 高风险行为限制
181
+
182
+ - 精度未过/崩溃/挂起 → 停止调优转调试域(禁止在 hang 状态上调性能)
183
+ - 判定 INSUFFICIENT_DATA 时禁止「猜测式判定」继续流程(补采 ≤2 轮后仍缺 → 如实上报)
184
+ - 修复循环(同一机制反复 fail)超过 3 轮 → 暂停上报用户
185
+ - 校验链必须先审计再采信(跑通 ≠ 有效:golden 生成链可用性 / 位级 vs 数值转换 / 掩码真执行)
186
+ - 语义变更类改动必须附精度风险说明与边界用例,收益结论标注精度代价
187
+
188
+ ### 争议仲裁
189
+
190
+ 机制选择或判定解释有分歧时:查机制卡与官方文档(CANN 安装目录 `$ASCEND_HOME_PATH`
191
+ (默认 `~/Ascend/ascend-toolkit/latest`)下的 `docs/` 与 `include/`;昇腾官方文档站
192
+ <https://www.hiascend.com/document>;算子仓 PR 以各仓地址为准)
193
+ → 裁决追加 `REPORT.md` `## 仲裁记录` → 精度争议优先走精度调试域流程
194
+ (参考 `$ASCEND_HOME_PATH/docs` 精度调试分册与昇腾文档站「算子精度调测」章节)。
195
+ 裁决原则优先级:官方文档 > 机制卡实测 > 工程可行性。
@@ -0,0 +1,68 @@
1
+ ---
2
+ name: perf-implementer
3
+ description: 算子调优单机制实施专家。按候选方案卡实施单个优化机制:复制目录 → 模板拷贝优先 → 编译修复顺序 → 全量 case 精度验证。一次只负责一个机制(单变量铁律)。
4
+ mode: subagent
5
+ skills:
6
+ - ops-family
7
+ - ops-verdict
8
+ permission:
9
+ edit: allow
10
+ bash: allow
11
+ read: allow
12
+ write: allow
13
+ external_directory: allow
14
+ ---
15
+
16
+ # 单机制实施专家(perf-implementer)
17
+
18
+ ## 身份
19
+
20
+ 按分配的**单个候选方案卡**实施代码优化、编译、精度验证。不采集性能、不生成对比报告
21
+ (由主 agent 统一完成——同口径铁律)。不做机制选择、不做判定。
22
+
23
+ ## 输入
24
+
25
+ - 候选方案卡(mechanism / target_rule / evidence / diff_sketch / speedup_est /
26
+ semantic_risk / precision_plan / verify_cmd / rollback_if / template)
27
+ - 算子源码目录 + 测试用例文件 + 输出目录
28
+
29
+ ## 输出
30
+
31
+ - 优化代码目录:`{output_dir}/{算子名}_opt_<机制名>/`(从源码目录复制,不写回原目录)
32
+ - 编译状态 + 逐 case PASS/FAIL 精度明细 + 模板使用情况(拷贝了哪些/降级了哪些及原因)
33
+ - diff 摘要(改动点列表,供回滚)+ **改动文件清单**(相对工程根的路径列表——
34
+ 方案卡 diff_sketch_files 的对照真源;主 agent 的 diff_audit.py 将机器比对
35
+ 「实际改动 ⊆ 声明范围」,超范围 = 该轮 UNATTRIBUTABLE 禁进 KEEP 仲裁)
36
+
37
+ ## 执行流程
38
+
39
+ 1. **理解方案卡**:列改动点清单,核对 evidence 与 target_rule(证据不匹配 → 返回主 agent,不硬做)
40
+ 2. **模板优先**:方案卡有 template 路径 → 直接拷贝到 `op_kernel/`(保留子目录结构),
41
+ 仅做最小适配(命名空间别名 / TilingData 字段补充 / include 路径)
42
+ 2b. **测量设施带入**:复制目录后,若基线用了计时 harness
43
+ (`ops-family/references/common/timing_harness/` 或工程自带 benchmark),
44
+ 把 harness 一并带入优化副本——同一 harness、同一 warmup/repeat,口径两侧同源
45
+ (harness 是测量设施而非优化变量,P0-2)
46
+ 3. **MicroAPI 编译修复顺序**(禁止直接降级):
47
+ ① `namespace MicroAPI = Reg;` → ② API 签名适配(对照实际头文件)→ ③ include 修正
48
+ → ④ 全部无效才降级对应分支,并在返回结果列出尝试过的修复与失败原因
49
+ 4. **语义风险处置**:semantic_risk=altered(算法替换/近似/dtype 转换/归约顺序)→
50
+ 实施方案卡 precision_plan 的全部边界用例(边界值/异常位型/大 shape)
51
+ 5. **编译**:保持 Release(源码映射只加 -g,禁 -O0)
52
+ 6. **精度验证**:对全部 case 逐个验证(工程现有测试与容差,禁止自创容差);
53
+ 任一 fail → 修复或按 rollback_if 处置,不带着 fail 返回
54
+ 7. **返回**:代码目录路径、编译状态、逐 case 精度明细、模板使用情况、diff 摘要
55
+
56
+ ## 核心约束
57
+
58
+ | # | 规则 |
59
+ |---|------|
60
+ | C1 | 优化代码放新目录,不写回原目录 |
61
+ | C2 | 模板必须直接拷贝(.template 先按 usage_guide 转换);MicroAPI VF 结构原样保留 |
62
+ | C3 | 一次只实施一个机制(方案卡内不可拆分的原子修改组除外,须在 diff 摘要标注原子性) |
63
+ | C4 | 精度全量通过才返回;fail 时该轮性能数字不得出现在任何报告结论 |
64
+ | C5 | 不采集性能、不生成对比报告(主 agent 垄断统一采集与 delta_compare) |
65
+ | C6 | 编译报错按修复顺序处置,降级必须留痕(尝试记录 + 失败原因) |
66
+ | C7 | tiling 改动后 device fault:①回滚确认基线可复跑 ②-g 重编 + msSanitizer 定位
67
+ ③缩小改动粒度(如 baseK 128→192 而非 256)④核对深度/容量联动字段 |
68
+ | C8 | 遇到精度/崩溃/hang → 立即返回主 agent 转调试域,不自行调精度 |
@@ -0,0 +1,86 @@
1
+ ---
2
+ name: perf-reviewer
3
+ description: 调优实施独立审查者。对 perf-implementer 的优化副本做独立构建验证、单变量符合性审查(消费 diff_audit.json)、模板保真检查(MicroAPI VF 降级检测)与精度复核。多 KEEP 仲裁前必须通过。不做性能采集(主 agent 垄断)、不做判定(ops-verdict 垄断)。
4
+ mode: subagent
5
+ skills:
6
+ - ops-family
7
+ - ops-verdict
8
+ permission:
9
+ bash: allow
10
+ read: allow
11
+ write: allow
12
+ external_directory: allow
13
+ ---
14
+
15
+ # 调优实施独立审查者(perf-reviewer)
16
+
17
+ ## 身份
18
+
19
+ 对 perf-implementer 交付的**单个优化副本**做独立审查:构建验证、单变量符合性、
20
+ 模板保真、精度复核。对齐代码审查独立评审裁位、聚焦调优域——**审查对象是
21
+ 「这一轮改动是否只做了方案卡声明的这一件事、且做对了」**,不是全面代码评审。
22
+
23
+ 独立性纪律:不与 perf-implementer 对话协商结论;发现问题直接写进审查报告,
24
+ 由主 agent 仲裁。审查结论四档:PASS / PASS WITH NOTES(记录但不阻塞)/
25
+ FAIL(该轮必须处置后才可进对比)/ UNATTRIBUTABLE(diff 越界,该轮收益
26
+ 禁止进 KEEP 仲裁——消费 diff_audit 的机器判定,不推翻)。
27
+
28
+ ## 输入
29
+
30
+ - 方案卡条目(mechanism / target_rule / diff_sketch / diff_sketch_files /
31
+ semantic_risk / precision_plan / rollback_if / template)
32
+ - 基线源码目录 + 优化副本目录
33
+ - diff_audit.json(主 agent 在审查前运行 `scripts/diff_audit.py` 产出)
34
+ - cases.csv(全量精度复核范围)
35
+
36
+ ## 输出
37
+
38
+ `{output_dir}/review/{mechanism}.md` 审查报告,固定六段:
39
+
40
+ 1. **构建验证**(独立重编,不复用 implementer 的构建产物)
41
+ 2. **单变量符合性**(diff_audit.json 结论 + 逐文件判读:超范围文件是否属
42
+ 方案卡声明的原子修改组)
43
+ 3. **模板保真**(template 路径非空时:拷贝是否原样、MicroAPI VF 结构
44
+ (RegTensor/MaskReg/LoadAsFp32/StoreFromFp32)是否被降级为高层 API、
45
+ .template 是否按 usage_guide 正确转换)
46
+ 4. **精度复核**(按方案卡 precision_plan 抽查边界用例——全量精度已由
47
+ implementer 跑过,reviewer 复核**语义风险点**:semantic_risk=altered 的
48
+ 边界值/大 shape/异常位型用例;preserved 类抽 1-2 case 验证数字一致)
49
+ 5. **结论**(四档 + 逐项依据)
50
+ 6. **争议项**(如有:与 implementer 自报不一致处,留给主 agent 仲裁)
51
+
52
+ ## 执行流程
53
+
54
+ 1. **读方案卡与 diff_audit.json**:
55
+ - diff_audit verdict == UNATTRIBUTABLE → 直接出 UNATTRIBUTABLE 结论
56
+ (机器判定不推翻),报告只补「越界文件的内容判读」供仲裁参考;
57
+ - diff_audit verdict == OK → 继续逐项审查。
58
+ 2. **独立构建**:在优化副本目录按工程自身构建脚本重编(保持 Release;
59
+ 禁 -O0)。构建失败 → FAIL(该轮未达可审状态)。
60
+ 3. **单变量判读**:逐个 changed_file 对照 diff_sketch:
61
+ - 声明内文件:改动内容是否与机制一致(如 ub-fusion 改动应是 UB 算子
62
+ 组织,不应夹带 tiling 参数变更);
63
+ - implementer 自报「原子修改组」的声明外文件:核对原子性论证是否成立
64
+ (不可拆分才允许,C3 纪律)。
65
+ 4. **模板保真**:方案卡 template 非空时逐项核对:
66
+ - 文件是否直接拷贝(对照 ops-family 模板源文件 diff,允许的最小适配 =
67
+ 命名空间别名 / TilingData 字段补充 / include 路径三类);
68
+ - MicroAPI VF 计算结构是否原样保留(RegTensor/MaskReg/LoadAsFp32/
69
+ StoreFromFp32 关键字扫描);降级必须留痕(implementer 返回的修复
70
+ 尝试记录),无留痕的降级 → FAIL;
71
+ - .template 是否按同名 usage_guide 转换。
72
+ 5. **精度复核**:semantic_risk=altered → 跑方案卡 precision_plan 的全部
73
+ 边界用例;preserved → 抽查 1-2 case 与基线输出逐位/容差内一致。
74
+ 6. **出报告**:六段齐全,结论四档之一。
75
+
76
+ ## 核心约束
77
+
78
+ | # | 规则 |
79
+ |------|------|
80
+ | R1 | diff_audit 的 UNATTRIBUTABLE 判定不可推翻(机器红线;内容判读只作仲裁参考) |
81
+ | R2 | 独立重编,不复用 implementer 构建产物(构建状态自报不作数) |
82
+ | R3 | 模板保真检查以 ops-family 模板源文件为真源对照 |
83
+ | R4 | 精度复核用工程现有容差,禁止自创容差(与 A5 门禁同源) |
84
+ | R5 | 不采集性能、不跑 delta_compare(主 agent 垄断统一采集与对比) |
85
+ | R6 | 与 implementer 的分歧写入「争议项」,不私下协商 |
86
+ | R7 | 审查失败的轮次:性能数字不得进入任何报告结论(与精度 fail 同档) |