Skip to content

Conversation

@AdrianoDee
Copy link
Contributor

@AdrianoDee AdrianoDee commented May 29, 2021

PR description:

This PR adds to lostTracks collection all those tracks (pions) that can potentially form Λπ candidate checking the invariant mass M( Λπ)< X GeV. This PR adds to the lostTracks modules a variable xiSelection to turn on this selection and a tunable mass cut (xiMassCut ).

PR validation:

All the tests run.

The size increase is <~ 1% evaluated on JetHT Run2018D data with =37

See slide 10 here

AdrianoDee added 3 commits May 28, 2021 16:12
- add to lostTracks tracks consistent with coming from a Xi candidate decaying to LambdaPi
- adding a flag to turn on the slection
@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-33891/22943

@cmsbuild
Copy link
Contributor

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

It involves the following packages:

PhysicsTools/PatAlgos

@perrotta, @jpata, @cmsbuild, @slava77 can you please review it and eventually sign? Thanks.
@rappoccio, @gouskos, @jdolen, @JyothsnaKomaragiri, @ahinzmann, @schoef, @emilbols, @swozniewski, @jdamgov, @mbluj, @nhanvtran, @gkasieczka, @clelange, @hatakeyamak, @ferencek, @gpetruc, @andrzejnovak, @mariadalfonso, @seemasharmafnal, @mmarionncern 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

Copy link
Contributor

@slava77 slava77 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please provide a timing measurement, preferably using igprof. The nested loop over tracks may be quite costly and then will need to be rewritten to minimize recomputations.

}
if (xiSelection_) {
// selecting potential Xi- -> Lambda pi candidates
TLorentzVector p4Lambda;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please switch to a math:: Lorentz vector. Given the cost of computing eta and phi for tracks, I think that math::XYZTLorentzVector is more appropriate.

@slava77
Copy link
Contributor

slava77 commented May 29, 2021

@cmsbuild please test

@cmsbuild
Copy link
Contributor

-1

Failed Tests: UnitTests RelVals RelVals-INPUT AddOn
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-4cc4e9/15421/summary.html
COMMIT: 40e810e
CMSSW: CMSSW_12_0_X_2021-05-28-2300/slc7_amd64_gcc900
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/cmssw/33891/15421/install.sh to create a dev area with all the needed externals and cmssw changes.

Unit Tests

I found errors in the following unit tests:

---> test runtestPhysicsToolsPatAlgos had ERRORS

RelVals

  • 4.534.53_RunPhoton2012B+RunPhoton2012B+HLTD+RECODR1reHLT+HARVESTDR1reHLT/step2_RunPhoton2012B+RunPhoton2012B+HLTD+RECODR1reHLT+HARVESTDR1reHLT.log
  • 4.224.22_RunCosmics2011A+RunCosmics2011A+RECOCOSD+ALCACOSD+SKIMCOSD+HARVESTDC/step2_RunCosmics2011A+RunCosmics2011A+RECOCOSD+ALCACOSD+SKIMCOSD+HARVESTDC.log
  • 7.37.3_CosmicsSPLoose_UP18+CosmicsSPLoose_UP18+DIGICOS_UP18+RECOCOS_UP18+ALCACOS_UP18+HARVESTCOS_UP18/step1_CosmicsSPLoose_UP18+CosmicsSPLoose_UP18+DIGICOS_UP18+RECOCOS_UP18+ALCACOS_UP18+HARVESTCOS_UP18.log
Expand to see more relval errors ...

RelVals-INPUT

  • 4.224.22_RunCosmics2011A+RunCosmics2011A+RECOCOSD+ALCACOSD+SKIMCOSD+HARVESTDC/step2_RunCosmics2011A+RunCosmics2011A+RECOCOSD+ALCACOSD+SKIMCOSD+HARVESTDC.log
  • 4.264.26_ZMuSkim2011A+ZMuSkim2011A+HLTDSKIM+RECODR1reHLT+HARVESTDR1reHLT/step2_ZMuSkim2011A+ZMuSkim2011A+HLTDSKIM+RECODR1reHLT+HARVESTDR1reHLT.log
  • 4.274.27_ZElSkim2011A+ZElSkim2011A+HLTDSKIM+RECODR1reHLT+HARVESTDR1reHLT/step2_ZElSkim2011A+ZElSkim2011A+HLTDSKIM+RECODR1reHLT+HARVESTDR1reHLT.log
Expand to see more relval errors ...

AddOn Tests

  • fastsimcmsDriver.py TTbar_8TeV_TuneCUETP8M1_cfi --conditions auto:run1_mc --fast -n 100 --eventcontent AODSIM,DQM --relval 100000,1000 -s GEN,SIM,RECOBEFMIX,DIGI:pdigi_valid,L1,DIGI2RAW,L1Reco,RECO,EI,VALIDATION --customise=HLTrigger/Configuration/CustomConfigs.L1THLT --datatier GEN-SIM-DIGI-RECO,DQMIO --beamspot Realistic8TeVCollision : FAILED - time: date Sat May 29 20:36:08 2021-date Sat May 29 20:36:06 2021 s - exit: 256
  • hlt_data_Fake2cmsDriver.py RelVal -s L1REPACK:Full --data --scenario=pp -n 10 --conditions auto:run2_hlt_Fake2 --relval 9000,50 --datatier "RAW" --eventcontent RAW --customise=HLTrigger/Configuration/CustomConfigs.L1T --era Run2_2016 --fileout file:RelVal_Raw_Fake2_DATA.root --filein /store/data/Run2016B/JetHT/RAW/v1/000/272/762/00000/C666CDE2-E013-E611-B15A-02163E011DBE.root : FAILED - time: date Sat May 29 20:36:18 2021-date Sat May 29 20:36:11 2021 s - exit: 256
  • hlt_mc_Fake2
----- Begin Fatal Exception 29-May-2021 20:36:46 CEST-----------------------
An exception of category 'FileOpenError' occurred while
   [0] Constructing the EventProcessor
   [1] Constructing input source of type PoolSource
   [2] Calling RootInputFileSequence::initTheFile()
   [3] Calling StorageFactory::open()
   [4] Calling File::sysopen()
Exception Message:
Failed to open the file 'RelVal_Raw_Fake2_MC.root'
   Additional Info:
      [a] Input file file:RelVal_Raw_Fake2_MC.root could not be opened.
      [b] open() failed with system error 'No such file or directory' (error code 2)
----- End Fatal Exception -------------------------------------------------
Expand to see more addon errors ...

@cmsbuild
Copy link
Contributor

-code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-33891/22967

Code check has found code style and quality issues which could be resolved by applying following patch(s)

@AdrianoDee
Copy link
Contributor Author

please provide a timing measurement, preferably using igprof. The nested loop over tracks may be quite costly and then will need to be rewritten to minimize recomputations.

Sure, about this it's worth to move the

if (trkStatus[trkIndx] == TrkStatus::NOTUSED)

above before the p4 calculations. With this implemented the igprof reports:

The timing for the module goes from ~150 ms per 100 events to 220 ms per 100 events.

@slava77
Copy link
Contributor

slava77 commented May 31, 2021

please provide a timing measurement, preferably using igprof. The nested loop over tracks may be quite costly and then will need to be rewritten to minimize recomputations.

Sure, about this it's worth to move the

if (trkStatus[trkIndx] == TrkStatus::NOTUSED)

above before the p4 calculations. With this implemented the igprof reports:

* [original](https://adiflori.web.cern.ch/cgi-bin/igprof-navigator/old_perf/1996)

* [new](https://adiflori.web.cern.ch/cgi-bin/igprof-navigator/new_perf/1534)

The timing for the module goes from ~150 ms per 100 events to 220 ms per 100 events.

the igprof shows that the cost of the loop in question is reasonably small and further optimization is not required.
IIUC, this still requires a change in the location of if (trkStatus[trkIndx] == TrkStatus::NOTUSED) compared to the current state of this PR

@AdrianoDee
Copy link
Contributor Author

IIUC, this still requires a change in the location of if (trkStatus[trkIndx] == TrkStatus::NOTUSED) compared to the current state of this PR

Indeed, updated it with the new setup

@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-33891/22976

@cmsbuild
Copy link
Contributor

Pull request #33891 was updated. @perrotta, @jpata, @slava77 can you please check and sign again.

@slava77
Copy link
Contributor

slava77 commented May 31, 2021

@cmsbuild please test

@slava77
Copy link
Contributor

slava77 commented May 31, 2021

urgent
in the context of getting this to 106X for bParking mini

@cmsbuild
Copy link
Contributor

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-4cc4e9/15460/summary.html
COMMIT: 807d8e0
CMSSW: CMSSW_12_0_X_2021-05-30-2300/slc7_amd64_gcc900
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmssw/33891/15460/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

  • No significant changes to the logs found
  • Reco comparison results: 353 differences found in the comparisons
  • DQMHistoTests: Total files compared: 37
  • DQMHistoTests: Total histograms compared: 2650486
  • DQMHistoTests: Total failures: 803
  • DQMHistoTests: Total nulls: 1
  • DQMHistoTests: Total successes: 2649660
  • DQMHistoTests: Total skipped: 22
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: -0.004 KiB( 36 files compared)
  • DQMHistoSizes: changed ( 312.0 ): -0.004 KiB MessageLogger/Warnings
  • Checked 155 log files, 37 edm output root files, 37 DQM output files
  • TriggerResults: no differences found

@mtosi
Copy link
Contributor

mtosi commented Jun 2, 2021

thanks a lot for this very fast review (really appreciated !)
is everything fine, or are there still open items ?

thanks, and have a nice day (and Festa della Repubblica for the Italians ;) )

@slava77
Copy link
Contributor

slava77 commented Jun 3, 2021

+reconstruction

for #33891 807d8e0

  • code changes are in line with the PR description and the follow up review
  • jenkins tests pass and comparisons with the baseline show differences in quantities related to the lostTracks
    • DQM plots show more entries in /lostTracks histograms, as expected
    • CPU cost seems reasonable based on igprofs provided earlier (the extra cost does not appear significant in the selection loop, while most of the added cost is in creation of the lost track packed candidates)
    • storage cost is in agreement with the PR description: in wf 136.88811 the output file is up by 0.26%

the wf 136.88811 shows about 26% increase in the number of lost tracks, mostly at low pt
all_OldVSNew_RunJetHT2018DreMINIAODULwf136p88811c_log10patPackedCandidates_lostTracks__PAT_obj_pt

@cmsbuild
Copy link
Contributor

cmsbuild commented Jun 3, 2021

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)

@qliphy
Copy link
Contributor

qliphy commented Jun 3, 2021

+1

@cmsbuild cmsbuild merged commit 220e673 into cms-sw:master Jun 3, 2021
@AdrianoDee
Copy link
Contributor Author

Thanks!

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.

5 participants