20th March: justIN upgraded to 01.03 - please report any problems in #computing-operations or #user_grid_usage on Slack
Workflow 5780, Stage 1
Priority | 50 |
Processors | 1 |
Wall seconds | 80000 |
Image | /cvmfs/singularity.opensciencegrid.org/fermilab/fnal-wn-sl7:latest |
RSS bytes | 6815744000 (6500 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, CZ_FZU, ES_CIEMAT, ES_PIC, FR_CCIN2P3, IN_TIFR, IT_CNAF, NL_NIKHEF, NL_SURFsara, UK_Bristol, UK_Brunel, UK_Durham, UK_Edinburgh, UK_Glasgow, UK_Imperial, 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/ykermaid/pdvd_muon/05780/1 | prod_muon_*.* | | | |
Environment variables
Name | Value |
---|
DUNESW_TAR | /cvmfs/fifeuser2.opensciencegrid.org/sw/dune/497fe0b9af7ebfe5ac11fff59041e9416f4d09cb |
MCJob | 1 |
NEVENTS | 10 |
pipyaml | 1 |
UTIL_TAR | /cvmfs/fifeuser3.opensciencegrid.org/sw/dune/199131cee684dd1320bd420afcd34d86f3b3b48c |
YAMLFILE | pdvd_muon_m_450MeV_gen.yaml |
File states
Total files | Finding | Unallocated | Allocated | Outputting | Processed | Not found | Failed |
---|
|
1000 | 0 | 0 | 0 | 0 | 1000 | 0 | 0 |
Job states
Total | Submitted | Started | Processing | Outputting | Finished | Notused | Aborted | Stalled | Jobscript error | Outputting failed | None processed |
---|
1513 | 0 | 0 | 0 | 0 | 1198 | 0 | 0 | 2 | 35 | 0 | 278 |
RSEs used
Name | Inputs | Outputs |
---|
MONTECARLO | 1037 | 0 |
None | 0 | 15000 |
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 | 2 | 0 |
Jobscript
#!/bin/bash
#
#These must be defined
#if [ -z $FCL_FILE ]; then
# echo "Fatal Must provide FCL_FILE env var"
# exit 1
#fi
if [ -z $UTIL_TAR ]; then
echo "Fatal must provide UTIL_TAR env var"
exit 1
fi
export PYTHONPATH=$UTIL_TAR:$PYTHONPATH
source /cvmfs/dune.opensciencegrid.org/products/dune/setup_dune.sh
setup metacat
export METACAT_SERVER_URL=https://metacat.fnal.gov:9443/dune_meta_prod/app
export METACAT_AUTH_SERVER_URL=https://metacat.fnal.gov:8143/auth/dune
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}
echo "Justin specific env vars"
env | grep JUSTIN
now=$(date -u +"%Y%m%dT%H%M%SZ")
jobid=`echo "${JUSTIN_JOBSUB_ID:-1}" | cut -f1 -d'@' | sed -e "s/\./_/"`
stageid=${JUSTIN_STAGE_ID:-1}
a=1
if [ -n "$DUNESW_TAR" ]; then
stat ${DUNESW_TAR}
if [ $? -ne 0 ]; then
echo "Failed to stat $DUNESW_TAR. Exiting safely"
exit 0
fi
export PRODUCTS=$DUNESW_TAR:$PRODUCTS
echo "Set dunesw to $DUNESW_TAR"
fi
if [ -n "$WIRECELL_TAR" ]; then
stat ${WIRECELL_TAR}
if [ $? -ne 0 ]; then
echo "Failed to stat $WIRECELL_TAR. Exiting safely"
exit 0
fi
export PRODUCTS=$WIRECELL_TAR:$PRODUCTS
echo "Set wirecell to $WIRECELL_TAR"
fi
#Setup recent lar software suite
DUNESW_VERSION=${DUNESW_VERSION:-v10_04_01d00}
setup dunesw \
"${DUNESW_VERSION}" \
-q "${DUNE_QUALIFIER:-e26:prof}"
setup_exit=$?
if [ $? -ne 0 ]; then
echo "Failed to setup dunesw $DUNESW_VERSION $DUNE_QUALIFIER"
exit $setup_exit
fi
echo "DUNESW loc:"
ups active | grep dunesw
echo "WIRECELL loc:"
ups active | grep wirecell
export FHICL_FILE_PATH=${DUNESW_TAR}:${FHICL_FILE_PATH}
export FW_SEARCH_PATH=${DUNESW_TAR}:${FW_SEARCH_PATH}
echo "printing env"
env
echo "DUNE specific env vars"
env | grep DUNE
# User can specify to pip install pyyaml
if [ -n "$pipyaml" ]; then
echo "Installing yaml"
pip install --user pyyaml
echo "Done"
# elif [ -n "${YAML_TAR}" ]; then
# echo "Using venv at ${YAML_TAR}"
# source ${YAML_TAR}/yaml_venv/bin/activate
fi
echo "Will use justin-get-file"
DID_PFN_RSE=`$JUSTIN_PATH/justin-get-file`
if [ "${DID_PFN_RSE}" == "" ] ; then
echo "Could not get file"
exit 0
fi
pfn=`echo ${DID_PFN_RSE} | cut -f2 -d' '`
did=`echo ${DID_PFN_RSE} | cut -f1 -d' '`
input_filename=`echo $did | cut -f2 -d':'`
echo "input file: $input_filename"
echo "jobsub_id: ${JUSTIN_JOBSUB_ID:-1}"
#Get run/subrun from parent if using input -- else from justin job ID/process"
if [ -z "$MCJob" ]; then
echo "Getting run subrun from $did"
run_subrun=`python -m beam_job_utils get_run_subrun -i $did`
get_run_ret=$?
if [ $get_run_ret -ne 0 ]; then
echo "error in get_run_subrun"
fi
echo $run_subrun
run=`echo $run_subrun | cut -f1 -d' '`
subrun=`echo $run_subrun | cut -f2 -d' '`
else
run=`echo $jobid | cut -f1 -d'_'` ##TODO -- check order here
subrun=`echo $jobid | cut -f2 -d'_'`
fi
nevents=${NEVENTS:--1} #Set from env override or -1
NSKIP=${NSKIP:-0}
echo "nevents: $nevents"
overrides="core.data_tier=full-reconstructed \
core.application.version=${DUNESW_VERSION} \
core.application.name=reco \
core.application.family=dunesw \
core.application=dunesw.reco \
"
#User specifies if they'd like to use an input file or not
if [ -n "$MCJob" ]; then
inputflag=""
else
inputflag="-i $pfn --parent $did"
fi
echo "input flag: $inputflag"
# TODO -- metadata file configurable
python -m beam_job_utils run_job \
--json ${UTIL_TAR}/pdvd_muon_base_meta.json \
--overrides ${overrides} \
--run $run \
--subrun $subrun \
--yaml ${UTIL_TAR}/${YAMLFILE:-pdvd_muon_gen.yaml} \
--nevents $nevents \
$inputflag
exitcode=$?
if [ $exitcode -ne 0 ]; then
echo "Error running. Exiting with ${exitcode}"
exit $exitcode
fi
echo "$pfn" > justin-processed-pfns.txt