R
Einleitung
R ist eine Programmiersprache und Softwareumgebung für statistiche Rechnungen und Graphiken.
Lokale Pakete
Viele Pakete werden automatisch mit R installiert. Wenn einem aber ein bestimmtes R-Paket fehlt, kann man dieses lokal im eigenen home-Verzeichnis installieren.
Achtung: Die Installation innerhalb eines Batch-Jobs funktioniert in der Regel nicht, daher sollte sie einmal direkt auf dem Login-Knoten durchgeführt werden.
Dazu muss man zunächst die gewünschte Version von R starten:
Beim ersten Mal wird man aufgefordert, einen Server auszuwählen, von dem das Paket heruntergeladen werden soll. In der Regel sollte man sich für einen Server in Deutschland entscheiden.
Job-Skripte
Ein einfaches Beispiel-Skript, das an Slurm geschickt werden kann, könnte folgendermaßen aussehen:
#!/bin/bash
#SBATCH --job-name=my_R_job
#SBATCH --ntasks=1
#SBATCH --mem-per-cpu=4096
#SBATCH --time=1-12:00:00
#SBATCH --qos=standard
module load R/3.5.1-foss-2018b
cd /scratch/${USER}/r-jobs
Rscript script.r arg1 arg2Mit dem R-Paket Rmpi können parallele Jobs gestartet werden. In diesem Fall muss die Anzahl der Tasks durch den Slurm-Parameter --ntasks angegeben werden. Allerdings sollte die Anzahl der zu startenden Prozesse, die an mpirun mit der Option -np lediglich 1 sein.
Achtung! Es wird von Rmpi ein Steuerprozess gestartet. Deshalb muss man einen Task mehr anfordern, als man tatsächliche Programmprozesse verwenden will. Wenn man dies nicht tut, bekommt man eine Fehlermeldung wie
There are not enough slots available in the system to satisfy the 8 slots that were requested by the application
