-
Notifications
You must be signed in to change notification settings - Fork 4.4k
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
Faster setup of EventPrincipal #28505
Conversation
The variable being moved was already being passed as a R value reference.
The map index was already a dense packed integral value, BranchListIndex.
The ProcessHistory is shared by all data products in the Event, therefore not needed by each data product. This avoids the need to set the history for each data product each time we have a new event.
The code is actually dependent on ProcessHistory and not on ProcessHistoryRegistry (which is just one particular way of getting the ProcessHistory).
The ProductProvenanceRetriever is created in the EventPrincipal's constructor and never changes. Therefore it is possible to set the value in the ProductResolvers at construction time as well.
If BranchListIndex does not change we do not update structures.
The code-checks are being triggered in jenkins. |
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-28505/12956
|
A new Pull Request was created by @Dr15Jones (Chris Jones) for master. It involves the following packages: DataFormats/Common @cmsbuild, @smuzaffar, @Dr15Jones can you please review it and eventually sign? Thanks. cms-bot commands are listed here |
please test |
The tests are being triggered in jenkins. |
-1 Tested at: 76e4096 You can see the results of the tests here: I found follow errors while testing this PR Failed tests: Build
I found compilation error when building: >> Entering Package DQMServices/FwkIO Entering library rule at src/DQMServices/FwkIO/plugins >> Compiling edm plugin /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_11_0_X_2019-11-28-1100/src/DQMServices/FwkIO/plugins/DQMRootOutputModule.cc >> Compiling edm plugin /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_11_0_X_2019-11-28-1100/src/DQMServices/FwkIO/plugins/DQMRootSource.cc /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_11_0_X_2019-11-28-1100/src/DQMServices/FwkIO/plugins/DQMRootSource.cc: In member function 'virtual void DQMRootSource::readLuminosityBlock_(edm::LuminosityBlockPrincipal&)': /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_11_0_X_2019-11-28-1100/src/DQMServices/FwkIO/plugins/DQMRootSource.cc:615:73: error: no matching function for call to 'edm::LuminosityBlockPrincipal::fillLuminosityBlockPrincipal(edm::ProcessHistoryRegistry&)' lbCache.fillLuminosityBlockPrincipal(processHistoryRegistryForUpdate()); ^ In file included from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_11_0_X_2019-11-28-1100/src/DQMServices/FwkIO/plugins/DQMRootSource.cc:39: /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_11_0_X_2019-11-28-1100/src/FWCore/Framework/interface/LuminosityBlockPrincipal.h:43:10: note: candidate: 'void edm::LuminosityBlockPrincipal::fillLuminosityBlockPrincipal(const edm::ProcessHistory*, edm::DelayedReader*)' void fillLuminosityBlockPrincipal(ProcessHistory const* processHistory, DelayedReader* reader = nullptr); |
Comparison not run due to Build errors (RelVals and Igprof tests were also skipped) |
Call new LuminosityBlockPrincipal::fillLuminosityBlock interface.
+1 |
Comparison is ready Comparison Summary:
|
+1 |
+1 |
+1
|
+1 |
there is no real conflict with #28551 |
+1 |
merge |
PR description:
Several optimizations to make the call to fillEventPrincipal more efficient.
PR validation:
Framework unit tests pass.