ck-profilelisted
Install: claude install-skill steven112163/dotharness
# CK profiling (ck-profile)
Six independent modes; the user picks one or several:
- **static** — compile-time only, no GPU run. Builds the target with
`-Rpass-analysis=kernel-resource-usage` and parses the remarks for register/
occupancy/spill/scratch/LDS. Answers "what each kernel reserves and its
occupancy ceiling."
- **dynamic** — runs the target under rocprofv3 (kernel trace + PMC multipass),
aggregates over runs/variants, and classifies the bottleneck. Answers "what
actually happened at runtime and what is the limiter."
- **trace** — rocprofv3 `--sys-trace` → an offline **HTML timeline** (host +
device lanes, opens in Live Preview) plus a perfetto `.pftrace` (+ sys-trace
CSVs); optional best-effort PC sampling. Answers "what is the dispatch timeline
/ where on the host-GPU timeline does time go."
- **cfg** — extracts the amdgcn code object and disassembles it (`llvm-objdump`),
emitting one per-kernel ISA control-flow graph as Graphviz `.dot`. Answers
"what does each kernel's basic-block / branch structure look like."
- **depgraph** — two dependency graphs as `.dot`: a logical data-dependency DAG
(workspace producer→consumer, from the launch source) and a runtime dispatch
graph (from a kernel trace). Answers "how do the kernels depend on / follow
each other."
- **compute** — `rocprof-compute` (ROCm Compute Profiler): roofline +
speed-of-light + memory-hierarchy panels. Answers "where in the
microarchitecture is the kernel limited." Requires