#!/bin/bash # sur orval ################################################################################ # matlab_ex5_launch.oar - exemple de batch permettant de lancer le script Matlab # pi_checkpoint_ex5.m sur un noeud / 1 coeurs pour en mode besteffort idempotent # Utilisation d'un répertoire de travail en local dans l'espace Scratch # # pi_checkpoint_ex5.m: # - Calcul de l'approximation de pi par la méthode de Leibniz # - le programme simule un job long avec des instructions "pause" inutiles # afin d'illustrer une solution de checkpoint et de reprise manuelle(*) si le # job long a été tué, cf.: # https://www-calculco.univ-littoral.fr/utilisation/lancer-un-calcul#r_beseffort # # Note: le script pi_checkpoint_ex5.m peut-être tester avec Matlab en mode # interactif: il suffit de le stopper avec CTRL+C (et le relancer une 2ième fois) # # manuelle(*) cf. idempotent # # Usage: oarsub -S ./ matlab_ex5_launch.oar # # Note: les directives OAR commencent par #OAR pour les mettre en commentaires # il faut utiliser un double # ################################################################################ #----------------------------------------------------------- # chargement du module matlab (mise à jour du PATH) # # (ajout avril 2017: mise en place de lmod et easybuild sur # la plateforme) # http://lmod.readthedocs.io/en/latest/010_user.html # http://easybuild.readthedocs.io/en/latest/Introduction.html #----------------------------------------------------------- source /nfs/opt/env/env.sh >/dev/null 2>&1 module load matlab #----------------------------------------------------------- # Les directives OAR #----------------------------------------------------------- # donner un nom au job #OAR -n pi_checkpoint_ex5 # les ressources #OAR -l /nodes=1/core=1,walltime=24:00:00 # la file de soumission #OAR -q besteffort ## À faire. ##OAR -t idempotent # notification par mail ou script #OAR --notify mail:marion@lmpa.univ-littoral.fr ##OAR --notify exec:/chemin/vers/mon/script arguments # affiner la selection des ressources avec les propriétés # voir sortie de la commande oarnodes sur le frontal pour les connaître # syntax à la SQL ## ex:novembre 2016: matlab était installé que sur orval 4 et 5 ##OAR -p network_address = 'orval05' or network_address = 'orval04' ##OAR -p nodemodel = 'Dell_R820' and disktype = 'sas' # redirection des sorties standard stdout et stderr # par défaut redirection vers OAR.%jobid%.stdout et OAR.%jobid%.stderr # dans le répertoire courant # A mettre dans scratch sous votre arborescence #OAR -O pi_checkpoint_nfs.%jobid%.out #OAR -E pi_checkpoint_nfs.%jobid%.err # IMPORTANT (ajout déc.2016): # inclure dans les ressources demandées un jeton Matlab de sorte # que le script sera lancé que s'il y a bien un jeton de libre #OAR -t token:matlab=1 # mode besteffort et restart automatique ##OAR -t besteffort ##OAR -t idempotent PROG=pi_checkpoint_ex5 #GROUP=$(id -gn $OAR_USER) #----------------------------------------------------------- # Création du répertoire temporaire local dans scratch #----------------------------------------------------------- # NOTE: pour simplifier l'exemple arrêt/repise de job # tout ce qui concerne l'execution dans l'espace disque local # (scratch) a été supprimé. ce n'est pas une bonne idée... surtout # si votre programme implique de nombreuses entrées/sorties matlab -nodesktop -nodisplay -nosplash -batch $PROG