Use JUBE
Installation
- on JURECA:
module load JUBE
- 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
Ausführen des JUBE-Skripts:
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"')
-> Das Initfile muss Schreibrechte gesetzt haben! -> Für einen erneuten Lauf ab Startzeit muss das
- Original-initfile wieder kopiert werden!
-> Aufruf mit "-t perp"
- 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!
=> Änderung in Dummy-Namelist + Änderung in XML-Skript
- 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:
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
Kommentare aus xml-Skript nachträglich ändern: jube comment [-a] "..." messy_bench [-i ID] jube comment -i ID -- "..." messy_bench
Online-Doku zu JUBE:
https://apps.fz-juelich.de/jsc/jube/jube2/docu/index.html
Mit Scalasca (auf JURECA):
- jube run messy_clim.xml -t time scorep_comp scorep 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