Github action with Codspeed benchmarking#860
Conversation
|
can you provide a link to the dashboard generated by your fork so that we can see how it looks like? |
|
FFT backend: Numbers are advisory: GitHub-hosted runners have variable hardware. Treat <1.10× as noise. CPU and compiler configurationCPU name: Arch: Core count: ISA extensions: Compiler version: Compiler flags: perftest commands |
ahbarnett
left a comment
There was a problem hiding this comment.
If you describe the motivation a bit more it will help future devs.
| @@ -0,0 +1,152 @@ | |||
| #include <complex> | |||
There was a problem hiding this comment.
Add comments for the purpose this test - cannot be large scale since run on valgrind, etc. (100x slower emulation, thus choose N,M ~ 1e3 .... ?). Motivate that these tests are for codspeed, for hot loop regressions, etc.
| [)](https://pypi.org/project/finufft) | ||
| [)](https://pypi.org/project/cufinufft) | ||
| [](https://www.star-history.com/#flatironinstitute/finufft&Date) | ||
| [](https://codspeed.io/flatironinstitute/finufft) |
There was a problem hiding this comment.
check badge URL not POET ?
Address review comments on the CodSpeed regression benchmark (PR flatironinstitute#860): - codspeed_benchmark.cpp: add a header explaining this runs on an instrumented/simulated CPU (~100x slower), so sizes are kept small. Replace the spread-bound 1e7-point configs with a density~1 (M~N) matrix of dims{1,2,3} x types{1,2,3} x precision{float,double} = 18 benchmarks at N~M~1e5. Drop the sigma sweep and set opts.upsampfac=0 (auto-select from tol), the realistic default path. Use int64_t loop counters in the data-fill loops. - README.md: fix the CodSpeed badge URL (drop the bogus repository= param the endpoint ignores; repo belongs only in the link target). - codspeed.yml: document what the job builds and runs.
Adds a new pipeline with the codspeed benchmark to github actions. Codspeed is a platform that evaluate the performance of programs on a simulated CPU and plots the results on a dashboard. This is an example dashboard that Codspeed generated for my fork of FINUFFT: https://codspeed.io/magisterbrown/finufft
TODO: Before merging this pr, a reviewer should connect codspeed to the repository by following the guide: https://codspeed.io/docs