Skip to content

Continuous benchmarking with google benchmark and bencher.dev - #596

Open
biddisco wants to merge 3 commits into
masterfrom
continuous-benchmarking
Open

biddisco wants to merge 3 commits into
masterfrom
continuous-benchmarking

Conversation

@biddisco

Copy link
Copy Markdown
Collaborator

Summary

Introduces continuous benchmarking for IPPL using Google Benchmark and bencher.dev.

What's added

  • IPPL_ENABLE_BENCHMARK CMake option that fetches Google Benchmark v1.9.4 via FetchContent.
  • add_ippl_benchmark() CMake helper with REPORT_TIMERS/IGNORE_TIMERS support and a generated compile-time timer-whitelist header (<name>_timers.h).
  • src/Utility/BenchmarkMetrics.h — bridges existing IpplTimings measurements to bencher.dev's Benchmark Metric Format (BMF) JSON.
  • LandauDampingBench — first real benchmark in demos/alpine/, measuring LandauDampingManager::advance() per Google Benchmark iteration.
  • CI jobs for OpenMP (Eiger), CUDA (Daint GH200), and ROCm (Beverin MI300) under ci/cscs/benchmark/benchmark.yml.
  • ci/scripts/install_bencher.sh — installs the bencher.dev CLI in CI.

@biddisco
biddisco force-pushed the continuous-benchmarking branch 5 times, most recently from e097030 to 62b353a Compare August 30, 2026 20:21
@biddisco

biddisco commented Aug 30, 2026

Copy link
Copy Markdown
Collaborator Author

cscs-ci run cscs-ci-gh200, cscs-ci-openmp, cscs-ci-mi300

@biddisco
biddisco force-pushed the continuous-benchmarking branch from 62b353a to fba26a8 Compare August 31, 2026 08:05
@aaadelmann aaadelmann added the enhancement New feature or request label Aug 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants