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
Read SoA scalars and Eigen columns from a ROOT streamer #39532
Conversation
type bugfix |
enable gpu |
please test |
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-39532/32305
|
A new Pull Request was created by @fwyzard (Andrea Bocci) for master. It involves the following packages:
@makortel, @fwyzard can you please review it and eventually sign? Thanks. cms-bot commands are listed here |
-1 Failed Tests: UnitTests Unit TestsI found errors in the following unit tests: ---> test testHeterogeneousCoreAlpakaTestWriteRead had ERRORS Comparison Summary@slava77 comparisons for the following workflows were not done due to missing matrix map:
Summary:
GPU Comparison SummarySummary:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The first commit (e5736f4) is already part of the master
branch. Can it be dropped?
, \ | ||
/* Column */ \ | ||
memcpy(BOOST_PP_CAT(NAME, _), onfile.BOOST_PP_CAT(NAME, _), sizeof(CPP_TYPE) * onfile.elements_); \ | ||
, \ | ||
/* Eigen column */ \ | ||
/* TODO: implement*/ \ | ||
std::cerr << "Warning: reading an Eigen column from a ROOT file is not implemented" << std::endl; \ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Would an exception make sense? (or does it really matter for now?)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@ericcano should have an implementation of it later today, I'll add it here and update the PR description.
The error is
and I've had it locally as well. Looks like SCRAM is not checking out and recompiling all the dependencies (or we failed to declare some of them ?). |
848368c
to
6fb6335
Compare
please test with cms-sw/cmsdist#8107 |
+1 Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-474471/27868/summary.html Comparison Summary@slava77 comparisons for the following workflows were not done due to missing matrix map:
Summary:
GPU Comparison SummarySummary:
|
@makortel do you have any other concerns, or is it ok to merge this ? |
That's the trick I found (by chance) so that all future PRs based on this same branch will merge without conflicts in both 12.5.x and 12.6.x. |
+heterogeneous |
This pull request is fully signed and it will be integrated in one of the next master IBs (tests are also fine). 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) |
@fwyzard you tested this lately together with cms-sw/cmsdist#8107, but neither here nor in the description of that cmsdist PR is ever written that the two havo to be merged together: please confirm that this PR can be merged independently from cms-sw/cmsdist#8107, or provide some different direction otherwise. |
@perrotta, technically this and 8107 are independent. 8107 is a fix that can go in by itself. This PR implements changes that are independent from 8107, and (also) makes the unit test report any failures instead of ignoring them. Some random failures are already happening, but without this PR they are ignored: 8107 fixes them. |
+1 |
@fwyzard perhaps you already noticed it, but after the merge of this PR the unit test in HeterogeneousCore/AlpakaTest/test/testHeterogeneousCoreAlpakaTestWriteRead.sh started failing, see e.g. https://cmssdt.cern.ch/SDT/cgi-bin/logreader/el8_amd64_gcc10/CMSSW_12_6_X_2022-10-01-1100/unitTestLogs/HeterogeneousCore/AlpakaTest#/ |
Yes - the fix is cms-sw/cmsdist#8107 . |
What I meant earlier is that the underlying tests has been failing for a while (and cms-sw/cmsdist#8107 is the fix). However, the failures were going unreported due to an annoying interplay between how scram run the tests and how bash inherits an environment from a parent process running within a conditional statement. This PR fixes the scripts to actually report the errors - so the pre-existing failures are now apparent. |
PR description:
Fix the ROOT streamers for the template-based SoA to read back the scalar variables, and to write and read back Eigen objects.
Update the
TestAlpakaAnalyzer
and CUDATestPortableAnalyzer
to check that scalars and matrices are read back correctly, and print a more verbose description of the SoA being read.Update the test scripts so that the unit tests actually fail (exit with a non-zero value) if any of the cmsRun jobs fails.
PR validation:
The improved unit tests pass.
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:
To be backported to CMSSW_12_5_X for the Alpaka migration.