Files
Ferjaoui d3a5f842bf
Build on RHEL8 / build (push) Successful in 4m17s
Build on RHEL9 / build (push) Successful in 4m33s
Run tests using data on local RHEL8 / build (push) Failing after 4m54s
perf: unprofiled ClusterFinderCUDA throughput script and A100 results
throughput.py measures wall-clock FPS without nsys, for the copy-out
(find_clusters_batched) and zero-copy (BatchView) paths, at 3x3 to 9x9
and 1 and 4 streams. On the A100, zero-copy with 4 streams reaches
94-102 % of the bound predicted by the nsys probes.
2026-10-29 14:21:12 +01:00
..

A100 probe results (Merlin7)

NVIDIA A100 on Merlin7 (gmerlin7, a100 partitions), CUDA 12.9.1, gcc 13.3.0, nsys 2025.1.3. CUDA event trace is off (--cuda-event-trace=false) unless the folder name says evtrace-on. Driver and git state of each run are in its env.json.

folder precision copy-out rounding frames / batch configs
2026-10-28_f32_lround_evtrace-on f32 lround 20 000 / 2000 3x3, 9x9 at s1, s4
2026-10-28_f32_lround f32 lround 20 000 / 2000 3x3, 9x9 at s1, s4
2026-10-28_f64_lround f64 lround 20 000 / 2000 3x3, 9x9 at s1, s4
2026-10-29_f32_round_b2000_f20K f32 round 20 000 / 2000 3x3 to 9x9 at s1, s4, s8
2026-10-29_f32_round_b3000_f50K f32 round 50 000 / 3000 3x3 to 9x9 at s1, s4, s8
2026-10-29_f32_round_throughput f32 round 20 000 / 2000 unprofiled wall clock (throughput.py), 3x3 to 9x9 at s1, s4
2026-10-29_f32_round_throughput_5x5 f32 round 20 000 / 2000 5x5 rerun, 5 passes (first run disturbed by other jobs on the node)

lround(float) is emulated in software on the device and made the f32 9x9 kernel 1.8x slower than f64. It was replaced by round in 104e284. The 2026-10-28 runs used local, uncommitted edits to clusterfinder_kernel.cuh (the precision aliases), so env.json shows git_dirty: true and does not record the rounding.

Event trace on and off give the same kernel times; with it on, the idle gaps between steps are 10-16 % wider.