Skip to content

Commit

Permalink
Port obs-monitor to wcoss2 (#34)
Browse files Browse the repository at this point in the history
This release allows obs-monitor to run on wcoss2. The strategy is to
split the model level yaml plot file into lots of pieces and submitted
as a single serial job with one node per piece (plot job). Satellite
plots (rad and ozn) are broken down by instrument, for iasi and cris
down to instrument/plot_type. The minimization and conventional plots
are submitted as two plot jobs without breaking them down further.

There are some caveats:

- Surface pressure plots are not working on either wcoss2 or hera. This
is a problem in eva (`mon_data_space.py`), and issue
[#194](JCSDA-internal/eva#194) has been opened
to address it.
- `Logos `and `tight layout` options have been temporarily commented out
of the yaml plot tempates. These features fail on wcoss2 and seem to be
issues in emcpy. Issue
[#142](NOAA-EMC/emcpy#142) has been opened to
address the problem.
- Some of the plots in `parm/gfs/gfs_plots.yaml` have been commented out
owing to what seems to be file corruption issues in my test data suite
(probably hera stmp space issues).

Testing has been conducted on wcoss2 and hera, and all plots work on
both machines within the stated caveats.
  • Loading branch information
EdwardSafford-NOAA authored Jun 26, 2024
1 parent 67c1cde commit 4a414a4
Show file tree
Hide file tree
Showing 18 changed files with 151 additions and 156 deletions.
14 changes: 9 additions & 5 deletions driver/runObsMon.sh
Original file line number Diff line number Diff line change
Expand Up @@ -86,13 +86,13 @@ export COMOUT=${COMOUT}/${NET}
#-------------------------
# Set up & submit j-job
#
jobname="PlotObsMon"
jobname="PlotObsMon_setup"
jobfile="${JOBSobsmon}/JMON_PLOT_OBS"

logdir="${OM_LOGS}/${MODEL}"
if [[ ! -d ${logdir} ]]; then mkdir -p ${logdir}; fi

logfile="${OM_LOGS}/${MODEL}/OM_log"
logfile="${logdir}/OM_setup.log"
if [[ -e ${logfile} ]]; then rm ${logfile}; fi

case ${MACHINE_ID} in
Expand All @@ -101,9 +101,13 @@ case ${MACHINE_ID} in
-J ${jobname} --partition service -o ${logfile} ${jobfile}
;;

wcoss2) # NOTE: this has not been tested; eva doesn't yet run on wcoss2
$SUB -q $JOB_QUEUE -A $ACCOUNT -o ${logfile} -e ${logfile} \
-V -l select=1:mem=500M -l walltime=0:05:00 -N ${jobname} ${jobfile}
wcoss2)
$SUB -q ${JOB_QUEUE} -A ${ACCOUNT} -o ${logfile} -e ${logfile} \
-v "PYTHONPATH=${PYTHONPATH}, PATH=${PATH}, HOMEobsmon=${HOMEobsmon}, COMOUT=${COMOUT}, \
MODEL=${MODEL}, PDY=${PDY}, cyc=${cyc}, DATAROOT=${DATAROOT}, APRUN_PY=${APRUN_PY}, \
MACHINE_ID=${MACHINE_ID}, ACCOUNT=${ACCOUNT}, JOB_QUEUE=${JOB_QUEUE}, SUB=${SUB},
OM_LOGS=${OM_LOGS}" \
-l select=1:mem=500mb -l walltime=0:05:00 -N ${jobname} ${jobfile}
;;
esac

Expand Down
4 changes: 1 addition & 3 deletions jobs/JMON_PLOT_OBS
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ mkdir -m 775 -p $COMOUTplots
# Create $DATA for temp workspace
###################################
export DATA=${DATA:-${DATAROOT}/${NET}/${MODEL}/Plot}
if [[ -d ${DATA} ]]; then rm -rf ${DATA}; fi
if [[ -d ${DATAROOT}/${NET} ]]; then rm -rf ${DATAROOT}/${NET}; fi

mkdir -p ${DATA}
cd ${DATA}
Expand All @@ -51,5 +51,3 @@ fi
KEEPDATA=${KEEPDATA:-"NO"}
cd ${DATAROOT}
[[ ${KEEPDATA} = "NO" ]] && rm -rf ${DATA}

report-mem
4 changes: 2 additions & 2 deletions parm/OM_config
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ export JOBSobsmon=${om_dir_root}/jobs
# Export job submission vars per MACHINE_ID
#
source ${om_dir_root}/ush/detect_machine.sh
MACHINE_ID=`echo "${MACHINE_ID%%.*}"`
export MACHINE_ID=`echo "${MACHINE_ID%%.*}"`

case ${MACHINE_ID} in

Expand All @@ -31,7 +31,7 @@ case ${MACHINE_ID} in
queue="dev"
project="GDAS-DEV"
account="GFS-DEV"
aprun_py="python"
aprun_py=`which python`
;;
esac

Expand Down
20 changes: 10 additions & 10 deletions parm/gfs/conTime.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -460,13 +460,13 @@ graphics:
figure:
layout: [4,1]
figure size: [20,18]
tight layout:
# tight layout:
title: "Valid: {{ PDATE | to_YMDH }} \n ${datatype}, Global, All Levels"
output name: line_plots/con/time/${datatype}_count.{{ PDATE | to_YMDH }}.png
plot logo:
which: 'noaa/nws'
loc: 'upper left'
subplot_orientation: 'last'
# plot logo:
# which: 'noaa/nws'
# loc: 'upper left'
# subplot_orientation: 'last'

plots:
- add_xlabel: 'Assimilated'
Expand Down Expand Up @@ -584,13 +584,13 @@ graphics:
figure:
layout: [6,1]
figure size: [20,18]
tight layout:
# tight layout:
title: "Valid: {{ PDATE | to_YMDH }}\n ${datatype}, Global, All Levels"
output name: line_plots/con/time/${datatype}_bias.{{ PDATE | to_YMDH }}.png
plot logo:
which: 'noaa/nws'
loc: 'upper left'
subplot_orientation: 'last'
# plot logo:
# which: 'noaa/nws'
# loc: 'upper left'
# subplot_orientation: 'last'

plots:
- add_xlabel: 'Obs-Ges Assimilated'
Expand Down
10 changes: 5 additions & 5 deletions parm/gfs/conVert.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -67,13 +67,13 @@ graphics:
figure:
layout: [2,2]
figure size: [20,18]
tight layout:
# tight layout:
title: "Valid: {{ PDATE | to_YMDH }} \n ${datatype}, Global"
output name: line_plots/con/vert/${datatype}.vert.png
plot logo:
which: 'noaa/nws'
loc: 'upper left'
subplot_orientation: 'first'
# plot logo:
# which: 'noaa/nws'
# loc: 'upper left'
# subplot_orientation: 'first'

plots:
- add_xlabel: 'Assimilated'
Expand Down
4 changes: 2 additions & 2 deletions parm/gfs/gfs_plots.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -174,7 +174,7 @@ satellites:
times: 121
channels: 'all'
component: ges
# file corruption here?
# test data file corruption here?
# - plot: rad angle
# times: 121
# channels: 'all'
Expand Down Expand Up @@ -321,7 +321,7 @@ satellites:
channels: 'all'
component: ges

# file corruption?
# test data file corruption here
# - name: n19
# instruments:
# - name: amsua
Expand Down
8 changes: 4 additions & 4 deletions parm/gfs/minGnormFourCycle.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -94,12 +94,12 @@ graphics:
- figure:
layout: [1,1]
figure size: [20,18]
tight layout:
# tight layout:
title: "Valid: {{ PDATE | to_YMDH }}"
output name: line_plots/min/{{MODEL}}_{{RUN}}.4cycle.gnorms.png
plot logo:
which: 'noaa/nws'
loc: 'upper center'
# plot logo:
# which: 'noaa/nws'
# loc: 'upper center'

plots:
- add_xlabel: 'Iteration Number'
Expand Down
16 changes: 8 additions & 8 deletions parm/gfs/minGnormOneCycle.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -68,12 +68,12 @@ graphics:
- figure:
layout: [1,1]
figure size: [20,18]
tight layout:
# tight layout:
title: "Valid: {{ PDATE | to_YMDH }}"
output name: line_plots/min/{{MODEL}}_{{RUN}}.{{ PDATE | to_YMDH }}.gnorms.png
plot logo:
which: 'noaa/nws'
loc: 'upper right'
# plot logo:
# which: 'noaa/nws'
# loc: 'upper right'

plots:
- add_xlabel: 'Iteration Number'
Expand Down Expand Up @@ -106,12 +106,12 @@ graphics:
- figure:
layout: [1,1]
figure size: [20,18]
tight layout:
# tight layout:
title: "Valid: {{ PDATE | to_YMDH }}"
output name: line_plots/min/{{MODEL}}_{{RUN}}.{{ PDATE | to_YMDH }}.reduction.png
plot logo:
which: 'noaa/nws'
loc: 'upper right'
# plot logo:
# which: 'noaa/nws'
# loc: 'upper right'

plots:
- add_xlabel: 'Iteration Number'
Expand Down
10 changes: 5 additions & 5 deletions parm/gfs/minSummary.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -37,13 +37,13 @@ graphics:
- figure:
layout: [3,1]
figure size: [20,18]
tight layout:
# tight layout:
title: "Valid: {{ PDATE | to_YMDH }}"
output name: line_plots/min/{{MODEL}}_{{RUN}}.summary.gnorms.png
plot logo:
which: 'noaa/nws'
loc: 'upper left'
subplot_orientation: 'first'
# plot logo:
#which: 'noaa/nws'
#loc: 'upper left'
#subplot_orientation: 'first'

plots:
- add_xlabel: 'Cycle Time'
Expand Down
10 changes: 5 additions & 5 deletions parm/gfs/oznSummary.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -295,13 +295,13 @@ graphics:
- figure:
layout: [3,1]
figure size: [20,18]
tight layout:
# tight layout:
title: "Summary Plot {{SENSOR}}_{{SAT}} \n Valid: {{ PDATE | to_YMDH }}"
output name: line_plots/ozn/summary/{{SENSOR}}_{{SAT}}.summary.png
plot logo:
which: 'noaa/nws'
loc: 'upper left'
subplot_orientation: 'first'
# plot logo:
# which: 'noaa/nws'
# loc: 'upper left'
# subplot_orientation: 'first'
plots:
# Obs counts, last 4 cycles
# -------------------------
Expand Down
16 changes: 8 additions & 8 deletions parm/gfs/oznTime.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -164,12 +164,12 @@ graphics:
figure:
layout: [1,1]
figure size: [20,18]
tight layout:
# tight layout:
title: "${variable}, {{SENSOR}}_{{SAT}} level ${level} \n Valid: {{ PDATE | to_YMDH }}"
output name: line_plots/ozn/time/{{SENSOR}}_{{SAT}}.${level}.${variable}.png
plot logo:
which: 'noaa/nws'
loc: 'upper right'
# plot logo:
# which: 'noaa/nws'
# loc: 'upper right'

plots:
- add_xlabel: 'Cycle'
Expand Down Expand Up @@ -198,12 +198,12 @@ graphics:
figure:
layout: [2,1]
figure size: [20,18]
tight layout:
# tight layout:
title: "obs-{{COMPONENT}} {{SENSOR}}_{{SAT}} level ${level} \n Valid: {{ PDATE | to_YMDH }}"
output name: line_plots/ozn/time/{{SENSOR}}_{{SAT}}.${level}.omg.png
plot logo:
which: 'noaa/nws'
loc: 'upper right'
# plot logo:
# which: 'noaa/nws'
# loc: 'upper right'

plots:
- add_xlabel: 'Cycle'
Expand Down
12 changes: 6 additions & 6 deletions parm/gfs/radAngle.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -255,9 +255,9 @@ graphics:
figure size: [20,18]
title: "${variable}, {{SENSOR}}_{{SAT}} channel ${channel} \n Valid: {{ PDATE | to_YMDH }}"
output name: line_plots/rad/angle/angle.{{SENSOR}}_{{SAT}}.${channel}.${variable}.png
plot logo:
which: 'noaa/nws'
loc: 'upper left'
# plot logo:
# which: 'noaa/nws'
# loc: 'upper left'

plots:

Expand Down Expand Up @@ -317,9 +317,9 @@ graphics:
figure size: [20,18]
title: "${variable}, {{SENSOR}}_{{SAT}} channel ${channel} \n Valid: {{ PDATE | to_YMDH }}"
output name: line_plots/rad/angle/angle.{{SENSOR}}_{{SAT}}.${channel}.${variable}.png
plot logo:
which: 'noaa/nws'
loc: 'upper left'
# plot logo:
# which: 'noaa/nws'
# loc: 'upper left'

plots:
- add_xlabel: 'Scan Position'
Expand Down
8 changes: 4 additions & 4 deletions parm/gfs/radBcoef.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -177,12 +177,12 @@ graphics:
figure:
layout: [1,1]
figure size: [20,18]
tight layout:
# tight layout:
title: "${variable}, {{SENSOR}}_{{SAT}} channel ${channel} \n Valid: {{ PDATE | to_YMDH }}"
output name: line_plots/rad/bcoef/bcoef.{{SENSOR}}_{{SAT}}.${channel}.${variable}.png
plot logo:
which: 'noaa/nws'
loc: 'upper right'
# plot logo:
# which: 'noaa/nws'
# loc: 'upper right'

plots:
- add_xlabel: 'Cycle'
Expand Down
26 changes: 13 additions & 13 deletions parm/gfs/radTime.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -328,12 +328,12 @@ graphics:
figure:
layout: [1,1]
figure size: [20,18]
tight layout:
# tight layout:
title: "${variable}, {{SENSOR}}_{{SAT}} channel ${channel} \n Valid: {{ PDATE | to_YMDH }}"
output name: line_plots/rad/time/time.{{SENSOR}}_{{SAT}}.${channel}.${variable}.png
plot logo:
which: 'noaa/nws'
loc: 'upper right'
# plot logo:
# which: 'noaa/nws'
# loc: 'upper right'

plots:
- add_xlabel: 'Cycle'
Expand All @@ -356,12 +356,12 @@ graphics:
figure:
layout: [1,1]
figure size: [20,18]
tight layout:
# tight layout:
title: "${variable}, {{SENSOR}}_{{SAT}} channel ${channel} \n Valid: {{ PDATE | to_YMDH }}"
output name: line_plots/rad/time/time.{{SENSOR}}_{{SAT}}.${channel}.${variable}.png
plot logo:
which: 'noaa/nws'
loc: 'upper right'
# plot logo:
# which: 'noaa/nws'
# loc: 'upper right'

plots:
- add_xlabel: 'Cycle'
Expand All @@ -378,13 +378,13 @@ graphics:
- figure:
layout: [4,1]
figure size: [20,18]
tight layout:
# tight layout:
title: "Summary Plot {{SENSOR}}_{{SAT}} \n Valid: {{ PDATE | to_YMDH }}"
output name: line_plots/rad/summary/summary.{{SENSOR}}_{{SAT}}.png
plot logo:
which: 'noaa/nws'
loc: 'upper center'
subplot_orientation: 'first'
# plot logo:
# which: 'noaa/nws'
# loc: 'upper center'
# subplot_orientation: 'first'
plots:
# Obs counts, last 4 cycles
# -------------------------
Expand Down
Loading

0 comments on commit 4a414a4

Please sign in to comment.