-
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
Herwig lhe matching fix (including multithreading fixes) #42673
Herwig lhe matching fix (including multithreading fixes) #42673
Conversation
-code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-42673/36748
Code check has found code style and quality issues which could be resolved by applying following patch(s)
|
…g events Read lhe event numbers in, if present Add HadroniserFilter to Herwig which correctly matches LHE numbers between CMSSW and herwig Add option to Herwig input fragements to use LHE numbering Change test examples to use new HadroniserFilter+ LHE numbering code style code style Call addLHEnumbers from mergeLHE.py if asked to number events and not using the DefaultLHEMerger Number events before merge (so numbers are also available to LHEReader) Include evtnum in LHEEventProduct (necesary for multithreading)
2494ca5
to
c7d31e6
Compare
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-42673/36750
|
A new Pull Request was created by @Dominic-Stafford for master. It involves the following packages:
@SiewYan, @mkirsano, @Saptaparna, @cmsbuild, @alberto-sanchez, @menglu21, @GurpreetSinghChahal can you please review it and eventually sign? Thanks. cms-bot commands are listed here |
test parameters:
|
please test |
+1 Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-94bbc7/34511/summary.html Comparison SummarySummary:
|
@@ -40,7 +40,7 @@ | |||
outputFile = cms.string('cmsgrid_final.lhe'), | |||
scriptName = cms.FileInPath('GeneratorInterface/LHEInterface/data/run_generic_tarball_cvmfs.sh'), | |||
generateConcurrently = cms.untracked.bool(True), | |||
postGenerationCommand = cms.untracked.vstring('mergeLHE.py', '-i', 'thread*/cmsgrid_final.lhe', '-o', 'cmsgrid_final.lhe') | |||
postGenerationCommand = cms.untracked.vstring('mergeLHE.py', '-n', '-i', 'thread*/cmsgrid_final.lhe', '-o', 'cmsgrid_final.lhe') |
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.
since we dropped the concurrency for MG some time ago, you can remove line 42 and 43
@@ -7,5 +7,5 @@ | |||
args = cms.vstring('/cvmfs/cms.cern.ch/phys_generator/gridpacks/UL/13TeV/madgraph/V5_2.6.5/dyellell01234j_5f_LO_MLM_v2/DYJets_HT-incl_slc6_amd64_gcc630_CMSSW_9_3_16_tarball.tar.xz','false','slc6_amd64_gcc630','CMSSW_9_3_16'), | |||
nEvents = cms.untracked.uint32(10), | |||
generateConcurrently = cms.untracked.bool(True), | |||
postGenerationCommand = cms.untracked.vstring('mergeLHE.py', '-i', 'thread*/cmsgrid_final.lhe', '-o', 'cmsgrid_final.lhe'), | |||
postGenerationCommand = cms.untracked.vstring('mergeLHE.py', '-n', '-i', 'thread*/cmsgrid_final.lhe', '-o', 'cmsgrid_final.lhe'), |
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.
same comment here
@@ -7,7 +7,7 @@ | |||
outputFile = cms.string('cmsgrid_final.lhe'), | |||
scriptName = cms.FileInPath('GeneratorInterface/LHEInterface/data/run_generic_tarball_cvmfs.sh'), | |||
generateConcurrently = cms.untracked.bool(True), | |||
postGenerationCommand = cms.untracked.vstring('mergeLHE.py', '-i', 'thread*/cmsgrid_final.lhe', '-o', 'cmsgrid_final.lhe'), | |||
postGenerationCommand = cms.untracked.vstring('mergeLHE.py', '-n', '-i', 'thread*/cmsgrid_final.lhe', '-o', 'cmsgrid_final.lhe'), |
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.
same comment here
Hi @menglu21, what is the plan for madgraph concurrency longer term, will it be reintroduced once a satisfactory read-only gridpack solution is found? If so I think it would be better to leave the unit tests as they are so we can catch multithreading bugs rather than having to resolve all of them when we move back to multi-threading. Also have we also dropped multithreading for POWHEG? |
it should depend on the readonly status and behavior eventually, we are still using multithread for powheg, we can keep the code as you submit |
+1 |
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. @rappoccio, @antoniovilela, @sextonkennedy (and backports should be raised in the release meeting by the corresponding L2) |
+1 |
@Dominic-Stafford @menglu21 Relvals are failing after this PR was merged:
|
Hi, I'm not seeing this in my tests, which are with CMSSW_10_6_30. In the relval you linked there's an earlier error: |
It is quite possible, thanks! |
The proper workaround would be to add cmssw/Configuration/Generator/python/concurrentLumisDisable.py Lines 1 to 19 in 6303322
Then cmsDriver.py will automatically set numberOfConcurrentLuminosityBlocks = 1 for all jobs that use Herwig7HadronizerFilter .
This error was not visible in 10_6_X, because concurrent lumis was enabled by default in 12_0_X. |
Ah, thank you @makortel for explaining, I wasn't aware of this, I'll make another PR to add this there |
This PR reintroduces the HadronizerFilter to Herwig from #40939, designed to address a long-standing issue of the wrong lhe events being saved when using matching in Herwig. This was reverted in #41237 (see #41230) due to issues when running on multiple cores: firstly, one line of regex in the script which merges LHEs from different thrreads incorrectly caught the new lhe tag, and for the Herwig workflows the event number wasn't being properly propagated between the threads, as it needed to be passed to the LHEEventProduct. Both of these issues are now resolved, so it should be possible to re-add the reverted changes.
Should be tested with cms-sw/cmsdist#8670.