Files
aare/python/tests/perf/README.md
T
kferjaouiandClaude Opus 5.5 e80e552497 perf: add nsys probes for PixelHistogramCUDA
perf/hist/ mirrors perf/cf/: a driver that runs each config under nsys,
the traced process, settings and a README. The fill (H2D + fill_bin_major
per frame) and the readout (bin_to_pixel_major + one D2H per values())
are reported separately. Only one chunk of frames is held in host memory
and re-queued until the requested frame count.

gpu_span.analyze() takes an optional engines subset, so the one-off
readout D2H doesn't count towards the fill window or roofline. Default
output is unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-29 14:25:32 +01:00

21 lines
850 B
Markdown

# GPU performance probes
Nsight Systems probes for the CUDA classes: per-engine GPU time per frame
(kernel, H2D, D2H), duty cycles and the roofline. One folder per class, each
with its own driver, traced process, README and `results/`:
| folder | class |
|---|---|
| [`cf/`](cf/README.md) | `ClusterFinderCUDA` |
| [`hist/`](hist/README.md) | `PixelHistogramCUDA` |
Shared by all of them:
| file | role |
|---|---|
| `common.py` | paths (`AARE_REPO`, `AARE_BUILD`, `AARE_PERF_DATA`, `NSYS`), guards (fresh build, idle GPU), `env.json` stamp, results folder |
| `gpu_span.py` | reads an nsys SQLite export: busy time, duty cycle and roofline per engine, optionally for one kernel name and a subset of engines only |
Requirements (a CUDA build of the Python extension, Nsight Systems, the
dataset, an idle GPU) are listed in each folder's README.