CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

fla-ascend-performance

Profile and optimize FLA Triton-Ascend kernels using NPU traces, with guidance for UB capacity, memory movement, launch limits, and numerical correctness.

Quality

84%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

92%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

An exemplary lean, dense workflow that never explains what Claude already knows and defers all detail to purpose-labeled one-level-deep references. The only notable gap is that the validation step lacks the concrete test command that would make every phase executable.

Suggestions

Add the concrete command for running the affected operator/layer tests (and the --gate-k iteration form) so the validation gate is executable rather than descriptive.

Optionally show a one-line example of the analyzer invocation (scripts/analyze_profile.py <trace-dir>) beside the collector command, mirroring the pattern already used for collection.

DimensionReasoningScore

Conciseness

The 47-line body is lean and assumes competence: no generic concepts are explained, every sentence carries operational information ('One run collects one aic_metrics set', 'Omit num_warps and num_stages from Ascend launches'), and non-obvious domain knowledge (grid limits, UB footprint, NaN poisoning) is exactly what Claude would not already know. Matches anchor 5; there is nothing to trim.

5 / 5

Actionability

A copy-paste-ready profiler command with concrete flags, specific artifact names (op_statistic.csv, kernel_details.csv), and a named utility (fla.utils.ascend_ub_manager) make most guidance executable. A minor gap keeps it below anchor 5: the validation step ('Run kernel comparisons and the affected operator/layer tests') never shows the actual test invocation, leaving the final gate as a pointer rather than a command.

4 / 5

Workflow Clarity

A clear five-step sequence (baseline → collect → diagnose → optimize → validate) with explicit checkpoints: baseline latency recorded before changes, 'Change one relevant factor, then measure whether the expected duration and pipe metrics moved', the full correctness gate required before reporting a speedup, and an explicit feedback loop ('If the expected metrics do not change, revisit the diagnosis before adding another optimization'). Matches anchor 5.

5 / 5

Progressive Disclosure

The body is a concise overview with every deep detail pushed to one-level-deep, clearly-signaled references, and all six bundle files (reference.md, TRAPS.md, g-contiguous-loading.md, cases.md, analyze_profile.py, profile_npu.py) are referenced with a stated purpose and use condition (e.g., TRAPS.md 'when changing DMA paths, pointer arithmetic, or reused tl.dot operands'). Anchor links resolve to real headings (reference.md#collection-and-analysis, #diagnosis). Matches anchor 5.

5 / 5

Total

19

/

20

Passed

Description

70%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A specific, distinctive description that clearly states what the skill does in a well-defined niche. Its main weakness is the complete absence of a 'Use when...' trigger clause, which caps completeness and limits natural-trigger discoverability.

Suggestions

Append an explicit trigger clause, e.g. 'Use when profiling or optimizing Triton-Ascend kernels on Ascend NPUs, investigating slow NPU kernels, or interpreting aic_metrics/NPU traces.'

Add one or two natural-language synonyms users would say ('slow kernel', 'NPU performance', 'benchmark on Ascend') to broaden trigger coverage.

Consider naming the concrete outputs (aic_metrics sets, op_statistic/kernel_details analysis) to sharpen the what-clause without adding length.

DimensionReasoningScore

Specificity

Names concrete actions ('Profile and optimize') in a specific domain ('FLA Triton-Ascend kernels using NPU traces') plus concrete guidance areas ('UB capacity, memory movement, launch limits, and numerical correctness'). It falls just short of anchor 5 because the guidance topics are named rather than enumerated as multiple distinct concrete actions, and it sits clearly above anchor 3's '1-2 concrete actions, but not comprehensive'.

4 / 5

Completeness

The 'what' is clear and specific (profile and optimize FLA Triton-Ascend kernels with NPU traces), but there is no 'Use when...' clause or equivalent explicit trigger guidance, which per the judging guidelines caps completeness at 3. It is not a 2 because the 'what' is concrete, and not a 4 because 'when' is entirely absent rather than just implicit.

3 / 5

Trigger Term Quality

Good natural keyword coverage for the domain — 'profile', 'optimize', 'kernel', 'NPU', 'traces', 'Triton', 'Ascend' — which are the phrases a user in this niche would say. A few natural variations are missing ('performance tuning', 'slow kernel', 'benchmark'), keeping it below anchor 5's comprehensive synonym coverage.

4 / 5

Distinctiveness Conflict Risk

A clear niche with distinct triggers — FLA Triton-Ascend kernels, NPU traces, UB capacity — that no generic performance or profiling skill would claim, so conflict risk is minimal. Matches anchor 5 exactly.

5 / 5

Total

16

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

relative_links

Relative link issues: 2 suspicious

Warning

Total

15

/

16

Passed

Repository

fla-org/flash-linear-attention

Path

.agents/skills/fla-ascend-performance/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.