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

add Era_Run3_2024, Era_Run3_2025, Tier0 reco scenario for 2024, and change default era in PyReleaseValidation #43761

Merged
merged 3 commits into from
Jun 12, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 29 additions & 0 deletions Configuration/DataProcessing/python/Impl/ppEra_Run3_2024.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
#!/usr/bin/env python3
"""
_ppEra_Run3_2024_
Scenario supporting proton collisions for 2024
"""

import os
import sys

from Configuration.DataProcessing.Reco import Reco
import FWCore.ParameterSet.Config as cms
from Configuration.Eras.Era_Run3_2024_cff import Run3_2024

from Configuration.DataProcessing.Impl.pp import pp

class ppEra_Run3_2024(pp):
def __init__(self):
pp.__init__(self)
self.recoSeq=''
self.cbSc='pp'
self.eras=Run3_2024
self.promptCustoms += [ 'Configuration/DataProcessing/RecoTLR.customisePostEra_Run3_2024' ]
self.expressCustoms += [ 'Configuration/DataProcessing/RecoTLR.customisePostEra_Run3_2024' ]
self.visCustoms += [ 'Configuration/DataProcessing/RecoTLR.customisePostEra_Run3_2024' ]
"""
_ppEra_Run3_2024_
Implement configuration building for data processing for proton
collision data taking for Run3_2024
"""
5 changes: 5 additions & 0 deletions Configuration/DataProcessing/python/RecoTLR.py
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,11 @@ def customisePostEra_Run3_2023(process):
customisePostEra_Run3(process)
return process

def customisePostEra_Run3_2024(process):
#start with a repeat of 2023
customisePostEra_Run3(process)
return process

def customisePostEra_Run3_express_trackingOnly(process):
#start with a repeat of 2018
customisePostEra_Run2_2018_express_trackingOnly(process)
Expand Down
2 changes: 1 addition & 1 deletion Configuration/DataProcessing/test/run_CfgTest_5.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ function die { echo $1: status $2 ; exit $2; }

function runTest { echo $1 ; python3 $1 || die "Failure for configuration: $1" $?; }

declare -a arr=("AlCaLumiPixels" "AlCaTestEnable" "cosmicsEra_Run2_2018" "hcalnzsEra_Run2_2018" "ppEra_Run2_2018" "hcalnzsEra_Run2_2018_highBetaStar" "hcalnzsEra_Run2_2018_pp_on_AA" "ppEra_Run2_2018_highBetaStar" "ppEra_Run2_2018_pp_on_AA" "cosmicsHybridEra_Run2_2018" "cosmicsEra_Run3" "hcalnzsEra_Run3" "ppEra_Run3" "AlCaLumiPixels_Run3" "AlCaPhiSymEcal_Nano" "AlCaPPS_Run3" "ppEra_Run3_pp_on_PbPb" "hcalnzsEra_Run3_pp_on_PbPb" "ppEra_Run3_pp_on_PbPb_approxSiStripClusters" "ppEra_Run3_2023" "ppEra_Run3_pp_on_PbPb_2023" "ppEra_Run3_pp_on_PbPb_approxSiStripClusters_2023")
declare -a arr=("AlCaLumiPixels" "AlCaTestEnable" "cosmicsEra_Run2_2018" "hcalnzsEra_Run2_2018" "ppEra_Run2_2018" "hcalnzsEra_Run2_2018_highBetaStar" "hcalnzsEra_Run2_2018_pp_on_AA" "ppEra_Run2_2018_highBetaStar" "ppEra_Run2_2018_pp_on_AA" "cosmicsHybridEra_Run2_2018" "cosmicsEra_Run3" "hcalnzsEra_Run3" "ppEra_Run3" "AlCaLumiPixels_Run3" "AlCaPhiSymEcal_Nano" "AlCaPPS_Run3" "ppEra_Run3_pp_on_PbPb" "hcalnzsEra_Run3_pp_on_PbPb" "ppEra_Run3_pp_on_PbPb_approxSiStripClusters" "ppEra_Run3_2023" "ppEra_Run3_pp_on_PbPb_2023" "ppEra_Run3_pp_on_PbPb_approxSiStripClusters_2023" "ppEra_Run3_2024")
for scenario in "${arr[@]}"
do
runTest "${SCRAM_TEST_PATH}/RunPromptReco.py --scenario $scenario --reco --aod --dqmio --global-tag GLOBALTAG --lfn=/store/whatever --alcareco TkAlMinBias+SiStripCalMinBias"
Expand Down
2 changes: 1 addition & 1 deletion Configuration/DataProcessing/test/run_CfgTest_8.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ function die { echo $1: status $2 ; exit $2; }

function runTest { echo $1 ; python3 $1 || die "Failure for configuration: $1" $?; }

declare -a arr=("ppEra_Run3" "ppEra_Run3_2023" "ppEra_Run3_2023_repacked")
declare -a arr=("ppEra_Run3" "ppEra_Run3_2023" "ppEra_Run3_2023_repacked" "ppEra_Run3_2024")
for scenario in "${arr[@]}"
do
runTest "${SCRAM_TEST_PATH}/RunPromptReco.py --scenario $scenario --reco --aod --miniaod --nanoaod --dqmio --global-tag GLOBALTAG --lfn=/store/whatever --alcareco TkAlMinBias+SiStripCalMinBias"
Expand Down
5 changes: 5 additions & 0 deletions Configuration/Eras/python/Era_Run3_2024_cff.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
import FWCore.ParameterSet.Config as cms

from Configuration.Eras.Era_Run3_cff import Run3

Run3_2024 = cms.ModifierChain(Run3)
5 changes: 5 additions & 0 deletions Configuration/Eras/python/Era_Run3_2025_cff.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
import FWCore.ParameterSet.Config as cms

from Configuration.Eras.Era_Run3_2024_cff import Run3_2024

Run3_2025 = cms.ModifierChain(Run3_2024)
Original file line number Diff line number Diff line change
Expand Up @@ -2707,7 +2707,7 @@ def condition(self, fragment, stepList, key, hasHarvest):
class UpgradeWorkflow_DDDDB(UpgradeWorkflow):
def setup_(self, step, stepName, stepDict, k, properties):
the_era = stepDict[step][k]['--era']
if 'Run3' in the_era and '2023' not in the_era and 'Fast' not in the_era and "Pb" not in the_era:
if 'Run3' in the_era and '2023' not in the_era and '2024' not in the_era and 'Fast' not in the_era and "Pb" not in the_era:
Copy link
Contributor Author

Choose a reason for hiding this comment

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

I am not totally sure to understand what's the intent here, but this line is necessary to avoid having runtime matrix failures. I am wondering if instead of excluding explicitly every "customization" on top of Run3 one should just match exactly Run3 and be done with it (but then I don't understand the purpose of this class).
Perhaps @cms-sw/pdmv-l2 or @cms-sw/upgrade-l2 can clarify.

Copy link
Contributor

Choose a reason for hiding this comment

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

@srimanob do you have any idea of the usage of this UpgradeWorkflow_DDDDB. Sincerely I don't know/remember.

Copy link
Contributor

@srimanob srimanob Feb 1, 2024

Choose a reason for hiding this comment

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

This is to use DDD from DB, see
https://github.com/cms-sw/cmssw/blob/master/Configuration/AlCa/python/autoCondModifiers.py#L34-L75

It was invented when we move DDD to DD4hep, but we wanted to keep DDD around for 2022. That is why we have not in in several places to avoid failure due to non-existing era. I agree with @mmusich, we can just match exactly.

# retain any other eras
tmp_eras = the_era.split(',')
tmp_eras[tmp_eras.index("Run3")] = 'Run3_DDD'
Expand Down Expand Up @@ -2856,7 +2856,7 @@ def condition(self, fragment, stepList, key, hasHarvest):
'Geom' : 'DB:Extended',
'GT' : 'auto:phase1_2024_realistic',
'HLTmenu': '@relval2024',
'Era' : 'Run3',
'Era' : 'Run3_2024',
'BeamSpot': 'DBrealistic',
'ScenToRun' : ['GenSim','Digi','RecoNano','HARVESTNano','ALCA'],
},
Expand Down
2 changes: 2 additions & 0 deletions Configuration/StandardSequences/python/Eras.py
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,8 @@ def __init__(self):
'Run2_2018_noMkFit',
'Run3',
'Run3_2023',
'Run3_2024',
'Run3_2025',
'Run3_noMkFit',
'Run3_pp_on_PbPb',
'Run3_pp_on_PbPb_approxSiStripClusters',
Expand Down