Differences between revisions 1 and 2
Revision 1 as of 2017-05-03 07:54:43
Size: 4198
Editor: NicoleThomas
Comment:
Revision 2 as of 2017-05-04 09:49:18
Size: 4111
Editor: NicoleThomas
Comment:
Deletions are marked like this. Additions are marked like this.
Line 11: Line 11:
   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
  * 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
Line 16: Line 16:
Ausführen des JUBE-Skripts:
---------------------------
== Ausführen des JUBE-Skripts ==
Line 19: Line 18:
Beispiel-JUBE-Skript eingecheckt unter:
  messy-clams/messy/util/xmessy_jube_clim.xml
 * Beispiel-JUBE-Skript eingecheckt unter <<BR>>
   messy-clams/messy/util/xmessy_jube_clim.xml
Line 22: Line 21:
JUBE-Skript ins Arbeitsverzeichnis kopieren und Namelist-Angaben anpassen.  * JUBE-Skript ins Arbeitsverzeichnis kopieren und Namelist-Angaben anpassen.
Line 24: Line 23:
JUBE-Skript ausführen mit:
   jube run xmessy_jube_clim.xml [-t tag]
 * JUBE-Skript ausführen mit:
 {{{
jube run xmessy_jube_clim.xml [-t tag]
}}}
Line 28: Line 29:
JUBE-Skript:
------------
== JUBE-Skript ==
Line 31: Line 31:
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
 * 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
Line 38: Line 38:
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!
 * 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!
Line 43: Line 40:
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!
 * 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!
Line 50: Line 42:
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.
 * Im Dummy-Messy-Skript werden die in den Parametersets "jobscriptParameter" und "xmessy_mmd" angegebenen Parameter durch die aktuellen Angaben ersetzt.
Line 55: Line 44:
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!)
 * Das Skript mit Ersetzungen wird in das aktuelle Arbeitsverzeichnis unter den Namen "xmessy_mmd.$EXP_NAME" kopiert.
Line 63: Line 46:
ACHTUNG:
--------
 * 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!)
Line 66: Line 53:
  - Die Dateien im Namelist-Verzeichnis (NML_SETUP) werden überschrieben!
  - ${BASEDIR}/messy/mbm/clams/Makefile wird überschrieben!
== ACHTUNG ==

 *
Die Dateien im Namelist-Verzeichnis (NML_SETUP) werden überschrieben!
 * ${BASEDIR}/messy/mbm/clams/Makefile wird überschrieben!
Line 69: Line 58:
  - Für perpetuum-Läufe: initfile wird überschrieben!  * Für perpetuum-Läufe: initfile wird überschrieben!
Line 75: Line 64:
  - clams.nml/clamsmix.nml:  * clams.nml/clamsmix.nml:
Line 82: Line 71:
  - Bei Änderungen in den Namelists:  * Bei Änderungen in den Namelists:
Line 85: Line 74:
  - Optionale Parameter:  * Optionale Parameter:
Line 91: Line 80:
JUBE-Kommandos:
---------------
== JUBE-Kommandos ==
Line 94: Line 82:
 {{{
Line 109: Line 98:
}}}
Line 110: Line 100:

Online-Doku zu JUBE:
--------------------
== Online-Doku zu JUBE ==
Line 117: Line 105:
Mit Scalasca (auf JURECA):
--------------------------
== Mit Scalasca (auf JURECA) ==
Line 120: Line 107:
   jube run messy_clim.xml -t time scorep_comp scorep {{{
jube run messy_clim.xml -t time scorep_comp scorep
Line 122: Line 110:
   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
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

Use JUBE

Installation

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"')
  • 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

  • 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

messy/UseJube (last edited 2018-04-25 08:14:54 by NicoleThomas)