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

Improve DD4hep workflow perf, step 4: Improve performance of GeometricDet construction in old DD (DDD) and DD4hep #32544

Merged
merged 3 commits into from Dec 22, 2020

Conversation

ghugo83
Copy link
Contributor

@ghugo83 ghugo83 commented Dec 18, 2020

  • 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

…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
@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-32544/20498

  • This PR adds an extra 28KB to repository

@cmsbuild
Copy link
Contributor

A new Pull Request was created by @ghugo83 for master.

It involves the following packages:

DetectorDescription/DDCMS
Geometry/TrackerNumberingBuilder

@civanch, @Dr15Jones, @makortel, @cvuosalo, @ianna, @mdhildreth, @cmsbuild can you please review it and eventually sign? Thanks.
@vargasa, @makortel, @JanFSchulte, @VinInn, @ebrondol, @mtosi, @fabiocos, @slomeo, @venturia this is something you requested to watch as well.
@silviodonato, @dpiparo, @qliphy you are the release manager for this.

cms-bot commands are listed here

@cvuosalo
Copy link
Contributor

@cmsbuild please test

@cmsbuild
Copy link
Contributor

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-afeb7d/11810/summary.html
CMSSW: CMSSW_11_3_X_2020-12-18-1100/slc7_amd64_gcc900

DAS Queries failed

Comparison Summary

Summary:

  • No significant changes to the logs found
  • Reco comparison results: 3 differences found in the comparisons
  • DQMHistoTests: Total files compared: 36
  • DQMHistoTests: Total histograms compared: 2716967
  • DQMHistoTests: Total failures: 6
  • DQMHistoTests: Total nulls: 1
  • DQMHistoTests: Total successes: 2716938
  • DQMHistoTests: Total skipped: 22
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.004 KiB( 35 files compared)
  • DQMHistoSizes: changed ( 312.0 ): 0.004 KiB MessageLogger/Warnings
  • Checked 153 log files, 37 edm output root files, 36 DQM output files

@cvuosalo
Copy link
Contributor

+1

@cmsbuild
Copy link
Contributor

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)

@ghugo83
Copy link
Contributor Author

ghugo83 commented Dec 21, 2020

NB: This PR can be merged independently of step 3 PR.

@qliphy
Copy link
Contributor

qliphy commented Dec 22, 2020

+1

@cmsbuild cmsbuild merged commit 87119e3 into cms-sw:master Dec 22, 2020
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

4 participants