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

TkDQM: add rechit harvester module for IT #33863

Merged
merged 11 commits into from Jun 17, 2021

Conversation

sroychow
Copy link
Contributor

PR description:

This PR introduces the following:-

  • In the DQM step, (rechit-simhit) residuals are plotted as a function of abs(eta) and phi for each layer and ring. This is done both for the IT and OT(OT is still only in standalone configuration)
  • A new module is introduced for Harvesting, which does the fits of the residual 2D histos of the previous point to make plots of mean residual and resolution from as a function of eta-phi
  • For finding the closest simhit for rechits, and clusters - squared distance is used
  • A new harvesting util is also added.
  • The harvester module can also be configured to run for OT but it can only be used in standalone mode now.

PR validation:

Checked with wf 23234.0

if this PR is a backport please specify the original PR and why you need to backport that PR:

NA
cc @emiglior @mmusich @tsusa

@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-33863/22893

  • This PR adds an extra 40KB to repository

@cmsbuild
Copy link
Contributor

A new Pull Request was created by @sroychow (Suvankar Roy Chowdhury) for master.

It involves the following packages:

DQM/SiTrackerPhase2
Validation/SiTrackerPhase2V

@andrius-k, @kmaeshima, @ErnestaP, @ahmad3213, @cmsbuild, @jfernan2, @rvenditti can you please review it and eventually sign? Thanks.
@arossi83, @sroychow 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

@mmusich
Copy link
Contributor

mmusich commented May 27, 2021

@cmsbuild, please test

@cmsbuild
Copy link
Contributor

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-e30d1a/15352/summary.html
COMMIT: d6fb725
CMSSW: CMSSW_12_0_X_2021-05-26-2300/slc7_amd64_gcc900
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/cmssw/33863/15352/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: 8 differences found in the comparisons
  • DQMHistoTests: Total files compared: 37
  • DQMHistoTests: Total histograms compared: 2650486
  • DQMHistoTests: Total failures: 2279
  • DQMHistoTests: Total nulls: 398
  • DQMHistoTests: Total successes: 2647787
  • DQMHistoTests: Total skipped: 22
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 11488.088 KiB( 36 files compared)
  • DQMHistoSizes: changed ( 23234.0,... ): 587.971 KiB TrackerPhase2ITTrackingRecHitV/EndCap_Side1
  • DQMHistoSizes: changed ( 23234.0,... ): 587.971 KiB TrackerPhase2ITTrackingRecHitV/EndCap_Side2
  • DQMHistoSizes: changed ( 23234.0,... ): 587.268 KiB TrackerPhase2ITRecHitV/EndCap_Side2
  • DQMHistoSizes: changed ( 23234.0,... ): 587.268 KiB TrackerPhase2ITRecHitV/EndCap_Side1
  • DQMHistoSizes: changed ( 23234.0,... ): 260.930 KiB TrackerPhase2ITTrackingRecHitV/Barrel
  • DQMHistoSizes: changed ( 23234.0,... ): 260.617 KiB TrackerPhase2ITRecHitV/Barrel
  • 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

Copy link
Contributor

@mmusich mmusich left a comment

Choose a reason for hiding this comment

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

sorry for the long delay @sroychow.
I have a minor comment on possible code reduction.
One question: is there any reason why Phase2OTValidateTrackingRecHit cannot run in the standard production sequence? Seems it's relegated to the standalone workflow now.

LocalPoint lp = rechit.localPosition();
for (const auto& simHitCol : simHits) {
for (const auto& simhitIt : *simHitCol) {
if (detId.rawId() != simhitIt.detUnitId())
continue;
for (const auto& mId : matchedId) {
if (simhitIt.trackId() == mId.first) {
if (!simhitClosest || abs(simhitIt.localPosition().x() - lp.x()) < minx) {
minx = abs(simhitIt.localPosition().x() - lp.x());
float dx = simhitIt.localPosition().x() - lp.x();
Copy link
Contributor

Choose a reason for hiding this comment

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

I think this whole block of finding the closest simhit is repeated in several classes. Perhaps can be moved to the base or even higher up.

float minfit = histoY->GetMean() - histoY->GetRMS();
float maxfit = histoY->GetMean() + histoY->GetRMS();

TF1* fitFcn = new TF1(TString("g") + histo->GetName() + iString, "gaus", minfit, maxfit);
Copy link
Contributor

Choose a reason for hiding this comment

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

wondering if one could use a smart pointer here?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yes will do.

@sroychow
Copy link
Contributor Author

sroychow commented Jun 9, 2021

@mmusich on the Phase2OTValidateTrackingRecHit, yes it should be moved to the standard sequence. I will update the config.
Concerning the simhit,rechit matching - yes this should be optimized. I shall do it in a follow up PR if you are okay.

@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-33863/23365

  • This PR adds an extra 24KB to repository

@cmsbuild
Copy link
Contributor

Pull request #33863 was updated. @andrius-k, @kmaeshima, @ErnestaP, @ahmad3213, @cmsbuild, @jfernan2, @rvenditti can you please check and sign again.

@jfernan2
Copy link
Contributor

+1
Last commit is cosmetic

@cmsbuild
Copy link
Contributor

This pull request is fully signed and it will be integrated in one of the next master IBs after it passes the integration tests. 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)

@cmsbuild
Copy link
Contributor

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-e30d1a/16018/summary.html
COMMIT: 8843f55
CMSSW: CMSSW_12_0_X_2021-06-16-0900/slc7_amd64_gcc900
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmssw/33863/16018/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: 0 differences found in the comparisons
  • DQMHistoTests: Total files compared: 38
  • DQMHistoTests: Total histograms compared: 2862520
  • DQMHistoTests: Total failures: 1
  • DQMHistoTests: Total nulls: 352
  • DQMHistoTests: Total successes: 2862145
  • DQMHistoTests: Total skipped: 22
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 66615.752 KiB( 37 files compared)
  • DQMHistoSizes: changed ( 23234.0,... ): 6267.833 KiB TrackerPhase2OTTrackingRecHitV/EndCap_Side2
  • DQMHistoSizes: changed ( 23234.0,... ): 6267.833 KiB TrackerPhase2OTTrackingRecHitV/EndCap_Side1
  • DQMHistoSizes: changed ( 23234.0,... ): 1246.248 KiB TrackerPhase2OTTrackingRecHitV/Barrel
  • DQMHistoSizes: changed ( 23234.0,... ): 587.971 KiB TrackerPhase2ITTrackingRecHitV/EndCap_Side1
  • DQMHistoSizes: changed ( 23234.0,... ): 587.971 KiB TrackerPhase2ITTrackingRecHitV/EndCap_Side2
  • DQMHistoSizes: changed ( 23234.0,... ): 587.268 KiB TrackerPhase2ITRecHitV/EndCap_Side1
  • DQMHistoSizes: changed ( 23234.0,... ): 587.268 KiB TrackerPhase2ITRecHitV/EndCap_Side2
  • DQMHistoSizes: changed ( 23234.0,... ): 260.930 KiB TrackerPhase2ITTrackingRecHitV/Barrel
  • DQMHistoSizes: changed ( 23234.0,... ): 260.617 KiB TrackerPhase2ITRecHitV/Barrel
  • Checked 160 log files, 37 edm output root files, 38 DQM output files
  • TriggerResults: no differences found

@qliphy
Copy link
Contributor

qliphy commented Jun 17, 2021

+1

@cmsbuild cmsbuild merged commit 72459f6 into cms-sw:master Jun 17, 2021
@qliphy
Copy link
Contributor

qliphy commented Jun 18, 2021

@sroychow There is a reval error in IB after this PR was merged. Not sure this is a glitch, to be checked with next IB, but it would be nice if you can have a look:

https://cmssdt.cern.ch/SDT/html/cmssdt-ib/#/relVal/CMSSW_12_0/2021-06-17-1100?selectedArchs=slc7_amd64_gcc900&selectedFlavors=X&selectedStatus=failed
https://cmssdt.cern.ch/SDT/cgi-bin/logreader/slc7_amd64_gcc900/CMSSW_12_0_X_2021-06-17-1100/pyRelValMatrixLogs/run/23234.9_TTbar_14TeV+2026D49_vectorHits+TTbar_14TeV_TuneCP5_GenSimHLBeamSpot14INPUT+DigiTrigger+RecoGlobal+HARVESTGlobal/step3_TTbar_14TeV+2026D49_vectorHits+TTbar_14TeV_TuneCP5_GenSimHLBeamSpot14INPUT+DigiTrigger+RecoGlobal+HARVESTGlobal.log#/173-173

Module: Phase2OTValidateTrackingRecHit:trackingRechitValidOT (crashed)
Module: Phase2ITValidateTrackingRecHit:trackingRechitValidIT
Module: none
Module: TrackstersProducer:ticlTrackstersEM
A fatal system signal has occurred: segmentation violation

@sroychow
Copy link
Contributor Author

@qliphy thanks for pointing it out. I am investigating it.

@mmusich
Copy link
Contributor

mmusich commented Jun 18, 2021

@sroychow @qliphy the affected workflow appears to make use of VectorHits, so the error looks genuine. The input OT Rechit collection ought to be changed, but given we're planning to use a different module I suggest to make use of the dedicated modifier and exclude Phase2OTValidateTrackingRecHit:trackingRechitValidOT from execution.

@sroychow
Copy link
Contributor Author

@mmusich @qliphy yes I have addressed the issue in a new PR excluding the OT validation and harvesting module from the standard sequence with the vectorHits modifier.

@mrodozov
Copy link
Contributor

@sroychow There is a reval error in IB after this PR was merged. Not sure this is a glitch, to be checked with next IB, but it would be nice if you can have a look:

https://cmssdt.cern.ch/SDT/html/cmssdt-ib/#/relVal/CMSSW_12_0/2021-06-17-1100?selectedArchs=slc7_amd64_gcc900&selectedFlavors=X&selectedStatus=failed
https://cmssdt.cern.ch/SDT/cgi-bin/logreader/slc7_amd64_gcc900/CMSSW_12_0_X_2021-06-17-1100/pyRelValMatrixLogs/run/23234.9_TTbar_14TeV+2026D49_vectorHits+TTbar_14TeV_TuneCP5_GenSimHLBeamSpot14INPUT+DigiTrigger+RecoGlobal+HARVESTGlobal/step3_TTbar_14TeV+2026D49_vectorHits+TTbar_14TeV_TuneCP5_GenSimHLBeamSpot14INPUT+DigiTrigger+RecoGlobal+HARVESTGlobal.log#/173-173

Module: Phase2OTValidateTrackingRecHit:trackingRechitValidOT (crashed)
Module: Phase2ITValidateTrackingRecHit:trackingRechitValidIT
Module: none
Module: TrackstersProducer:ticlTrackstersEM
A fatal system signal has occurred: segmentation violation

it's not a glitch it's in all latest IBs

@mmusich
Copy link
Contributor

mmusich commented Jun 18, 2021

@mrodozov I think you missed my message above #33863 (comment) ...

@qliphy
Copy link
Contributor

qliphy commented Jun 18, 2021

it's not a glitch it's in all latest IBs

Right. @sroychow has made a fix #34175

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

7 participants