op-dashboard

Generate self-contained interactive HTML dashboards from AscendC operator output directories.

Updated Sep 15, 2026
One-click install
npx skills add https://github.com/WangWindow/CANN-BatchMatMulMaxsum --skill op-dashboard-wangwindow
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: op-dashboard
Source: https://github.com/WangWindow/CANN-BatchMatMulMaxsum/tree/main/.agents/skills/op-dashboard
Command: npx skills add https://github.com/WangWindow/CANN-BatchMatMulMaxsum --skill op-dashboard-wangwindow

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and assets (resource) components.

What problem does it solve? AscendC operator development produces scattered artifacts—precision results, msprof profiling CSVs, kernel source, and tiling constants—that are hard to review together. This Skill consolidates them into one self-contained HTML dashboard with four tabs: algorithm flow, UB memory/tiling, precision analysis, and performance report. ## Core Features & Use Cases - Two-stage generation: gen_dashboard.py extracts objective data (precision results, profiling CSVs, UB buffers, tiling constants) into panels/*/data.json, then the AI writes visualization fragments (flow.html, steps.html, ub_viz.html) and analysis text before reassembling the final dashboard. - Quality validation: check_dashboard.py runs structural, data, coverage, value, contract, rendering, and health checks on the generated HTML, reporting PASS/WARN/FAIL per item. - Works with incomplete results: dashboards can be generated as soon as compilation passes, displaying FAIL case diagnostics and performance warnings when precision has not passed. - Use Case: After implementing a BatchMatmulMaxSum kernel on Ascend NPU, point the Skill at output/<op_name>/ to produce an offline-shareable dashboard showing the Cube/Vector compute flow, UB allocation donut chart, per-case precision errors, and speedup charts. ## Quick Start Generate an operator dashboard from my AscendC output directory output/MyOp/ and validate it with the quality checker.

Frequently Asked Questions about op-dashboard

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I generate an HTML dashboard for an AscendC operator?

Run gen_dashboard.py with --op-dir pointing to the operator output directory. The script auto-discovers evaluation results, profiling CSVs, kernel source, and test cases, then assembles a self-contained dashboard.html after analysis content is written.

What data sources does the AscendC operator dashboard support?

It auto-discovers evaluation_results.json or results_precision.json for precision, multi_case_report.csv or op_summary CSVs for profiling, *_op_desc.json for operator metadata, and op_kernel/op_host *_custom.cpp files for UB buffers and tiling constants.

Can I generate the dashboard before precision tests pass?

Yes. The dashboard works once compilation passes. When precision fails, it displays a FAIL case diagnostic banner and annotates performance data with warnings that results are for debugging reference only.

Does the generated dashboard require internet access?

No. The HTML is fully self-contained with no CDN dependencies, adapts to light and dark themes, and can be opened offline or sent directly to others.

Why does check_dashboard.py report FAIL on my dashboard?

Common causes include missing flow.html/steps.html/ub_viz.html fragments, analysis.md files lacking required sections, or HTML fragments containing script tags or external URLs. Run the checker to see per-item PASS/WARN/FAIL details.