MATLAB Compiler
Wenn MATLAB gestartet wird, entweder interaktiv oder innerhalb eines Batch-Jobs, ist eine Lizenz erforderlich. Da wir nur eine begrenzte Anzahl von Lizenzen haben, wird da durch die Anzahl der Instanzen, die parallel laufen können, eingeschränkt.
Allerdings kann in vielen Fällen ein MATLAB-Skript mittels des MATLAB-Compilers kompiliert werden. Da durch entsteht ein eigenständiges Programm, das ohne eine MATLAB-Lizenz lauffähig ist. Damit können im Batch-System beliebig viele solche kompilierten Programme parallel laufen.
Das MATLAB-Programm hello_world.m
wird dann auf folgende Weise kompiliert:
module add matlab/R2016a mcc -mv -R -singleCompThread -R -nodisplay hello_world.m
Die Batch-Datei, die das Programm startet, muss dann folgende Zeilen enthalten:
module add matlab/R2016a export MCR_HOME=$MATLABROOT export MCR_CACHE_ROOT=$TMPDIR/$USER/mcr_cache ./run_hello_world.sh $MCR_HOME
Bitte beachten Sie, dass weitere Argumente, die Sie angeben, als Zeichenketten interpretiert werden. Daher kann es sein, dass diese beispielsweise in ganze Zahlen mit str2num
konvertiert werden müssen.