Skip to content

Commit 51d384a

Browse files
author
Benedikt Volkel
committed
Modularise sim WF
* offers * explicitly select modules and detectors with --modules and --readout-detectors flags, respectively * better overview and managing of dependencies * introduce a SimulationWorkflow class * automatically resolves dependencies * introduce posiibility to identify a task by a stage and detector source such as ("RECO", "TPC") to make dependencies more clear based on what is actually going on NOTE: Still room for improvement * could do this for as many tasks as possible, atm only DIGI, RECO and MATCH tasks use this feature * task names could automatically be built from that * remove explicit TF suffix from task names and add automatically * does not add tasks for inactive detectors * possibility to compose source strings such as "ITS,TPC,TPC-TRD" automatically from proposed sources --> non-existent sources would be trimmed * some tasks adjusted to their minimal dependencies * small adjustments in o2dpg_qc_finalization_workflow.py to comply with <taskname>_<timeframe> format of tasknames per timeframe
1 parent dc72622 commit 51d384a

File tree

2 files changed

+414
-265
lines changed

2 files changed

+414
-265
lines changed

MC/bin/o2dpg_qc_finalization_workflow.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ def add_QC_finalization(taskName, qcConfigPath, needs=None):
4545
if standalone == True:
4646
needs = []
4747
elif needs == None:
48-
needs = [taskName + '_local' + str(tf) for tf in range(1, ntimeframes + 1)]
48+
needs = [taskName + '_local_' + str(tf) for tf in range(1, ntimeframes + 1)]
4949

5050
task = createTask(name=QC_finalize_name(taskName), needs=needs, cwd=qcdir, lab=["QC"], cpu=1, mem='2000')
5151
task['cmd'] = f'o2-qc --config {qcConfigPath} --remote-batch {taskName}.root' + \
@@ -74,7 +74,7 @@ def add_QC_postprocessing(taskName, qcConfigPath, needs, runSpecific, prodSpecif
7474
## The list of remote-batch workflows (reading the merged QC tasks results, applying Checks, uploading them to QCDB)
7575
MFTDigitsQCneeds = []
7676
for flp in range(5):
77-
MFTDigitsQCneeds.extend(['mftDigitsQC'+str(flp)+'_local'+str(tf) for tf in range(1, ntimeframes + 1)])
77+
MFTDigitsQCneeds.extend(['mftDigitsQC'+str(flp)+'_local_'+str(tf) for tf in range(1, ntimeframes + 1)])
7878
add_QC_finalization('mftDigitsQC', 'json://${O2DPG_ROOT}/MC/config/QC/json/qc-mft-digit-0.json', MFTDigitsQCneeds)
7979
add_QC_finalization('mftClustersQC', 'json://${O2DPG_ROOT}/MC/config/QC/json/qc-mft-cluster.json')
8080
add_QC_finalization('mftAsyncQC', 'json://${O2DPG_ROOT}/MC/config/QC/json/qc-mft-async.json')

0 commit comments

Comments
 (0)