Skip to content

Commit 14259aa

Browse files
Merge branch 'AliceO2Group:master' into master
2 parents 960a72a + 7278c4a commit 14259aa

66 files changed

Lines changed: 3666 additions & 97 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

DATA/common/setenv_calib.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ if [[ $SYNCMODE == 1 ]] && has_processing_step ENTROPY_ENCODER && [[ ! -z "$WORK
3434
# for async recalibration
3535
if has_detector_calib EMC && has_detector_reco EMC && [[ $SYNCMODE != 1 ]]; then CAN_DO_CALIB_EMC_ASYNC_RECALIB=1; else CAN_DO_CALIB_EMC_ASYNC_RECALIB=0; fi
3636
if [[ $SYNCMODE != 1 ]] && has_detector_reco TPC; then CAN_DO_CALIB_ASYNC_EXTRACTTPCCURRENTS=1; else CAN_DO_CALIB_ASYNC_EXTRACTTPCCURRENTS=0; fi
37-
if [[ $SYNCMODE != 1 ]] && has_detector_reco TPC && has_detector_reco ITS && has_detector_reco FT0; then CAN_DO_CALIB_ASYNC_EXTRACTTIMESERIES=1; else CAN_DO_CALIB_ASYNC_EXTRACTTIMESERIES=0; fi
37+
if [[ $SYNCMODE != 1 ]] && has_detector_reco TPC; then CAN_DO_CALIB_ASYNC_EXTRACTTIMESERIES=1; else CAN_DO_CALIB_ASYNC_EXTRACTTIMESERIES=0; fi
3838

3939
# additional individual settings for calibration workflows
4040
if has_detector CTP; then export CALIB_TPC_SCDCALIB_CTP_INPUT="--enable-ctp"; else export CALIB_TPC_SCDCALIB_CTP_INPUT=""; fi

DATA/production/calib/tpc-laser-filter.sh

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ source common/setenv.sh
44

55
source common/getCommonArgs.sh
66

7-
source common/gen_topo_helper_functions.sh
7+
source common/gen_topo_helper_functions.sh
88

99
FILEWORKDIR="/home/wiechula/processData/inputFilesTracking/triggeredLaser"
1010

@@ -63,7 +63,7 @@ REMAP="--condition-remap \"file://${FILEWORKDIR}=GLO/Config/GRPECS,GLO/Config/GR
6363
RECO_CONFIG="NameConf.mDirGRP=$FILEWORKDIR;"
6464
RECO_CONFIG+="NameConf.mDirGeom=$FILEWORKDIR2;"
6565
RECO_CONFIG+="NameConf.mDirCollContext=$FILEWORKDIR;"
66-
RECO_CONFIG+="NameConf.mDirMatLUT=$FILEWORKDIR;"
66+
RECO_CONFIG+="NameConf.mDirMatLUT=$FILEWORKDIR;"
6767
RECO_CONFIG+="align-geom.mDetectors=none;"
6868
RECO_CONFIG+="GPU_global.deviceType=$GPUTYPE;"
6969
RECO_CONFIG+="GPU_proc.tpcIncreasedMinClustersPerRow=500000;"
@@ -81,7 +81,8 @@ RECO_CONFIG+="GPU_rec_tpc.trackFollowingMaxRowGap=15;GPU_rec_tpc.trackFollowingM
8181
WORKFLOW=
8282
add_W o2-dpl-raw-proxy "--dataspec \"$PROXY_INSPEC\" --inject-missing-data --channel-config \"name=readout-proxy,type=pull,method=connect,address=ipc://@tf-builder-pipe-0,transport=shmem,rateLogging=1\"" "" 0
8383
add_W o2-tpc-raw-to-digits-workflow "--ignore-grp --input-spec \"$CALIB_INSPEC\" --remove-duplicates --pipeline tpc-raw-to-digits-0:20 --send-ce-digits " "${RAWDIGIT_CONFIG}"
84-
add_W o2-tpc-reco-workflow " ${TPC_CORR_SCALING:-} --disable-ctp-lumi-request --input-type digitizer --output-type \"tracks,disable-writer,clusters\" --disable-mc --pipeline tpc-zsEncoder:20,tpc-tracker:8 ${GPU_CONFIG} ${REMAP} " "${RECO_CONFIG}"
84+
add_W o2-tpc-scaler-workflow "--disable-IDC-scalers --disable-ctp-lumi-request"
85+
add_W o2-tpc-reco-workflow " --input-type digitizer --output-type \"tracks,disable-writer,clusters\" --disable-mc --pipeline tpc-zsEncoder:20,tpc-tracker:8 ${GPU_CONFIG} ${REMAP} " "${RECO_CONFIG}"
8586
add_W o2-tpc-laser-track-filter "" "" 0
8687
add_W o2-dpl-output-proxy " --proxy-name tpc-laser-input-proxy --proxy-channel-name tpc-laser-input-proxy --dataspec \"$PROXY_OUTSPEC\" --channel-config \"name=tpc-laser-input-proxy,method=connect,type=push,transport=zeromq,rateLogging=0\" " "" 0
8788
add_QC_from_apricot "${QC_CONFIG}" "--local --host localhost"

DATA/production/calib/tpc-laser.sh

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ source common/setenv.sh
44

55
source common/getCommonArgs.sh
66

7-
source common/gen_topo_helper_functions.sh
7+
source common/gen_topo_helper_functions.sh
88

99
FILEWORKDIR="/home/wiechula/processData/inputFilesTracking/triggeredLaser"
1010

@@ -77,7 +77,7 @@ if [[ ! -z ${TPC_CALIB_LANES_PAD_RAW:-} ]]; then
7777
num_lanes=${TPC_CALIB_LANES_PAD_RAW}
7878
fi
7979

80-
EXTRA_CONFIG="--calib-type ce --publish-after-tfs ${publish_after} --max-events ${max_events} --lanes ${num_lanes} --check-calib-infos"
80+
EXTRA_CONFIG="--calib-type ce --publish-after-tfs ${publish_after} --max-events ${max_events} --lanes ${num_lanes} --check-calib-infos"
8181

8282
LASER_DECODER_ADD=''
8383

@@ -100,7 +100,8 @@ RECO_CONFIG+="GPU_rec_tpc.trackFollowingMaxRowGap=15;GPU_rec_tpc.trackFollowingM
100100
WORKFLOW=
101101
add_W o2-dpl-raw-proxy "--dataspec \"$PROXY_INSPEC\" --inject-missing-data --channel-config \"name=readout-proxy,type=pull,method=connect,address=ipc://@tf-builder-pipe-0,transport=shmem,rateLogging=1\"" "" 0
102102
add_W o2-tpc-raw-to-digits-workflow "--ignore-grp --input-spec \"$CALIB_INSPEC\" --remove-duplicates --pipeline tpc-raw-to-digits-0:20 --send-ce-digits " "${RAWDIGIT_CONFIG}"
103-
add_W o2-tpc-reco-workflow " --disable-ctp-lumi-request --input-type digitizer --output-type \"tracks,disable-writer\" --disable-mc --pipeline tpc-zsEncoder:20,tpc-tracker:8 ${GPU_CONFIG} ${REMAP}" "${RECO_CONFIG}"
103+
add_W o2-tpc-scaler-workflow "--disable-IDC-scalers --disable-ctp-lumi-request"
104+
add_W o2-tpc-reco-workflow "--input-type digitizer --output-type \"tracks,disable-writer\" --disable-mc --pipeline tpc-zsEncoder:20,tpc-tracker:8 ${GPU_CONFIG} ${REMAP}" "${RECO_CONFIG}"
104105
add_W o2-tpc-laser-track-filter "" "" 0
105106
add_W o2-tpc-calib-laser-tracks "--use-filtered-tracks ${EXTRA_CONFIG_TRACKS} --min-tfs=${min_tracks}"
106107
add_W o2-tpc-calib-pad-raw " ${EXTRA_CONFIG}" "${CALIB_CONFIG}"

DATA/production/common/readAO2Ds.C

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,17 @@ int readAO2Ds(const char* filename = "AO2D.root")
3535
std::cout << onameKeyInDir.Data() << std::endl;
3636
}
3737
TTree* t = (TTree*)d->Get(onameKeyInDir.Data());
38+
// Check that every branch has the same number of entries as the tree itself.
39+
// A mismatch indicates a corrupted or truncated write.
40+
long long treeEntries = t->GetEntries();
41+
for (auto* b : *t->GetListOfBranches()) {
42+
auto* br = (TBranch*)b;
43+
if (br->GetEntries() != treeEntries) {
44+
printf("MISMATCH %s/%s branch %s: tree=%lld branch=%lld\n",
45+
onameKeyInFile.Data(), onameKeyInDir.Data(), br->GetName(), treeEntries, br->GetEntries());
46+
retCode |= 4;
47+
}
48+
}
3849
if (onameKeyInDir.BeginsWith("O2track") && !onameKeyInDir.Contains("O2tracked") && !onameKeyInDir.Contains("O2trackqa")) {
3950
vectNEntriesPerTree.push_back({onameKeyInDir.Data(), t->GetEntries()});
4051
}

DATA/production/production.desc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
synchronous-workflow: "O2PDPSuite" reco,128,126,"GPU_NUM_MEM_REG_CALLBACKS=5 SYNCMODE=1 NUMAGPUIDS=1 NUMAID=0 production/dpl-workflow.sh" reco,128,126,"GPU_NUM_MEM_REG_CALLBACKS=5 SYNCMODE=1 NUMAGPUIDS=1 NUMAID=1 production/dpl-workflow.sh"
22
synchronous-workflow-1numa: "O2PDPSuite" reco,128,126,"SYNCMODE=1 production/dpl-workflow.sh"
3-
synchronous-workflow-calib: "O2PDPSuite" reco,128,126,"GPU_NUM_MEM_REG_CALLBACKS=5 SYNCMODE=1 NUMAGPUIDS=1 NUMAID=0 WORKFLOW_PARAMETERS+=,CALIB_PROXIES production/dpl-workflow.sh" reco,128,126,"GPU_NUM_MEM_REG_CALLBACKS=5 SYNCMODE=1 NUMAGPUIDS=1 NUMAID=1 WORKFLOW_PARAMETERS+=,CALIB_PROXIES production/dpl-workflow.sh" calib,32,"AGGREGATOR_TASKS=BARREL_TF SYNCMODE=1 SHMSIZE=68719476736 WORKFLOW_PARAMETERS+=,CALIB_PROXIES production/aggregator-workflow.sh" calib,32,"AGGREGATOR_TASKS=BARREL_SPORADIC SYNCMODE=1 SHMSIZE=68719476736 WORKFLOW_PARAMETERS+=,CALIB_PROXIES production/aggregator-workflow.sh" calib,16,"AGGREGATOR_TASKS=CALO_TF SYNCMODE=1 SHMSIZE=34359738368 WORKFLOW_PARAMETERS+=,CALIB_PROXIES production/aggregator-workflow.sh" calib,16,"AGGREGATOR_TASKS=CALO_SPORADIC SYNCMODE=1 SHMSIZE=34359738368 WORKFLOW_PARAMETERS+=,CALIB_PROXIES production/aggregator-workflow.sh" calib,16,"AGGREGATOR_TASKS=MUON_TF SYNCMODE=1 SHMSIZE=34359738368 WORKFLOW_PARAMETERS+=,CALIB_PROXIES production/aggregator-workflow.sh" calib,16,"AGGREGATOR_TASKS=MUON_SPORADIC SYNCMODE=1 SHMSIZE=34359738368 WORKFLOW_PARAMETERS+=,CALIB_PROXIES production/aggregator-workflow.sh" calib,16,"AGGREGATOR_TASKS=FORWARD_TF SYNCMODE=1 SHMSIZE=34359738368 WORKFLOW_PARAMETERS+=,CALIB_PROXIES production/aggregator-workflow.sh" calib,16,"AGGREGATOR_TASKS=FORWARD_SPORADIC SYNCMODE=1 SHMSIZE=34359738368 WORKFLOW_PARAMETERS+=,CALIB_PROXIES production/aggregator-workflow.sh" calib,128,"AGGREGATOR_TASKS=TPC_IDCBOTH_SAC SHMSIZE=137438953472 WORKFLOW_PARAMETERS+=,CALIB_PROXIES production/aggregator-workflow.sh"
3+
synchronous-workflow-calib: "O2PDPSuite" reco,128,126,"GPU_NUM_MEM_REG_CALLBACKS=5 SYNCMODE=1 NUMAGPUIDS=1 NUMAID=0 WORKFLOW_PARAMETERS+=,CALIB_PROXIES production/dpl-workflow.sh" reco,128,126,"GPU_NUM_MEM_REG_CALLBACKS=5 SYNCMODE=1 NUMAGPUIDS=1 NUMAID=1 WORKFLOW_PARAMETERS+=,CALIB_PROXIES production/dpl-workflow.sh" calib,32,"AGGREGATOR_TASKS=BARREL_TF SYNCMODE=1 SHMSIZE=68719476736 WORKFLOW_PARAMETERS+=,CALIB_PROXIES production/aggregator-workflow.sh" calib,32,"AGGREGATOR_TASKS=BARREL_SPORADIC SYNCMODE=1 SHMSIZE=68719476736 WORKFLOW_PARAMETERS+=,CALIB_PROXIES production/aggregator-workflow.sh" calib,16,"AGGREGATOR_TASKS=CALO_TF SYNCMODE=1 SHMSIZE=34359738368 WORKFLOW_PARAMETERS+=,CALIB_PROXIES production/aggregator-workflow.sh" calib,16,"AGGREGATOR_TASKS=CALO_SPORADIC SYNCMODE=1 SHMSIZE=34359738368 WORKFLOW_PARAMETERS+=,CALIB_PROXIES production/aggregator-workflow.sh" calib,16,"AGGREGATOR_TASKS=MUON_TF SYNCMODE=1 SHMSIZE=34359738368 WORKFLOW_PARAMETERS+=,CALIB_PROXIES production/aggregator-workflow.sh" calib,16,"AGGREGATOR_TASKS=MUON_SPORADIC SYNCMODE=1 SHMSIZE=34359738368 WORKFLOW_PARAMETERS+=,CALIB_PROXIES production/aggregator-workflow.sh" calib,16,"AGGREGATOR_TASKS=FORWARD_TF SYNCMODE=1 SHMSIZE=34359738368 WORKFLOW_PARAMETERS+=,CALIB_PROXIES production/aggregator-workflow.sh" calib,16,"AGGREGATOR_TASKS=FORWARD_SPORADIC SYNCMODE=1 SHMSIZE=34359738368 WORKFLOW_PARAMETERS+=,CALIB_PROXIES production/aggregator-workflow.sh" calib,128,"AGGREGATOR_TASKS=TPC_IDCBOTH_SAC SHMSIZE=137438953472 WORKFLOW_PARAMETERS+=,CALIB_PROXIES production/aggregator-workflow.sh" calib,128,"AGGREGATOR_TASKS=TPC_CMV SHMSIZE=137438953472 WORKFLOW_PARAMETERS+=,CALIB_PROXIES production/aggregator-workflow.sh"

DATA/production/workflow-multiplicities.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -301,8 +301,8 @@ if [[ "$HIGH_RATE_PP" == "1" ]]; then
301301
: ${CUT_RANDOM_FRACTION_ITS:=0.97}
302302
elif [[ $BEAMTYPE == "PbPb" ]]; then
303303
: ${CUT_RANDOM_FRACTION_ITS:=-1}
304-
: ${CUT_MULT_MIN_ITS:=100}
305-
: ${CUT_MULT_MAX_ITS:=200}
304+
: ${CUT_MULT_MIN_ITS:=0}
305+
: ${CUT_MULT_MAX_ITS:=400}
306306
: ${CUT_MULT_VTX_ITS:=20}
307307
else
308308
: ${CUT_RANDOM_FRACTION_ITS:=0.95}

MC/bin/o2dpg_sim_workflow.py

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,8 @@
126126
# help='Treat smaller sensors in a single digitization')
127127
parser.add_argument('--pregenCollContext', action='store_true', help=argparse.SUPPRESS) # Now the default, giving this option or not makes not difference. We keep it for backward compatibility
128128
parser.add_argument('--data-anchoring', type=str, default='', help="Take collision contexts (from data) stored in this path")
129+
parser.add_argument('--aod-output-folder', type=str, default='', help="Force this AOD folder in the AOD producer")
130+
parser.add_argument('--aod-parent-file', type=str, default='', help="Link this as parent file in the AOD")
129131
parser.add_argument('--no-combine-smaller-digi', action='store_true', help=argparse.SUPPRESS)
130132
parser.add_argument('--no-combine-dpl-devices', action='store_true', help=argparse.SUPPRESS)
131133
parser.add_argument('--no-mc-labels', action='store_true', default=False, help=argparse.SUPPRESS)
@@ -672,7 +674,7 @@ def getDPL_global_options(bigshm=False, ccdbbackend=True, runcommand=True):
672674
f'--timestamp {args.timestamp}',
673675
f'--import-external {args.data_anchoring}' if len(args.data_anchoring) > 0 else None,
674676
'--bcPatternFile ccdb',
675-
' --nontrivial-mu-distribution ccdb://https://alice-ccdb.cern.ch/FTO/Calib/EventsPerBc',
677+
' --nontrivial-mu-distribution ccdb://https://alice-ccdb.cern.ch/FT0/Calib/EventsPerBc',
676678
f'--QEDinteraction {qedspec}' if includeQED else None
677679
], configname = 'precollcontext')
678680
workflow['stages'].append(PreCollContextTask)
@@ -1796,6 +1798,16 @@ def getDigiTaskName(det):
17961798
if created_by_option != '':
17971799
created_by_option += ' ' + aod_creator
17981800

1801+
aod_parent_option = option_if_available('o2-aod-producer-workflow', '--aod-parent', envfile=async_envfile)
1802+
if aod_parent_option != '' and len(args.aod_parent_file) > 0:
1803+
aod_parent_option += ' ' + args.aod_parent_file
1804+
else:
1805+
aod_parent_option = ''
1806+
1807+
aod_timeframe_id = f"${{ALIEN_PROC_ID}}{aod_df_id}" if not args.run_anchored else ""
1808+
if len(args.aod_output_folder) > 0:
1809+
aod_timeframe_id = args.aod_output_folder
1810+
17991811
AODtask = createTask(name='aod_'+str(tf), needs=aodneeds, tf=tf, cwd=timeframeworkdir, lab=["AOD"], mem='4000', cpu='1')
18001812
AODtask['cmd'] = ('','ln -nfs ../bkg_Kine.root . ;')[doembedding]
18011813
AODtask['cmd'] += '[ -f AO2D.root ] && rm AO2D.root; '
@@ -1812,12 +1824,13 @@ def getDigiTaskName(det):
18121824
"--anchor-pass ${ALIEN_JDL_LPMANCHORPASSNAME:-unknown}",
18131825
"--anchor-prod ${ALIEN_JDL_LPMANCHORPRODUCTION:-unknown}",
18141826
"--reco-pass ${ALIEN_JDL_LPMPASSNAME:-unknown}",
1827+
aod_parent_option,
18151828
created_by_option,
18161829
"--combine-source-devices" if not args.no_combine_dpl_devices else "",
18171830
"--disable-mc" if args.no_mc_labels else "",
18181831
"--enable-truncation 0" if environ.get("O2DPG_AOD_NOTRUNCATE") or environ.get("ALIEN_JDL_O2DPG_AOD_NOTRUNCATE") else "",
18191832
"--disable-strangeness-tracker" if args.no_strangeness_tracking else "",
1820-
f"--aod-timeframe-id ${{ALIEN_PROC_ID}}{aod_df_id}" if not args.run_anchored else "",
1833+
f"--aod-timeframe-id {aod_timeframe_id}" if len(aod_timeframe_id) > 0 else ""
18211834
])
18221835
# Consider in future: AODtask['disable_alternative_reco_software'] = True # do not apply reco software here (we prefer latest aod converter)
18231836
workflow['stages'].append(AODtask)

MC/config/PWGEM/external/generator/Generator_pythia8_GapTriggered_DYLL.C renamed to MC/config/PWGEM/external/generator/Generator_pythia8_GapTriggered_DYll.C

File renamed without changes.

0 commit comments

Comments
 (0)