-
Notifications
You must be signed in to change notification settings - Fork 4.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve the SoA accessors and optimisations [12.5.x] #40087
Conversation
Return const scalars by const reference instead of by value, which would break non-trivially copiable types.
Update the SoA tests to check the various ways of taking the address of a column, scalar, or Eigen column fields.
Remove the __builtin_assume_aligned compiler hints from the SoA fields, as it breaks the __restrict__ optimizations in nvcc.
Add support for SoA view-level indexed access of Eigen columns and enable the corresponding test.
backport #39919 |
type bugfix |
please test |
A new Pull Request was created by @fwyzard (Andrea Bocci) for CMSSW_12_5_X. It involves the following packages:
@makortel, @fwyzard can you please review it and eventually sign? Thanks. cms-bot commands are listed here
|
+heterogeneous |
This pull request is fully signed and it will be integrated in one of the next CMSSW_12_5_X IBs after it passes the integration tests and once validation in the development release cycle CMSSW_12_6_X is complete. This pull request will now be reviewed by the release team before it's merged. @perrotta, @dpiparo, @rappoccio (and backports should be raised in the release meeting by the corresponding L2) |
-1 Failed Tests: RelVals-INPUT RelVals-INPUTThe relvals timed out after 4 hours. Comparison SummarySummary:
|
+1 |
merge |
ping bot |
PR description:
These changes fix various issues with the SoA accessors:
__builtin_assume_aligned
compiler hints from the SoA fields, as it breaks the__restrict__
optimizations in nvcc;Extend the tests to check the access by (const) reference, the access to Eigen SoA columns, and the improved range checking.
PR validation:
Fixes a simple test provided by @borzari .
The updated unit test passes all checks.
If this PR is a backport please specify the original PR and why you need to backport that PR. If this PR will be backported please specify to which release cycle the backport is meant for:
Backport of #39919 to CMSSW 12.5.x to ease the migration to Alpaka.