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
Improve DD4hep workflow perf, step 4: Improve performance of GeometricDet construction in old DD (DDD) and DD4hep #32544
Conversation
…ters from XMLs in GeometricDet. Indeed, these parameters are only relevant for sensors volumes anyway! This divides by ~3 or ~4 the total numbers of lookups! Could add further selections for IT versus OT, Phase 1 versus Phase 2, but the most stringent call, from very far, seems to be fv->findSpecPar("TrackerRadLength", "TrackerXi") anyway. Effect on DD4hep Run 3 ZMM step 1 (up to event generator): 80s -> 76s on my local
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-32544/20498
|
A new Pull Request was created by @ghugo83 for master. It involves the following packages: DetectorDescription/DDCMS @civanch, @Dr15Jones, @makortel, @cvuosalo, @ianna, @mdhildreth, @cmsbuild can you please review it and eventually sign? Thanks. cms-bot commands are listed here |
@cmsbuild please test |
+1 Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-afeb7d/11810/summary.html DAS Queries failed Comparison SummarySummary:
|
+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. @silviodonato, @dpiparo, @qliphy (and backports should be raised in the release meeting by the corresponding L2) |
NB: This PR can be merged independently of step 3 PR. |
+1 |
The old legacy code in GeometricDet constructor (re-used for DD4hep) contains a block parsing information from XMLs.
If we think about it, all this info is related to sensors: hence once can obviously select these volumes only.
Use std::string iterators instead of constructing temporary string for constructing std::regex.
NB: It could be that additional selections in the GeometricDet constructor will end up beneficial for Phase 2 DD4hep workflow, to be seen.
Summary of performance gains for step 1 with DD4hep workflow (entire step 1 with all initializations + XML parsing + CMS geo construction, up to event generation).
ZMM, Run3, run on my local (forget lxplus ;p):
@ianna @cvuosalo @civanch