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
allow scram_arch and cmssw version manipulation from the ExternalLHEP… #19457
Conversation
A new Pull Request was created by @perrozzi for master. It involves the following packages: GeneratorInterface/LHEInterface @cmsbuild, @govoni, @perrozzi, @thuer, @davidlange6 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 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:
|
@@ -225,7 +225,8 @@ ExternalLHEProducer::beginRunProduce(edm::Run& run, edm::EventSetup const& es) | |||
|
|||
std::ostringstream eventStream; | |||
eventStream << nEvents_; | |||
args_.push_back(eventStream.str()); |
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.
What was actually wrong with using push_back and/or emplace_back?
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 string vector args, defined in the job cfg, conventionally only contains the gridpack path (P), so args = [P].
Currently ExternalLHEProducer appends the number of events (N), random seed (S) and number of threads (T) to arg,
producing therfore args* = [P,N,S,T] which is expected by run_generic_tarball_cvmfs.sh in this order.
If one adds other parameters (O) to args in the cfg, args = [P,O] and args* = [P,O,N,S,T] therefore run_generic_tarball_cvmfs.sh breaks.
What I did was to enforce args* = [P,N,S,T,O] in ExternalLHEProducer keeping back-compatibility in run_generic_tarball_cvmfs.sh, further allowing O to be passed (whenever present) to runcmsgrid.sh with
./runcmsgrid.sh $nevt $rnum
where ${@:5} means "all the arguments passed to the script starting from the 5th, i.e. O"
I tested and seems to work flawlessly, I hope is clear.
Let me know if you have further comments or questions
+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 requires discussion in the ORP meeting before it's merged. @davidlange6, @smuzaffar |
hi @perrozzi - this is allowing quite a lot more freedom than suggested by the PR title (basically anything can now be passed). Perhaps its possible to move a bit more of this interface out of the external script and into CMSSW ? [or is that all coming as a second step?] |
Hi David, Bottom line is that
More flexibility will be possible, in case of need, after merging PR in cmssw: 2.1) stick to campaign scram_arch and CMSSW by adding “false” parameter after gridpack full path Let me know if anything is not clear or if you have comments. |
+1 |
…roducer