Skip to content

Add benchmarking with CI job - #9

Open
vvish wants to merge 1 commit into
xtensor-stack:mainfrom
vvish:vvish/feat/benchmark-ci
Open

vvish wants to merge 1 commit into
xtensor-stack:mainfrom
vvish:vvish/feat/benchmark-ci

Conversation

@vvish

@vvish vvish commented Sep 14, 2026

Copy link
Copy Markdown
Contributor

The PR corresponds to this PR conversation: #5 (comment)

The PR adds:

  • benchmarks for the xsimd-based vs std-based algorithms
  • CI job that runs the benchmarks in the platform matrix and reports the results in job summary using standard benchmark comparison tool (e.g.)

@vvish
vvish force-pushed the vvish/feat/benchmark-ci branch from 61ce275 to 6dd1af6 Compare September 14, 2026 13:01
@vvish
vvish marked this pull request as ready for review September 15, 2026 17:15
@AntoinePrv

Copy link
Copy Markdown
Contributor

Hey @vvish thanks for the PR. I'm also looking into adding benchmarks in #8 where I also refactor to share some factories between test and benchmarking.

There I have added a map_unary (yet do do binary / n-ary) that significantly overlap with transform.
The idea is for it to be more generic and free from the STL apis constraints (leverage alignment knowledge, purity, also no macros), handle more complex functions (e.g. xsimd::widen) and different type widths.
It seems to perform a bit better on small and medium runs. Ideally transform would become a special case of it.
Curious to know what you think.

As for benchmarking in CI, the setup suggested here will be extremely noisy. We plan to add the same approach as xtensor with namespace+codspeed.

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.

2 participants