Size: 4198
Comment:
|
← Revision 9 as of 2018-04-25 08:14:54 ⇥
Size: 2831
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
= Use JUBE = | = Use JUBE for messy-clams runs = |
Line 10: | Line 10: |
* Download und Installation im Cluster: http://www.fz-juelich.de/ias/jsc/EN/Expertise/Support/Software/JUBE/JUBE2/jube-installation_node.html -> JUBE wird unter ~/.local/bin installiert -> ~/.local/bin zu $PATH zufügen |
* 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: <<BR>> '''''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). <<BR>> '''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. <<BR>> '''Attention:''' The ''Makefile'' in subdirectory ''clams'' is replaced by the dummy makefile ''Makefile_jube'' with the current substitutions (parameterset ''makeParam'') |
Line 16: | Line 53: |
Ausführen des JUBE-Skripts: --------------------------- |
== JUBE commands == |
Line 19: | Line 55: |
Beispiel-JUBE-Skript eingecheckt unter: messy-clams/messy/util/xmessy_jube_clim.xml JUBE-Skript ins Arbeitsverzeichnis kopieren und Namelist-Angaben anpassen. JUBE-Skript ausführen mit: jube run xmessy_jube_clim.xml [-t tag] JUBE-Skript: ------------ Benötigte Dateien (alle in Mercurial eingecheckt): - Dummy-Makefile ${BASEDIR}/messy/mbm/clams/Makefile_jube - Dummy MESSy-Skript ${BASEDIR}/messy/util/xmessy_mmd.jube - Dummy-Namelist-Verzeichnis ${BASEDIR}/messy/nml/MBM/clams_jube ("dir_dummy_nml" in "namelistParam" im JUBE-Skript) Wird das Skript mit dem Tag "comp" aufgerufen, wird das Basemodel "clams" neu compiliert. Hierbei wird das Makefile im Verzeichnis "clams" durch das Dummy-Makefile mit den aktuellen Ersetzungen (parameterset "makeParam") überschrieben! Für jede in Messy-Clams genutzte Namelist gibt es ein entsprechendes Parameterset. Die aktuellen Angaben zu den verschiedenen Namelists werden in die Dummy-Namelists eingetragen, und die "fertigen" Namelists werden in das unter "NML_SETUP" angegebene Verzeichnis kopiert. Existiert dieses Verzeichnis schon, werden die Namelists dort überschrieben! Im Dummy-Messy-Skript werden die in den Parametersets "jobscriptParameter" und "xmessy_mmd" angegebenen Parameter durch die aktuellen Angaben ersetzt. Das Skript mit Ersetzungen wird in das aktuelle Arbeitsverzeichnis unter den Namen "xmessy_mmd.$EXP_NAME" kopiert. Perpetuum-Läufe: im Parameterset "perpParam": - 'cycle' und 'messy_tools_dir' anpassen - alle weiteren Parameter können unverändert bleiben ! => Aufruf mit tag "perp" => in timer.nml: Einstellungen so setzen, dass innerhalb eines Jahres KEINE RESTARTS geschrieben werden (->timer_no_cycles hochsetzen!) ACHTUNG: -------- - Die Dateien im Namelist-Verzeichnis (NML_SETUP) werden überschrieben! - ${BASEDIR}/messy/mbm/clams/Makefile wird überschrieben! (Falls neu compiliert wird: Aufruf mit "-t comp"') - Für perpetuum-Läufe: initfile wird überschrieben! -> Das Initfile muss Schreibrechte gesetzt haben! -> Für einen erneuten Lauf ab Startzeit muss das Original-initfile wieder kopiert werden! -> Aufruf mit "-t perp" - clams.nml/clamsmix.nml: Die Anzahl der angegebenen Parameter kann variieren. => Im Moment sind 20 Platzhalter vorgesehen, nicht benötigte müssen mit einem Leerstring belegt werden! => Werden mehr Platzhalter benötigt, muss das in der Dummy-Namelist und im XML-Skript angepasst werden! - Bei Änderungen in den Namelists: => Änderung in Dummy-Namelist + Änderung in XML-Skript - Optionale Parameter: Sind in Messy vorbelegt, können angegeben oder weggelassen werden Mit JUBE: optionale Parameter müssen in Dummy-Namelist vorgesehen und in XML-Skript belegt werden! JUBE-Kommandos: --------------- |
{{{ |
Line 106: | Line 68: |
Kommentare aus xml-Skript nachträglich ändern: | |
Line 109: | Line 70: |
}}} | |
Line 110: | Line 72: |
Online-Doku zu JUBE: -------------------- |
== Online documentation == |
Line 117: | Line 77: |
Mit Scalasca (auf JURECA): -------------------------- |
== Run with Scalasca (on JURECA) == |
Line 120: | Line 79: |
jube run messy_clim.xml -t time scorep_comp scorep | {{{ module load Scalasca |
Line 122: | Line 82: |
module load Scalasca 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 |
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 |
Use JUBE for messy-clams runs
Installation
- on JURECA:
module load JUBE
- Download and installation on cluster workstation:
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