Skip to content

Add discrete-domain benchmarks and benchmark CI workflow - #28

Merged
tobydriscoll merged 2 commits into
mainfrom
benchmark-discrete-and-ci
Jun 16, 2026
Merged

Add discrete-domain benchmarks and benchmark CI workflow#28
tobydriscoll merged 2 commits into
mainfrom
benchmark-discrete-and-ci

Conversation

@tobydriscoll

Copy link
Copy Markdown
Member

Summary

  • Add an approximate_discrete benchmark group exercising Barycentric (AAA) and Thiele construction over a 1001-point log-clustered discrete set (matching the test/discrete.jl point distribution), across three difficulty profiles: steep tanh, near-real branch-point abs, and near-pole sin(1/(1.05-x)).
  • Add a GitHub Actions workflow (.github/workflows/Benchmark.yml) that runs AirspeedVelocity on PRs, comparing the PR head against the default branch and posting/updating a ratio table comment (plots uploaded as an artifact).

Notes

  • The workflow uses the pull_request trigger, so it will not post comments on PRs from forks (read-only token). Fork-PR commenting would require pull_request_target, which runs untrusted code with a write token — deliberately avoided.
  • The workflow only takes effect from main, so it does not run on this PR; it activates on the next PR after merge.

🤖 Generated with Claude Code

tobydriscoll and others added 2 commits June 16, 2026 14:46
Add an approximate_discrete group exercising Barycentric and Thiele
construction over a log-clustered discrete point set, and a GitHub
Actions workflow that runs AirspeedVelocity on PRs to compare against
the default branch.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@codecov

codecov Bot commented Jun 16, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@github-actions

Copy link
Copy Markdown
Contributor

Benchmark Results

Ratios above 1 mean this PR is slower than main.

main 42ce61f... main / 42ce61f...
approximate/aaa/abs_circle 0.0469 ± 0.002 s 0.0463 ± 0.0019 s 1.01 ± 0.061
approximate/aaa/exp_interval 0.171 ± 0.029 ms 0.18 ± 0.033 ms 0.95 ± 0.24
approximate/aaa/tanh_steep 1.79 ± 0.044 ms 1.83 ± 0.055 ms 0.98 ± 0.038
approximate/thiele/abs_circle 13.4 ± 0.1 ms 13.4 ± 0.1 ms 1 ± 0.011
approximate/thiele/exp_interval 0.325 ± 0.019 ms 0.326 ± 0.019 ms 1 ± 0.083
approximate/thiele/tanh_steep 1.14 ± 0.021 ms 1.14 ± 0.023 ms 1 ± 0.028
approximate_discrete/aaa/abs_shift 4.09 ± 0.08 ms 4.12 ± 0.062 ms 0.994 ± 0.025
approximate_discrete/aaa/sin_recip 1.39 ± 0.031 ms 1.4 ± 0.03 ms 0.994 ± 0.031
approximate_discrete/aaa/tanh_steep 12.1 ± 0.68 ms 12.1 ± 0.59 ms 0.998 ± 0.074
approximate_discrete/thiele/abs_shift 3.18 ± 0.11 ms 3.2 ± 0.52 ms 0.993 ± 0.17
approximate_discrete/thiele/sin_recip 1.94 ± 0.041 ms 1.96 ± 0.032 ms 0.991 ± 0.026
approximate_discrete/thiele/tanh_steep 8.1 ± 0.78 ms 8.34 ± 0.56 ms 0.971 ± 0.11
evaluate/bary_vector 0.143 ± 0.0073 ms 0.146 ± 0.0073 ms 0.979 ± 0.07
evaluate/thiele_vector 0.138 ± 0.0098 ms 0.138 ± 0.0097 ms 0.998 ± 0.1
poles/thiele 0.423 ± 0.019 ms 0.421 ± 0.015 ms 1.01 ± 0.057
time_to_load 0.907 ± 0.00075 s 0.911 ± 0.0057 s 0.996 ± 0.0063

Benchmark Plots

Plots have been uploaded as an artifact to this workflow run
("Actions" -> this run -> "Artifacts" at the bottom).

@tobydriscoll
tobydriscoll merged commit 44dbdf0 into main Jun 16, 2026
5 of 6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant