= Use JUBE for messy-clams runs =
== Installation ==
* on JURECA:
{{{
module load JUBE
}}}
* Download and installation on cluster workstation:
* http://www.fz-juelich.de/ias/jsc/EN/Expertise/Support/Software/JUBE/JUBE2/jube-installation_node.html
* JUBE is installed in ''~/.local/bin''
* add ''~/.local/bin'' to $PATH
== Required files ==
* Dummy makefile '''''${BASEDIR}/messy/mbm/clams/Makefile_jube'''''
* Dummy MESSy script '''''${BASEDIR}/messy/util/xmessy_mmd.jube'''''
* Dummy namelist directory '''''${BASEDIR}/messy/nml/MBM/clams_jube'''''
(''dir_dummy_nml'' specified in ''namelistParam'' in JUBE script)
* JUBE script, e.g. '''''${BASEDIR}/messy/util/xmessy_jube_clim.xml'''''
== JUBE script ==
* Example for JUBE script: <
>
'''''messy-clams/messy/util/xmessy_jube_clim.xml'''''
* Inside the script there is one parameterset for each clams namelist.
* The namelist input is specified in these parametersets.
* The dummy entries in the namelists ''${BASEDIR}/messy/nml/MBM/clams_jube/*.nml'' will be substituted with this input and copied to the namelist directory (NML_SETUP). <
>
'''Attention:''' Namelists in directory NML_SETUP will be overwritten if they already exist !
* The specifications in the parametersets ''jobscriptParameter'' and ''xmessy_mmd'' are used to substitute the dummy entries in the messy script ''${BASEDIR}/messy/util/xmessy_mmd.jube''.
* The messy-script ''xmessy_mmd.jube'' with substitutions is copied to the working directory (name: ''xmessy_mmd.$EXP_NAME'').
== Run JUBE script ==
* copy JUBE script to working directory and change namelist data in the script
* run JUBE script:
{{{
jube run xmessy_jube_clim.xml [-t tag]
}}}
* If the script is called with tag ''comp'', the basemodel ''clams'' is recompiled. <
>
'''Attention:''' The ''Makefile'' in subdirectory ''clams'' is replaced by the dummy makefile ''Makefile_jube'' with the current substitutions (parameterset ''makeParam'')
== JUBE commands ==
{{{
jube run xmessy_jube_clim.xml [-t tags]
jube continue messy_bench
jube analyse messy_bench [--id ID]
jube result messy_bench
jube info messy_bench [--id ID] [--step xxx]
jube log messy_bench [--id ID] [--command cmd]
jube help keyword
jube comment [-a] "..." messy_bench [-i ID]
jube comment -i ID -- "..." messy_bench
}}}
== Online documentation ==
https://apps.fz-juelich.de/jsc/jube/jube2/docu/index.html
== Run with Scalasca (on JURECA) ==
{{{
module load Scalasca
jube run messy_clim.xml -t time scorep_comp scorep
scalasca -examine messy_bench/00000x/000003_exe/work/scorep_clams24_run
scalasca -examine -s messy_bench/00000x/000003_exe/work/scorep_clams24_run
}}}
-> scorep.score is created