Workflow 5851, Stage 1
Priority | 50 |
Processors | 1 |
Wall seconds | 80000 |
Image | /cvmfs/singularity.opensciencegrid.org/fermilab/fnal-wn-sl7:latest |
RSS bytes | 4193255424 (3999 MiB) |
Max distance for inputs | 100.0 |
Enabled input RSEs |
CERN_PDUNE_EOS, DUNE_CA_SFU, DUNE_CERN_EOS, DUNE_ES_PIC, DUNE_FR_CCIN2P3_DISK, DUNE_IN_TIFR, DUNE_IT_INFN_CNAF, DUNE_UK_GLASGOW, DUNE_UK_LANCASTER_CEPH, DUNE_UK_MANCHESTER_CEPH, DUNE_US_BNL_SDCC, DUNE_US_FNAL_DISK_STAGE, FNAL_DCACHE, FNAL_DCACHE_STAGING, FNAL_DCACHE_TEST, MONTECARLO, NIKHEF, PRAGUE, QMUL, RAL-PP, RAL_ECHO, SURFSARA, T3_US_NERSC |
Enabled output RSEs |
CERN_PDUNE_EOS, DUNE_CA_SFU, DUNE_CERN_EOS, DUNE_ES_PIC, DUNE_FR_CCIN2P3_DISK, DUNE_IN_TIFR, DUNE_IT_INFN_CNAF, DUNE_UK_GLASGOW, DUNE_UK_LANCASTER_CEPH, DUNE_UK_MANCHESTER_CEPH, DUNE_US_BNL_SDCC, DUNE_US_FNAL_DISK_STAGE, FNAL_DCACHE, FNAL_DCACHE_STAGING, FNAL_DCACHE_TEST, NIKHEF, PRAGUE, QMUL, RAL-PP, RAL_ECHO, SURFSARA, T3_US_NERSC |
Enabled sites |
BR_CBPF, CA_SFU, CA_Victoria, CERN, CH_UNIBE-LHEP, ES_CIEMAT, ES_PIC, FR_CCIN2P3, IN_TIFR, IT_CNAF, NL_SURFsara, UK_Bristol, UK_Brunel, UK_Durham, UK_Edinburgh, UK_Lancaster, UK_Liverpool, UK_Manchester, UK_Oxford, UK_QMUL, UK_RAL-PPD, UK_RAL-Tier1, UK_Sheffield, US_Caltech, US_Colorado, US_FNAL-FermiGrid, US_FNAL-T1, US_Michigan, US_MIT, US_Nebraska, US_NotreDame, US_PuertoRico, US_SU-ITS, US_Swan, US_UChicago, US_UConn-HPC, US_UCSD, US_Wisconsin |
Scope | usertests |
Events for this stage |
Output patterns
| Destination | Pattern | Lifetime | For next stage | RSE expression |
---|
1 | https://fndcadoor.fnal.gov:2880/dune/scratch/users/calcuttj/g4beamline_prod/H4_test_full/05851/1 | *root | | | |
Environment variables
Name | Value |
---|
BEAMLINE | H4 |
G4BL_DIR | /cvmfs/fifeuser3.opensciencegrid.org/sw/dune/023b964308029fd1755f5b4a2ae2fc05d5107859/ |
G4DATA_DIR | /cvmfs/fifeuser3.opensciencegrid.org/sw/dune/754ab2932db4c5a30549905327154f5c7a9f083c/ |
INPUT_DIR | /cvmfs/fifeuser4.opensciencegrid.org/sw/dune/d5f4ec0a3e82cd28de716fb2c92390a8a0dc7a8b/ |
NPART | 10000 |
PACK_DIR | /cvmfs/fifeuser3.opensciencegrid.org/sw/dune/3851f3036b8fdf366c8f0dd3fe8fea81c1d30f87/ |
File states
Total files | Finding | Unallocated | Allocated | Outputting | Processed | Not found | Failed |
---|
|
1000 | 0 | 1000 | 0 | 0 | 0 | 0 | 0 |
Job states
Total | Submitted | Started | Processing | Outputting | Finished | Notused | Aborted | Stalled | Jobscript error | Outputting failed | None processed |
---|
1385 | 0 | 0 | 0 | 0 | 0 | 0 | 5 | 1284 | 96 | 0 | 0 |
RSEs used
Name | Inputs | Outputs |
---|
MONTECARLO | 1321 | 0 |
Stats of processed input files as CSV or JSON, and of uploaded output files as CSV or JSON (up to 10000 files included)
File reset events, by site
Site | Allocated | Outputting |
---|
US_FNAL-FermiGrid | 277 | 0 |
UK_RAL-PPD | 242 | 0 |
ES_PIC | 177 | 0 |
US_UChicago | 119 | 0 |
UK_RAL-Tier1 | 84 | 0 |
FR_CCIN2P3 | 80 | 0 |
UK_Sheffield | 64 | 0 |
CERN | 41 | 0 |
UK_QMUL | 38 | 0 |
US_Colorado | 31 | 0 |
UK_Oxford | 31 | 0 |
UK_Durham | 25 | 0 |
UK_Brunel | 9 | 0 |
UK_Lancaster | 7 | 0 |
Jobscript
#!/bin/bash
SECONDS=0
## Set the poolarity
export POLARITY="${POLARITY:-+}"
if [ $POLARITY != "+" ] && [ ${POLARITY} != "-" ]; then
echo "ERROR MUST SUPPLY + OR - TO POLARITY"
exit 1
fi
##Set the upstream momentum
export PMOMENTUM="${POLARITY:-+}80000"
echo "PMOMENTUM: ${PMOMENTUM}"
export BEAMLINE="${BEAMLINE:-H4}"
export INFILE=${BEAMLINE}.in
export CENTRALP="${CENTRALP:-1}" #Set the momentum going into protodune
export MOMENTUMVLE="${POLARITY}${CENTRALP}" #"3"
echo "MOMENTUMVLE: ${MOMENTUMVLE}"
##Number of POT to run
export PARTPERJOB=${NPART:-100}
export ADDPARAM="momentumVLE=$MOMENTUMVLE pMomentum=$PMOMENTUM"
export ADDFILES=""
if [ -z ${JUSTIN_PROCESSORS} ]; then
JUSTIN_PROCESSORS=1
fi
echo "Justin processors: ${JUSTIN_PROCESSORS}"
export TF_NUM_THREADS=${JUSTIN_PROCESSORS}
export OPENBLAS_NUM_THREADS=${JUSTIN_PROCESSORS}
export JULIA_NUM_THREADS=${JUSTIN_PROCESSORS}
export MKL_NUM_THREADS=${JUSTIN_PROCESSORS}
export NUMEXPR_NUM_THREADS=${JUSTIN_PROCESSORS}
export OMP_NUM_THREADS=${JUSTIN_PROCESSORS}
JOBID=1
#JOBID=`echo "${JUSTIN_JOBSUB_ID:-1}" | cut -f1 -d'@' | sed -e "s/\./_/"`
#echo "Jobid: ${JOBID}"
#export JOBID=$(($st+1)) ##TODO -- REPLACE WITH JUSTIN JOB
##Get the MC number from this to bookkeep for justin
DID_PFN_RSE=`$JUSTIN_PATH/justin-get-file`
pfn_exit=$?
if [ $pfn_exit -ne 0 ]; then
echo "Error in justin-get-file. Exiting safely"
exit 0
fi
echo "did_pfn_rse $DID_PFN_RSE"
pfn=`echo $DID_PFN_RSE | cut -f2 -d' '`
echo $INPUT_DIR
ls $INPUT_DIR
echo $G4DATA_DIR
ls $G4DATA_DIR
#cp -rs $G4DATA_DIR ./Geant4Data/
ln -s $G4DATA_DIR/Geant4Data ./Geant4Data
echo $G4BL_DIR
ls $G4BL_DIR
cp -rs $G4BL_DIR/g4bl ./g4bl
export G4BL_DIR=$PWD/g4bl
echo $PACK_DIR
ls $PACK_DIR
for i in $PACK_DIR/*; do
ln -s $i .
done
#Unpack all the tars -- TODO: put on cvmfs as a single tar
#echo "Unpacking g4bl"
#tar -xzf $INPUT_DIR/g4bl.tar.gz --checkpoint=1000
#if [ $? -ne 0 ]
#then
# echo "Exiting with error"
# exit 1
#fi
#
#echo "Unpacking Geant4Data"
#tar -xzf $INPUT_DIR/Geant4Data.tar.gz --checkpoint=1000
#if [ $? -ne 0 ]
#then
# echo "Exiting with error"
# exit 1
#fi
CURDIR=$(pwd)
echo $CURDIR/Geant4Data > g4bl/.data
#echo "Unpacking Inputfiles Pack"
#tar -xzf $INPUT_DIR/pack.tar.gz --checkpoint=1000
#if [ $? -ne 0 ]
#then
# echo "Exiting with error"
# exit 1
#fi
#Run
echo "running"
#$CURDIR
./g4bl/bin/g4bl $INFILE jobID=$JOBID totNumEv=$PARTPERJOB $ADDPARAM 2>&1 | tee g4bloutput.txt
g4bl_res=$?
if [ $g4bl_res -ne 0 ]
then
echo "Failed running g4bl"
exit $g4bl_res
fi
echo "ran"
#Clean up
unlink Geant4Data
rm -rf g4bl
for i in *.in *.map; do
unlink ${i}
done
#Add timestamp to the output
now=$(date -u +"%Y%m%dT%H%M%SZ")
oldname=`ls ${BEAMLINE}*.root`
newname=`echo ${oldname} | sed -e "s/.root/_${now}_${pfn}.root/"`
mv ${oldname} ${newname}
if [ $? -ne 0 ]
then
echo "Failed renaming ${oldname} ${newname}"
exit 1
fi
if [ $POLARITY != "+" ]; then
polar_str="pos"
else
polar_str="neg"
fi
subrun=`echo $JUSTIN_JOBSUB_ID | cut -f1 -d@ | cut -f2 -d.`
run=`echo $JUSTIN_JOBSUB_ID | cut -f1 -d@ | cut -f1 -d.`
python $INPUT_DIR/make_g4bl_metadata.py \
--bl "${BEAMLINE}" --polarity $polar_str --momentum $CENTRALP \
--run $run --subrun $subrun --name $newname \
--namespace ${JUSTIN_SCOPE:-dummy}
if [ $? -ne 0 ]
then
echo "Exiting with error"
exit 1
else
echo "$pfn" > justin-processed-pfns.txt
fi
#errorsSaving=$((`cat g4bloutput.txt | grep "Error in <T" | wc -l`))
#if [ $errorsSaving -ne 0 ]
#then
# echo "Exiting with error"
# exit 1
#fi
#
#echo "RUNTIME: $SECONDS seconds elapsed."