-
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
option to use deterministic event-based seed in SmearedJetProducer (for MT) #20240
option to use deterministic event-based seed in SmearedJetProducer (for MT) #20240
Conversation
The code-checks are being triggered in jenkins. |
A new Pull Request was created by @kpedro88 (Kevin Pedro) for master. It involves the following packages: PhysicsTools/PatUtils @perrotta, @cmsbuild, @monttj, @slava77 can you please review it and eventually sign? Thanks. cms-bot commands are listed here |
please test |
The tests are being triggered in jenkins. |
+code-checks |
+1 The following merge commits were also included on top of IB + this PR after doing git cms-merge-topic: |
Comparison job queued. |
Comparison is ready Comparison Summary:
|
@kpedro88 |
@slava77 wasn't sure, that's why I asked the jet experts in the PR description - I can just make a backport now if you think it's worthwhile |
Also, it was pointed out to me that this change solves a similar problem with reproducibility in CRAB if a job is split differently each time it's run, so maybe it should be enabled by default. I would still like to hear from jet experts on this (@rappoccio, @blinkseb, @zdemirag, ...). |
@slava77 is the latest commit okay? Let me know and then I'll update the backports |
The code-checks are being triggered in jenkins. |
+code-checks |
yes, it covers the concerns mentioned so far. |
@cmsbuild please test |
The tests are being triggered in jenkins. |
+1 The following merge commits were also included on top of IB + this PR after doing git cms-merge-topic: |
Comparison job queued. |
Comparison is ready Comparison Summary:
|
@@ -138,6 +138,7 @@ | |||
variation = cms.int32(0), # If not specified, default to 0 | |||
|
|||
seed = cms.uint32(37428479), # If not specified, default to 37428479 | |||
useDeterministicSeed = cms.bool(True), |
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.
this does not match the PR description
Currently I have the useDeterministicSeed option disabled by default
I suppose, the description should be updated.
@slava77 updated PR description |
merge |
While upgrade my ntuple production code to use multithreading, I noticed the output jet collections differed for MC samples. I found the cause to be the use of random numbers in
SmearedPATJetProducer
. The solution is to use a deterministic seed based on the event number (thanks to @Dr15Jones for the suggestion). I followed the approach from https://github.com/cms-sw/cmssw/blob/CMSSW_9_3_0_pre4/RecoJets/JetProducers/plugins/VirtualJetProducer.cc#L272 (in a simplified manner). This resolved the regression I observed in my ntuple code when running with multiple threads.This PR will be backported to 80X. Questions for jet people (e.g. @rappoccio, @blinkseb, @zdemirag):
useDeterministicSeed
option disabled by default in thefillDescriptions()
, so users would have to activate it manually. Should I enable it by default instead? This would change the default output. Edit: it was changed to be enabled by default.