Add OddEvenSort to SVE microbenchmark#5046
Conversation
|
I have a general concern over all the SVE specific microbenchmarks being added. Benchmarks are fairly expensive in terms of runtime and even a small number of them can have significant cost to CI and our tracking. We don't really have any platform specific intrinsic benchmarks correspondingly (i.e. you don't see explicit benchmarks covering Rather instead we typically have our normal benchmarks like for I would expect here that we aren't directly testing SVE either. But rather would be testing with SVE enabled and comparing that against a run with it disabled. This will require a bit more work in the JIT to enable first, but significantly reduces cost and gives better metrics as to the benefit customers will see. CC. @DrewScoggins |
There was a problem hiding this comment.
Pull request overview
Adds a new SVE-focused microbenchmark (OddEvenSort) to measure scalar, AdvSimd (Vector128), and SVE implementations of odd-even sort on Arm64/SVE-capable platforms, following the existing SveBenchmarks patterns.
Changes:
- Introduces
OddEvenSortbenchmark class with four benchmark methods:Scalar,Vector128OddEvenSort,SveOddEvenSort, andSveTail. - Adds per-benchmark SVE support filtering via a local
ManualConfig+SimpleFilter. - Adds GlobalSetup input generation and GlobalCleanup verification against the scalar reference implementation.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
You can also share your feedback on Copilot code review. Take the survey.
|
@ylpoonlg I added copilot on this and a handful of other SVE related PRs. I have taken a look at a handful of the comments left by it and most of them seem legit, but I need more time to dig in and understand the legitimacy. If you can take a look at the comments and either commit the suggestions or comment on them, I will approve and merge the PRs. Otherwise, I am hoping to dive deeper into the comments over the next week or two. Here is the full list of PRs I added copilot to:
|
LoopedBard3
left a comment
There was a problem hiding this comment.
LGTM. Thanks for the tests!
Performance Results
Run on Neoverse-V2
cc @dotnet/arm64-contrib @SwapnilGaikwad @LoopedBard3