56 lines
1.6 KiB
Bash
Executable File
56 lines
1.6 KiB
Bash
Executable File
#!/bin/sh
|
|
# shows job progress at gridengine queues
|
|
|
|
CEXMC_PREFIX=cexmc_
|
|
|
|
qstat -u $USER
|
|
|
|
jobids=`qstat -u $USER | sed '1,2d' | grep $CEXMC_PREFIX | awk '{print $1}'`
|
|
jobbasenames=`qstat -u $USER -r | grep 'Full jobname' | grep $CEXMC_PREFIX | \
|
|
awk '{print $3}'`
|
|
jobnames=""
|
|
|
|
i=1
|
|
for jobbasename in $jobbasenames ; do
|
|
jobnames=$jobnames' '$jobbasename.o`echo $jobids | awk "{print \\$$i}"`
|
|
(( ++i ))
|
|
done
|
|
|
|
i=1
|
|
echo ---------------
|
|
for job in $jobnames ; do
|
|
msgperc="N/A"
|
|
fdbsize="N/A"
|
|
edbsize="N/A"
|
|
countPolicy=""
|
|
ordered=""
|
|
current=""
|
|
if [ -e "$job" ] ; then
|
|
countPolicy=`head -120 "$job" | \
|
|
awk '/^\/cexmc\/run\/eventCountPolicy/ {print $2}'`
|
|
if [[ -z "$countPolicy" || "$countPolicy" = "all" ]] ; then
|
|
ordered=`head -120 "$job" | awk '/^\/run\/beamOn/ {print $2}'`
|
|
current=`tail -120 "$job" | grep ^Event | tail -1 | \
|
|
awk '{print $2}'`
|
|
fi
|
|
fi
|
|
if [ -z "$current" ] ; then
|
|
current=0
|
|
fi
|
|
if [ -n "$ordered" ] ; then
|
|
msgperc=$(( current * 100 / ordered ))%
|
|
fi
|
|
jobbasename=`echo $jobbasenames | awk "{print \\$$i}"`
|
|
jobbasename=${jobbasename/$CEXMC_PREFIX/}
|
|
jobbasename=${jobbasename/\.job/}
|
|
if [ -e $CEXMC_PROJECTS_DIR/$jobbasename.fdb ] ; then
|
|
fdbsize=`du -sh $CEXMC_PROJECTS_DIR/$jobbasename.fdb | awk '{print $1}'`
|
|
fi
|
|
if [ -e $CEXMC_PROJECTS_DIR/$jobbasename.edb ] ; then
|
|
edbsize=`du -sh $CEXMC_PROJECTS_DIR/$jobbasename.edb | awk '{print $1}'`
|
|
fi
|
|
echo $job: $msgperc, fdb: $fdbsize, edb: $edbsize
|
|
(( ++i ))
|
|
done
|
|
|