Skip to content

Commit

Permalink
Merge pull request #40256 from srimanob/124_FastSimMiniNanoValidation
Browse files Browse the repository at this point in the history
[Backport] Run-3 FastSim Mini and Nano workflow for validation
  • Loading branch information
cmsbuild authored Jan 12, 2023
2 parents 0a38161 + 5f5995c commit 2c51183
Show file tree
Hide file tree
Showing 11 changed files with 147 additions and 90 deletions.
1 change: 0 additions & 1 deletion Configuration/PyReleaseValidation/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,6 @@ The offsets currently in use are:
* 0.103: Phase-2 aging, 3000fb-1
* 0.201: HGCAL special TICL Pattern recognition Workflows: clue3D
* 0.202: HGCAL special TICL Pattern recognition Workflows: FastJet
* 0.301: FastSim Run-3
* 0.302: FastSim Run-3 trackingOnly validation
* 0.303: FastSim Run-3 MB for mixing
* 0.9001: Sonic Triton
4 changes: 2 additions & 2 deletions Configuration/PyReleaseValidation/python/relval_2017.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
# (Patatrack ECAL-only: TTbar - on CPU)
# (Patatrack HCAL-only: TTbar - on CPU)
# (TTbar 0T, TTbar PU 0T)
# (TTbar FastSim)
# (TTbar FastSim, TTbar FastSim PU, MinBiasFS for mixing)
# (TTbar PU MLPF)
# (TTbar PU prod-like)
# (QCD 1.8TeV DeepCore)
Expand Down Expand Up @@ -72,7 +72,7 @@
11634.511,
11634.521,
11634.24,11834.24,
11634.301,
13234.0,13434.0,13240.303,
11834.13,
11834.21,
11723.17,
Expand Down
46 changes: 41 additions & 5 deletions Configuration/PyReleaseValidation/python/relval_steps.py
Original file line number Diff line number Diff line change
Expand Up @@ -3620,6 +3620,7 @@ def gen2021HiMix(fragment,howMuch):
defaultDataSets['2018Design']='CMSSW_12_0_0_pre4-113X_upgrade2018_design_v5-v'
defaultDataSets['2021']='CMSSW_12_4_9_patch1-124X_mcRun3_2022_realistic_v10_BS2022-v'
defaultDataSets['2021Design']='CMSSW_12_4_9_patch1-124X_mcRun3_2022_design_v7_BS2022-v'
defaultDataSets['2021FS']='CMSSW_12_4_0_pre4-124X_mcRun3_2021_realistic_v1_Run3FastSim_FastSim-v'
defaultDataSets['2023']='CMSSW_12_0_0_pre4-120X_mcRun3_2023_realistic_v2-v'
defaultDataSets['2024']='CMSSW_12_0_0_pre4-120X_mcRun3_2024_realistic_v2-v'
defaultDataSets['2026D49']='CMSSW_12_0_0_pre4-113X_mcRun4_realistic_v7_2026D49noPU-v'
Expand Down Expand Up @@ -3652,7 +3653,10 @@ def gen2021HiMix(fragment,howMuch):
elif '2018' in ds:
PUDataSets[ds]={'-n':10,'--pileup':'AVE_50_BX_25ns','--pileup_input':'das:/RelValMinBias_13/%s/GEN-SIM'%(name,)}
elif '2021' in ds:
PUDataSets[ds]={'-n':10,'--pileup':'Run3_Flat55To75_PoissonOOTPU','--pileup_input':'das:/RelValMinBias_14TeV/%s/GEN-SIM'%(name,)}
if 'FS' not in ds:
PUDataSets[ds]={'-n':10,'--pileup':'Run3_Flat55To75_PoissonOOTPU','--pileup_input':'das:/RelValMinBias_14TeV/%s/GEN-SIM'%(name,)}
else:
PUDataSets[ds]={'-n':10,'--pileup':'Run3_Flat55To75_PoissonOOTPU','--pileup_input':'das:/RelValMinBias_14TeV/%s/GEN-SIM-RECO'%(name,)}
elif 'postLS2' in ds:
PUDataSets[ds]={'-n':10,'--pileup':'AVE_50_BX_25ns','--pileup_input':'das:/RelValMinBias_13/%s/GEN-SIM'%(name,)}
elif '2026' in ds:
Expand Down Expand Up @@ -3680,6 +3684,16 @@ def gen2021HiMix(fragment,howMuch):
beamspot=upgradeProperties[year][k].get('BeamSpot', None)

# setup baseline steps
upgradeStepDict['Gen'][k]= {'-s' : 'GEN',
'-n' : 10,
'--conditions' : gt,
'--beamspot' : 'Realistic25ns13TeVEarly2017Collision',
'--datatier' : 'GEN',
'--eventcontent': 'FEVTDEBUG',
'--geometry' : geom
}
if beamspot is not None: upgradeStepDict['Gen'][k]['--beamspot']=beamspot

upgradeStepDict['GenSim'][k]= {'-s' : 'GEN,SIM',
'-n' : 10,
'--conditions' : gt,
Expand Down Expand Up @@ -3841,6 +3855,25 @@ def gen2021HiMix(fragment,howMuch):
'--geometry' : geom,
'--scenario' : 'pp'
}

upgradeStepDict['FastSimRun3'][k]={'-s':'SIM,RECOBEFMIX,DIGI:pdigi_valid,L1,DIGI2RAW,L1Reco,RECO,PAT,NANO,VALIDATION:@standardValidation+@miniAODValidation,DQM:@standardDQMFS+@miniAODDQM+@nanoAODDQM',
'--fast':'',
'--era':'Run3_FastSim',
'--beamspot':beamspot,
'--conditions':gt,
'--geometry':geom,
'--eventcontent':'FEVTDEBUGHLT,MINIAODSIM,NANOEDMAODSIM,DQM',
'--datatier':'GEN-SIM-DIGI-RECO,MINIAODSIM,NANOAODSIM,DQMIO',
}

upgradeStepDict['HARVESTFastRun3'][k]={'-s':'HARVESTING:validationHarvesting+@miniAODValidation+@miniAODDQM+@nanoAODDQM',
'--conditions':gt,
'--mc':'',
'--fast':'',
'--geometry':geom,
'--scenario':'pp',
'--filetype':'DQM',
'--filein':'file:step2_inDQM.root'}

upgradeStepDict['Nano'][k] = {'-s':'NANO,DQM:@nanoAODDQM',
'--conditions':gt,
Expand Down Expand Up @@ -3879,7 +3912,7 @@ def gen2021HiMix(fragment,howMuch):

for step in upgradeStepDict.keys():
# we need to do this for each fragment
if 'Sim' in step or 'Premix' in step:
if ('Sim' in step and 'Fast' not in step) or ('Premix' in step) or ('Sim' not in step and 'Gen' in step):
for frag,info in upgradeFragments.items():
howMuch=info.howMuch
for key in [key for year in upgradeKeys for key in upgradeKeys[year]]:
Expand All @@ -3902,10 +3935,13 @@ def gen2021HiMix(fragment,howMuch):
s=frag[:-4]+'_'+key
# exclude upgradeKeys without input dataset, and special WFs that disable reuse
istep = step+preventReuseKeyword
if 'FastSim' not in k and 'Run3FS' not in k and s+'INPUT' not in steps and s in baseDataSetReleaseBetter and defaultDataSets[key] != '' and \
if 'FastSim' not in k and s+'INPUT' not in steps and s in baseDataSetReleaseBetter and defaultDataSets[key] != '' and \
(istep not in upgradeStepDict or key not in upgradeStepDict[istep] or upgradeStepDict[istep][key] is not None):
steps[k+'INPUT']={'INPUT':InputInfo(dataSet='/RelVal'+info.dataset+'/%s/GEN-SIM'%(baseDataSetReleaseBetter[s],),location='STD')}
else:
if 'FS' not in key: #For FullSim
steps[k+'INPUT']={'INPUT':InputInfo(dataSet='/RelVal'+info.dataset+'/%s/GEN-SIM'%(baseDataSetReleaseBetter[s],),location='STD')}
#else: #For FastSim to recycle GEN (to enable when datasets are available)
# steps[k+'INPUT']={'INPUT':InputInfo(dataSet='/RelVal'+info.dataset+'/%s/GEN'%(baseDataSetReleaseBetter[s],),location='STD')}
else:
for key in [key for year in upgradeKeys for key in upgradeKeys[year]]:
k=step+'_'+key
if step in upgradeStepDict and key in upgradeStepDict[step]:
Expand Down
6 changes: 4 additions & 2 deletions Configuration/PyReleaseValidation/python/relval_upgrade.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,14 +30,16 @@ def makeStepName(key,frag,step,suffix):
hasHarvest = False
for step in upgradeProperties[year][key]['ScenToRun']:
stepMaker = makeStepName
if 'Sim' in step:
if 'Sim' in step and 'Fast' not in step:
if 'HLBeamSpot' in step:
if '14TeV' in frag:
step = 'GenSimHLBeamSpot14'
if 'CloseByParticle' in frag or 'CE_E' in frag or 'CE_H' in frag:
step = 'GenSimHLBeamSpotHGCALCloseBy'
stepMaker = makeStepNameSim

elif 'Gen' in step:
stepMaker = makeStepNameSim

if 'HARVEST' in step: hasHarvest = True

for specialType,specialWF in upgradeWFs.items():
Expand Down
Loading

0 comments on commit 2c51183

Please sign in to comment.