Navigation Menu

Skip to content
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

ElectronNHitSeedProducer modernization #29512

Merged
merged 3 commits into from May 5, 2020
Merged

ElectronNHitSeedProducer modernization #29512

merged 3 commits into from May 5, 2020

Conversation

guitargeek
Copy link
Contributor

PR description:

In #29304 it was discussed that the ElectronSeedProducer should be replaced at some point with the ElectronNHitSeedProducer which is already used at HLT. That's indeed a good idea, but it would be good if we update the ElectronNHitSeedProducer first to fulfil some good practices for producer plugins, which this PR implements:

  1. Usage of EDPutToken
  2. Usage of ESGetToken instead of caching the event setup objects manually (the framework does this efficiently for us)
  3. Move from stream to global module to enforce good design practice (like const functions and immutable algorithm classes)

In particular, the move to a global module was achieved by splitting the TrajSeedMatcher class up in a const configuration structure which is initialized in the constructor of the plugin, and an actual algorithm class which is instantiated for each event using a reference to the configuration. This pattern is already used in some other plugins (like the GsfElectronAlgo) and I think it makes sense.

PR validation:

CMSSW compiles and local matrix tests pass.

if this PR is a backport please specify the original PR and why you need to backport that PR:

No backport intended.

@cmsbuild
Copy link
Contributor

The code-checks are being triggered in jenkins.

@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-29512/14762

  • This PR adds an extra 1072KB to repository

@cmsbuild
Copy link
Contributor

A new Pull Request was created by @guitargeek (Jonas Rembser) for master.

It involves the following packages:

HLTrigger/Configuration
RecoEgamma/EgammaElectronAlgos
RecoEgamma/EgammaElectronProducers

@perrotta, @cmsbuild, @fwyzard, @Martin-Grunewald, @slava77 can you please review it and eventually sign? Thanks.
@Sam-Harper, @makortel, @jainshilpi, @rovere, @lgray, @Martin-Grunewald, @sobhatta, @lecriste, @afiqaize, @varuns23 this is something you requested to watch as well.
@silviodonato, @dpiparo you are the release manager for this.

cms-bot commands are listed here

@slava77
Copy link
Contributor

slava77 commented Apr 17, 2020

@cmsbuild please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Apr 17, 2020

The tests are being triggered in jenkins.
https://cmssdt.cern.ch/jenkins/job/ib-run-pr-tests/5757/console Started: 2020/04/17 23:44

@cmsbuild
Copy link
Contributor

-1

Tested at: 8c71f7d

CMSSW: CMSSW_11_1_X_2020-04-17-1100
SCRAM_ARCH: slc7_amd64_gcc820
You can see the results of the tests here:
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-fd74d6/5757/summary.html

I found follow errors while testing this PR

Failed tests: RelVals AddOn

  • RelVals:

When I ran the RelVals I found an error in the following workflows:
11634.0 step2

runTheMatrix-results/11634.0_TTbar_14TeV+TTbar_14TeV_TuneCP5_2021_GenSimFull+DigiFull_2021+RecoFull_2021+HARVESTFull_2021+ALCAFull_2021/step2_TTbar_14TeV+TTbar_14TeV_TuneCP5_2021_GenSimFull+DigiFull_2021+RecoFull_2021+HARVESTFull_2021+ALCAFull_2021.log

12434.0 step2
runTheMatrix-results/12434.0_TTbar_14TeV+TTbar_14TeV_TuneCP5_2023_GenSimFull+DigiFull_2023+RecoFull_2023+HARVESTFull_2023+ALCAFull_2023/step2_TTbar_14TeV+TTbar_14TeV_TuneCP5_2023_GenSimFull+DigiFull_2023+RecoFull_2023+HARVESTFull_2023+ALCAFull_2023.log

  • AddOn:

I found errors in the following addon tests:

cmsRun /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_11_1_X_2020-04-17-1100/src/HLTrigger/Configuration/test/OnLine_HLT_2018.py realData=False globalTag=@ inputFiles=@ : FAILED - time: date Sat Apr 18 00:46:06 2020-date Sat Apr 18 00:33:29 2020 s - exit: 16640
cmsDriver.py RelVal -s HLT:2018,RAW2DIGI,L1Reco,RECO --mc --scenario=pp -n 10 --conditions auto:run2_mc_2018 --relval 9000,50 --datatier "RAW-HLT-RECO" --eventcontent FEVTDEBUGHLT --customise=HLTrigger/Configuration/CustomConfigs.L1THLT --era Run2_2018 --processName=HLTRECO --filein file:RelVal_Raw_2018_MC.root --fileout file:RelVal_Raw_2018_MC_HLT_RECO.root : FAILED - time: date Sat Apr 18 00:46:06 2020-date Sat Apr 18 00:33:29 2020 s - exit: 16640
cmsRun /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_11_1_X_2020-04-17-1100/src/HLTrigger/Configuration/test/OnLine_HLT_GRun.py realData=False globalTag=@ inputFiles=@ : FAILED - time: date Sat Apr 18 00:45:54 2020-date Sat Apr 18 00:33:38 2020 s - exit: 16640
cmsDriver.py RelVal -s HLT:GRun,RAW2DIGI,L1Reco,RECO --mc --scenario=pp -n 10 --conditions auto:run3_mc_GRun --relval 9000,50 --datatier "RAW-HLT-RECO" --eventcontent FEVTDEBUGHLT --customise=HLTrigger/Configuration/CustomConfigs.L1THLT --era Run3 --processName=HLTRECO --filein file:RelVal_Raw_GRun_MC.root --fileout file:RelVal_Raw_GRun_MC_HLT_RECO.root : FAILED - time: date Sat Apr 18 00:45:54 2020-date Sat Apr 18 00:33:38 2020 s - exit: 16640
cmsRun /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_11_1_X_2020-04-17-1100/src/HLTrigger/Configuration/test/OnLine_HLT_2018.py realData=True globalTag=@ inputFiles=@ : FAILED - time: date Sat Apr 18 00:44:29 2020-date Sat Apr 18 00:33:43 2020 s - exit: 16640
cmsDriver.py RelVal -s HLT:2018,RAW2DIGI,L1Reco,RECO --data --scenario=pp -n 10 --conditions auto:run2_data_2018 --relval 9000,50 --datatier "RAW-HLT-RECO" --eventcontent FEVTDEBUGHLT --customise=HLTrigger/Configuration/CustomConfigs.L1THLT --era Run2_2018 --processName=HLTRECO --filein file:RelVal_Raw_2018_DATA.root --fileout file:RelVal_Raw_2018_DATA_HLT_RECO.root : FAILED - time: date Sat Apr 18 00:44:29 2020-date Sat Apr 18 00:33:43 2020 s - exit: 16640
cmsRun /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_11_1_X_2020-04-17-1100/src/HLTrigger/Configuration/test/OnLine_HLT_HIon.py realData=False globalTag=@ inputFiles=@ : FAILED - time: date Sat Apr 18 00:42:38 2020-date Sat Apr 18 00:33:58 2020 s - exit: 16640
cmsDriver.py RelVal -s HLT:HIon,RAW2DIGI,L1Reco,RECO --mc --scenario=pp -n 10 --conditions auto:run3_mc_HIon --relval 9000,50 --datatier "RAW-HLT-RECO" --eventcontent FEVTDEBUGHLT --customise=HLTrigger/Configuration/CustomConfigs.L1THLT --era Run3_pp_on_PbPb --processName=HLTRECO --filein file:RelVal_Raw_HIon_MC.root --fileout file:RelVal_Raw_HIon_MC_HLT_RECO.root : FAILED - time: date Sat Apr 18 00:42:38 2020-date Sat Apr 18 00:33:58 2020 s - exit: 16640
cmsRun /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_11_1_X_2020-04-17-1100/src/HLTrigger/Configuration/test/OnLine_HLT_GRun.py realData=True globalTag=@ inputFiles=@ : FAILED - time: date Sat Apr 18 00:47:21 2020-date Sat Apr 18 00:37:49 2020 s - exit: 16640
cmsDriver.py RelVal -s HLT:GRun,RAW2DIGI,L1Reco,RECO --data --scenario=pp -n 10 --conditions auto:run3_data_GRun --relval 9000,50 --datatier "RAW-HLT-RECO" --eventcontent FEVTDEBUGHLT --customise=HLTrigger/Configuration/CustomConfigs.L1THLT --era Run3 --processName=HLTRECO --filein file:RelVal_Raw_GRun_DATA.root --fileout file:RelVal_Raw_GRun_DATA_HLT_RECO.root : FAILED - time: date Sat Apr 18 00:47:21 2020-date Sat Apr 18 00:37:49 2020 s - exit: 16640

@cmsbuild
Copy link
Contributor

Comparison not run due to runTheMatrix errors (RelVals and Igprof tests were also skipped)

@Martin-Grunewald
Copy link
Contributor

-1
No direct modifications of HLT menu files, as they are generated dumps.
Instead, put the customisation all plugin instances into HLTrigger/Configuration/python/customizeHLTforCMSSW.py

@guitargeek
Copy link
Contributor Author

Thanks for the explanations and instructions, I was just about to ask!

@cmsbuild
Copy link
Contributor

+1
Tested at: d28cda9
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-fd74d6/5869/summary.html
CMSSW: CMSSW_11_1_X_2020-04-27-1100
SCRAM_ARCH: slc7_amd64_gcc820

@cmsbuild
Copy link
Contributor

Comparison job queued.

@cmsbuild
Copy link
Contributor

Comparison is ready
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-fd74d6/5869/summary.html

Comparison Summary:

  • No significant changes to the logs found
  • Reco comparison results: 4 differences found in the comparisons
  • DQMHistoTests: Total files compared: 34
  • DQMHistoTests: Total histograms compared: 2696435
  • DQMHistoTests: Total failures: 25
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 2696091
  • DQMHistoTests: Total skipped: 319
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 33 files compared)
  • Checked 147 log files, 16 edm output root files, 34 DQM output files

@perrotta
Copy link
Contributor

perrotta commented May 4, 2020

+1

  • Modernization, simplification and switch to being a global module of the ElectronNHitSeedProducer is implemented according to what specified in the PR description, including the bug fix cited in ElectronNHitSeedProducer modernization #29512 (comment) (ininfluent in all current workflows and HLT menus because the enableHitSkipping steering parameter is never modified from the default false value as of now)
  • Jenkins tests pass and show no difference in the reco or in the DQM outputs (DQM would account for the possible differences in the HLT outputs)

@Martin-Grunewald
Copy link
Contributor

+1

@cmsbuild
Copy link
Contributor

cmsbuild commented May 5, 2020

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. @silviodonato, @dpiparo (and backports should be raised in the release meeting by the corresponding L2)

@silviodonato
Copy link
Contributor

+1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants