Add benchmarks for reinterpret performance for both primitives and structs with padding.
#339
+96
−0
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This adds benchmarks for
reinterpretperformance, which is an important low-level primitive operation in Julia.It includes benchmarks for both reinterpret on primitives, which we found to be unexpectedly slow in 1.10 but then was improved again in JuliaLang/julia@cf34aa2.
It also includes benchmarks for the new support for reinterpreting between arbitrary padded structs as long as their packedsizes are the same. We have found opportunities to improve performance for those structs, and I'll be opening a PR on julia for that. :)
These are the results for this new benchmark on
julia +nightlytoday -- note that many of these are inms, rather thanμs:EDIT: This benchmark is used in the upstream Julia PR here: JuliaLang/julia#60415