mirror of
https://github.com/slsdetectorgroup/aare.git
synced 2026-10-31 18:11:30 +01:00
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>
21 lines
850 B
Markdown
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.
|