Commit Graph
6 Commits
Author SHA1 Message Date
Ferjaoui d3a5f842bf perf: unprofiled ClusterFinderCUDA throughput script and A100 results
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
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
Ferjaoui 3d79886178 perf: A100 probe results; disable nsys CUDA event trace when supported
Build on RHEL8 / build (push) Successful in 3m51s
Build on RHEL9 / build (push) Successful in 4m6s
Run tests using data on local RHEL8 / build (push) Failing after 4m51s
- common.nsys_profile_flags(): shared nsys profile flags, adding
  --cuda-event-trace=false on nsys 2025.1+ (on by default there, it widens
  the host gaps between steps; kernel times are unchanged). nsys 2024.5
  rejects the flag, so it is detected from the help text.
- cf/run_probes.py: 3x3, 5x5, 7x7, 9x9 at 1, 4 and 8 streams.
- cf/results/A100/: Merlin7 A100 runs, f32 and f64 with lround, and f32
  with round (104e284) at 20k/2000 and 50k/3000. README lists them.
2026-10-29 12:04:55 +01:00
kferjaouiandClaude Opus 5.5 b7b786f423 perf: move ClusterFinderCUDA probes into perf/cf/
Build on RHEL8 / build (push) Successful in 4m1s
Build on RHEL9 / build (push) Successful in 4m15s
Run tests using data on local RHEL8 / build (push) Failing after 4m56s
Make room for probes of other CUDA classes. common.py and gpu_span.py
stay in perf/ and become shared; the cluster-finder driver, traced
process, README and results move to perf/cf/.

- common.py: assert_build_fresh() takes the header list, capture_env()
  takes extra fields, results_dir() takes the probe folder.
- cf/cf_common.py: pedestal frames, n_sigma, rebuild-guard headers,
  DEVICE_PED_TYPE and the <date>_<f32|f64> results naming.
- gpu_span.py: optional kernel-name filter; tolerates an engine with no
  ops. Output without a filter is unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 12:22:18 +01:00
kferjaoui e969478241 Move cluster finder headers and tests into cf/ subfolders
Build on RHEL8 / build (push) Successful in 3m55s
Build on RHEL9 / build (push) Successful in 4m6s
Run tests using data on local RHEL8 / build (push) Failing after 4m42s
2026-10-14 14:31:10 +02:00
kferjaoui 931a8b52d6 perf: updated nsys kernel probe tests 2026-10-06 10:31:44 +02:00
kferjaoui da3f563872 Add nsys probe scripts for ClusterFinderCUDA
Per-engine GPU time, duty cycle and roofline on the campaign configs
(3x3 cap 3000, 9x9 cap 1700, 1 and 4 streams, 20k frames).
2026-09-10 14:09:20 +02:00