cms-sw / cmssw

CMS Offline Software
http://cms-sw.github.io/
Apache License 2.0
1.07k stars 4.28k forks source link

Why do we need to call PU datasets in RECO steps in RelVals? #26240

Closed srimanob closed 5 years ago

srimanob commented 5 years ago

I just see that we have several classic mixing workflows for all 3 years of Run2 which call PU library in RECO step, i.e.

It is not clear to me why do we need to call it in RECO? There are several places in relvals_step that put PU in RECO step, i.e. https://github.com/cms-sw/cmssw/blob/CMSSW_10_6_X/Configuration/PyReleaseValidation/python/relval_steps.py#L2073-L2077 https://github.com/cms-sw/cmssw/blob/CMSSW_10_6_X/Configuration/PyReleaseValidation/python/relval_steps.py#L2218 https://github.com/cms-sw/cmssw/blob/CMSSW_10_6_X/Configuration/PyReleaseValidation/python/relval_steps.py#L2226

cmsbuild commented 5 years ago

A new Issue was created by @srimanob Phat Srimanobhas.

@davidlange6, @Dr15Jones, @smuzaffar, @fabiocos, @kpedro88 can you please review it and eventually sign/assign? Thanks.

cms-bot commands are listed here

fabiocos commented 5 years ago

assign pdmv

cmsbuild commented 5 years ago

New categories assigned: pdmv

@prebello,@zhenhu,@pgunnell you have been requested to review this Pull request/Issue and eventually sign? Thanks

slava77 commented 5 years ago

VALIDATION step requires a replay of pileup.

srimanob commented 5 years ago

@slava77 Thx.

I don't see it in pre-mixing with validation workflow. Is validation step difference for Classic and PreMixing in this case?

https://cmsweb.cern.ch/reqmgr2/fetch?rid=chayanit_RVCMSSW_10_6_0_pre2TTbar_13UP18_PUpmx25ns__190320_082417_8759

Not sure also I understand "a replay of PU". Could you please guide more? Thx.

slava77 commented 5 years ago

On 3/25/19 6:23 AM, Phat Srimanobhas wrote:

Not sure also I understand "a replay of PU". Could you please guide more? Thx.

some of the validation modules (e.g. tracking) need to know provenance of all hits. This is possible if the mixing module is rerun by "replaying" the pileup mixing that was done in the original DIGI step.

fabiocos commented 5 years ago

@srimanob using workflow 11025.0 as an example, if you run step3 (RECO - DQM) with the Tracer activated you will see:

++++++++++++ starting: event delayed read from source: stream = 2 label = 'mix' id = 1833
++++++++++++ finished: event delayed read from source: stream = 2 label = 'mix' id = 1833
++++++++++++ starting: event delayed read from source: stream = 2 label = 'mix' id = 1833
++++++++++++ finished: event delayed read from source: stream = 2 label = 'mix' id = 1833
++++++++++++ starting: event delayed read from source: stream = 2 label = 'mix' id = 1833
++++++++++++ finished: event delayed read from source: stream = 2 label = 'mix' id = 1833
++++++++++++ starting: event delayed read from source: stream = 2 label = 'mix' id = 1833
++++++++++++ finished: event delayed read from source: stream = 2 label = 'mix' id = 1833

You have for instance the validation module

++++++++ finished: prefetching before processing event for module: stream = 0 label = 'mixCollectionValidation' id = 1834
++++++++ starting: processing event for module: stream = 0 label = 'mixCollectionValidation' id = 1834

corresponding to https://github.com/cms-sw/cmssw/blob/master/Validation/Mixing/src/MixCollectionValidation.cc that is accessing the CrossingFrame

makortel commented 5 years ago

some of the validation modules (e.g. tracking) need to know provenance of all hits.

Tracking validation (MTV etc) does not need the replay of pileup.

srimanob commented 5 years ago

I think we have a clear statement on the need on MinBias in validation step. I will close the issue then.