MSC.Marc 2013
Übersicht:
- MARC auf den Rechnern der Linux-Cluster
- Der Parameter MAXALL
- MARC-Aufruf
- Einbinden benutzereigener Unterprogramme
- Beispiele
- Handbuch
1. MARC auf den Rechnern der Linux-Cluster
- Modul-Konzept:
Auf den Rechnern des
Linuxclusters Apis/Bombus ist ein
Module-Konzept implementiert,
über das die speziellen Umgebungen für die dort installierten Anwendungen
gesetzt wird. Das MARC-Softwarepaket wird mit
module add marc
zur Verfügung gestellt. - Batchsystem:
Skriptbeispiel für halis:
#!/bin/bash # . /etc/profile.d/module.sh module add marc # # ins MARC Arbeitsverzeichnis wechseln und MSC-MARC starten DIR=<Pfadname des Arbeitsverzeichnisses> JOBID=<meinJob> cd $DIR # MARC starten run_marc -jid $JOBID -ver no
2. Der Parameter MAXALL
Der erste SIZING-Parameter (MAXALL) muss richtig gewählt werden, um eine Resourcenverschwendung zu verweiden. MARC 2013 linkt kein neues Executable, wenn MAXALL für eine in-core-Rechnung zu klein gewählt wurde. Stattdessen wird der tatsächlich benötigte Hauptspeicherbedarf dynamisch zugewiesen, ohne dass der bereits belegte Speicher wieder frei gegeben wird. Dies bedeutet, dass, sollte Ihre Speicheranforderung ungünstigstenfalls knapp unterhalb des benötigten Hauptspeicherbedarfs liegen, Ihr MARC-Run doppelt soviel Hauptspeicher belegt als dies notwendig wäre.Im out-File (<jobname>.out) wird Ihnen mitgeteilt, wie Sie den SIZING-Parameter MAXALL wählen müssen, damit in-core gerechnet werden kann. Z.B. liefert das Kommando
grep workspace <jobname>.outdie notwendige Information. Tipp: Wählen Sie im ersten Rechenlauf MAXALL=0 und passen Sie den Parameter dann an den tatsächlichen Bedarf an. Wenn Sie nicht mit RESTARTs arbeiten, sollten Sie grundsätzlich mit MAXALL=0 arbeiten.
3. MARC-Aufruf
run_marc keyword value
Beschreibung der Optionen
- Die mit einem * markierten Werte sind Default-Werte!
- Die eckigen Klammern < > bedeuten, daß ein benutzereigener Identifizierungsname (ohne eckige Klammern) angegeben werden muß.
- Werte in " " müssen so wie angegeben, aber ohne Doublequotes " "
angegeben werden.
+---------+------------+----------------------------------------+ I keyword I value I Erläuterung I +---------+------------+----------------------------------------+ I -prog I"marc" * I ruft das MARC-Programm auf, mit I I I I oder ohne User Subroutines. I I I <progname> I Das benutzereigene Programm I I I I "progname" wird ausgeführt. I I I I Der Programmname muß mit marc_ I I I I beginnen. Dieser Vorsatz wird bei I I I I Angabe des Programmnamens aber I I I I weggelassen. I +---------+------------+----------------------------------------+ I -jid I <jidname> I Input-Datenfile ohne Extension I I I I .dat I +---------+------------+----------------------------------------+ I -rid I <ridname> I vorhergehender job für RESTART I +---------+------------+----------------------------------------+ I -pid I <pidname> I Temperatur-File (ohne Extension) I I I I für die Temperatur_Spannungsanalyse I I I I ( .t16 oder .t19 File) I +---------+------------+----------------------------------------+ I -user I <username> I Die User Subroutine "username.f" wird I I I I zur Generierung eines neuen Moduls I I I I verwendet. I +---------+------------+----------------------------------------+ I -back I "yes" * I Programm soll im Hintergrund laufen. I I I oder "y" * I I I I I I I I "no" oder I Programm soll im Vordergrund laufen. I I I "n" I I +---------+------------+----------------------------------------+ I -cpu I <sec> I job CPU limit in Sekunden I +---------+------------+----------------------------------------+ | -dir I <dir_name> I Verzeichnis für Ein-/Ausgabedateien I +---------+------------+----------------------------------------+ | -sdir I <sdir_name>I Verzeichnis für Scratchdateien I +---------+------------+----------------------------------------+ I -ver I "yes" * I Input-Syntax verifizieren I I I oder "y" * I I I I I I I I "no" oder I Input-Syntax nicht verifizieren I I I "n" I I +---------+------------+----------------------------------------+ I -save I "yes" I Generiertes Modul abspeichern. I I I oder "y" I I I I I I I I "no" * oderI Generiertes Modul nicht abspeichern. I I I "n" * I I +---------+------------+----------------------------------------+ I -vf I <viewname> I viewfactor file I +---------+------------+----------------------------------------+ I -def I <defname> I default input file name I +---------+------------+----------------------------------------+ I-autorst I 0 oder 1 I 0 : beim Remeshing geht das I I I I Analyseprogramm in einen Wartezustand I I I I bis das Meshen beendet ist. I I I I 1 : das Analyseprogramm stopped, der I I I I Remeshvorgang beginnt und nach Been- I I I I digung restartet das Analyseprogramm I I I I automatisch. Die RESTART LAST Option I I I I ist in diesem Fall erforderlich. I +---------+------------+----------------------------------------+
Anmerkungen:
- Das Keyword -jid ist immer erforderlich.
- Das Keyword -save kann nur dann benutzt werden, wenn ein neues
MARC-Executable erzeugt wird (bei benutzereigenen Unterprogrammen).
Das neu generierte MARC-Executable wird dann nicht gelöscht.
- Nutzen Sie den /usertemp-Bereich für Eingabe-,
Ausgabe- und Temporärdateien, damit
zeitintensive Plattenzugriffe vermieden werden. Außerdem beeinflusst die
Plattenplatzbelegung im /usertemp-Bereich Ihre Plattenplatzquoten nicht.
Mit der Option -sdir legen Sie den Pfadnamen für das
Scratchverzeichnis
fest, mit -dir das Verzeichnis für Ein- und Ausgabedateien.
Vergessen Sie nicht, nach Beendigung Ihrer Arbeit die Dateien, die Sie noch weiterhin benötigen, aus /usertemp in Ihren Homebereich zu kopieren, da alle Dateien des /usertemp-Bereiches, die älter als eine Woche sind, regelmäßig gelöscht werden und kein Backup erstellt wird.
-
Beachten Sie die Hinweise zum Arbeiten mit FEM-Progammpaketen auf den Zentralrechnern.
4. Einbinden benutzereigener Unterprogramme (am Beispiel)
Mitrun_marc -jid xyz -user test -sdir $TEMPDIR/marcwird die Datei test.f mit benutzereigenen Routinen zur Generierung eines neuen ablauffähigen MARC-Execute-Files benutzt. Mit diesem neuen MARC-Executable wird dann die in xyz.dat definierte FE-Aufgabe berechnet.
Werden in Ihrem Unterprogramm MARC-Ausgabefiles angelegt, müssen die Namen dieser Ausgabefiles mit fort. beginnen (z.B. fort.stress).
Mit
run_marc -jid xyz -user test -sdir $TEMPDIR/marc -save yeswird das neu generierte MARC-Prgramm unter dem Namen test.marc in Ihrem Verzeichnis abgespeichert. Sie können es dann zur Berechnung Ihrer FE-Aufgabe immer wieder benutzen mit
run_marc -jid xyz -prog test.marc -sdir $TEMPDIR/marc
5. Beispiele
MARC/MENTAT 2013 Verzeichnisse:DIR=/progsys/MSC/marc2013_classic/marc2013.1/Beispiele finden Sie in den Verzeichnissen:
$DIR/demoWeitere Verzeichnisse:
$DIR/demo_ddm
$DIR/demo_table
$DIR/common (COMMON-Blöcke)
$DIR/user (User-Subroutines)