Skip to content

Commit

Permalink
Merge pull request #9 from ACME-Climate/worleyph/Machines/mira-mkbatc…
Browse files Browse the repository at this point in the history
…h-fix

Fixing bug that can cause job scripts on Mira to exit before finishing postprocessing
  • Loading branch information
agsalin committed Sep 18, 2014
2 parents 5342f0c + c4c15fe commit ed554ed
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 8 deletions.
6 changes: 5 additions & 1 deletion scripts/ccsm_utils/Machines/mkbatch.mira
Original file line number Diff line number Diff line change
Expand Up @@ -192,7 +192,11 @@ runjob --label short -p \${procs} -n \${ntasks} \${LOCARGS} --envs BG_THREADLAYO
else
\$EXEROOT/cesm.exe >&! cesm.log.\$LID
endif
if (\$syslog_id != 0) kill \$syslog_id
if (\$syslog_id != 0) then
if { kill -0 \$syslog_id } then
kill \$syslog_id
endif
endif
echo "\`date\` -- CSM EXECUTION HAS FINISHED"
set sdate = \`date +"%Y-%m-%d %H:%M:%S"\`
Expand Down
19 changes: 12 additions & 7 deletions scripts/ccsm_utils/Machines/syslog.mira
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,12 @@ while ($outlth < 1)
set outlth = `wc \-l $run/cesm.log.$lid | sed 's/ *\([0-9]*\) *.*/\1/' `
end

set remaining = 0
set rem_hours = `qstat -lf $jid | grep TimeRemaining | sed 's/ *TimeRemaining *: *\([0-9]*\):*\([0-9]*\):*\([0-9]*\) */\1/' `
set rem_mins = `qstat -lf $jid | grep TimeRemaining | sed 's/ *TimeRemaining *: *\([0-9]*\):*\([0-9]*\):*\([0-9]*\) */\2/' `
set rem_secs = `qstat -lf $jid | grep TimeRemaining | sed 's/ *TimeRemaining *: *\([0-9]*\):*\([0-9]*\):*\([0-9]*\) */\3/' `
set rem_hours = `qstat -lf $jid | grep TimeRemaining | sed 's/ *TimeRemaining *: *0*\([0-9]*\):*0*\([0-9]*\):*0*\([0-9]*\) */\1/' `
set rem_mins = `qstat -lf $jid | grep TimeRemaining | sed 's/ *TimeRemaining *: *0*\([0-9]*\):*0*\([0-9]*\):*0*\([0-9]*\) */\2/' `
set rem_secs = `qstat -lf $jid | grep TimeRemaining | sed 's/ *TimeRemaining *: *0*\([0-9]*\):*0*\([0-9]*\):*0*\([0-9]*\) */\3/' `
if ("X$rem_hours" == "X") set rem_hours = 0
if ("X$rem_mins" == "X") set rem_mins = 0
if ("X$rem_secs" == "X") set rem_secs = 0
@ remaining = 3600 * $rem_hours + 60 * $rem_mins + $rem_secs
cat > $run/Walltime.Remaining <<EOF1
$remaining $sample_interval
Expand All @@ -38,9 +40,12 @@ while (1)
cp -p -u $timing/* $dir
chmod a+r $dir/*
sleep $sample_interval
set rem_hours = `qstat -lf $jid | grep TimeRemaining | sed 's/ *TimeRemaining *: *\([0-9]*\):*\([0-9]*\):*\([0-9]*\) */\1/' `
set rem_mins = `qstat -lf $jid | grep TimeRemaining | sed 's/ *TimeRemaining *: *\([0-9]*\):*\([0-9]*\):*\([0-9]*\) */\2/' `
set rem_secs = `qstat -lf $jid | grep TimeRemaining | sed 's/ *TimeRemaining *: *\([0-9]*\):*\([0-9]*\):*\([0-9]*\) */\3/' `
set rem_hours = `qstat -lf $jid | grep TimeRemaining | sed 's/ *TimeRemaining *: *0*\([0-9]*\):*0*\([0-9]*\):*0*\([0-9]*\) */\1/' `
set rem_mins = `qstat -lf $jid | grep TimeRemaining | sed 's/ *TimeRemaining *: *0*\([0-9]*\):*0*\([0-9]*\):*0*\([0-9]*\) */\2/' `
set rem_secs = `qstat -lf $jid | grep TimeRemaining | sed 's/ *TimeRemaining *: *0*\([0-9]*\):*0*\([0-9]*\):*0*\([0-9]*\) */\3/' `
if ("X$rem_hours" == "X") set rem_hours = 0
if ("X$rem_mins" == "X") set rem_mins = 0
if ("X$rem_secs" == "X") set rem_secs = 0
@ remaining = 3600 * $rem_hours + 60 * $rem_mins + $rem_secs
cat > $run/Walltime.Remaining << EOF2
$remaining $sample_interval
Expand Down

0 comments on commit ed554ed

Please sign in to comment.