Parcourir la source

exemple pi_array.oar complet(OK)

Ph. Marion il y a 6 ans
Parent
commit
2232dc25ce

+ 1 - 1
checkpoint/checkpoint-dmtcp-openmp4.oar

@@ -41,7 +41,7 @@
 # Note: une reprise de checkpoint sur une autre machine nécessite
 # l'édition du script dmtcp_restart_script.sh 
 #  A EDITER en fonction de la charge: https://www-calculco.univ-littoral.fr/outils_visu/drawgantt/
-#OAR -p network_address = 'orval06' 
+#OAR -p network_address = 'orval01' 
 
 # optionnel
 ##OAR -t besteffort

+ 34 - 0
usage_avance/OAR_array/README.md

@@ -0,0 +1,34 @@
+## Usage «avancé» OAR : array  
+
+*La* «bonne pratique» pour lancer massivement, en parallèle, le même
+programme avec des paramètres différents : **utiliser l'option
+`--array-param-file parametres.txt` d'OAR **. Cette option lance un
+«tableau de tâches» chacune indépendantes les unes des autres
+
+- développer le programme de tel sorte qu'il prenne les paramètres en argument : ./programme.exe arg1 arg2 arg3...
+- générer un fichier ascii qui contient l'ensemble des paramètres à tester
+   - arg11 arg12 arg13 ..
+   - arg21 arg22 arg23 ..
+
+Note: ce fichier peut contenir des centaines, des milliers de lignes
+
+- lancer les expériences via un script OAR:
+   - avec l'option `#OAR --array-param-file parametres.txt`
+   - dans la queue *besteffort* 
+   - avec l'option *idempotent*
+
+Rappel: en besteffort, les ressources sont illimitées mais les jobs sont non prioritaires (ils peuvent être supprimés sans préavis si des jobs de priorité supérieure sont lancés). À noter dans ce cas que le strict nécessaire aux jobs prioritaires est «libéré»: ce n'est pas le tableau de tâches qui est intégralement supprimé. De plus, l'option *idempotent* permet de relancer automatiquement toutes les expériences (qui auraient été tuées par des jobs prioritaires)
+
+
+### exemple 1 : pi_array.oar
+
+le programme pi.exe calcule une approximation de pi par l'intégration de f(x)=4/(1+x^2) sur [0;1].
+Le nombre d'intervalles est passé en argument (regroupé dans le fichier pi_input.txt)
+
+- make    (compile le programme pi.exe)
+- oarsub -S ./pi_array.oar
+
+
+
+
+### exemple 2 (matlab): 

+ 44 - 0
usage_avance/OAR_array/pi_array.oar

@@ -0,0 +1,44 @@
+#!/bin/bash
+################################################################################
+#
+################################################################################
+
+
+#-----------------------------------------------------------
+# Les directives OAR
+#-----------------------------------------------------------
+# donner un nom au job
+
+#OAR -n pi_array
+
+# les ressources
+#OAR -l /core=1,walltime=10:00
+
+# le fichier de paramètres (1 ligne par instance)
+#OAR --array-param-file pi_input.txt
+
+# la file de soumission
+
+#OAR -t besteffort
+#OAR -t idempotent
+
+# si on veut forcer orval 1 à 2 (Dell_R820) OU orval 3 à 5 (Dell_R630) 
+#OAR -p nodemodel = 'Dell_R630' 
+#ou (autre méthode, selon la charge de calculco -monitoring-)
+# https://www-calculco.univ-littoral.fr/monitoring
+##OAR -p network_address = 'orval03' or network_address = 'orval06'
+
+
+#OAR -O pi.%jobid%.out
+#OAR -E pi.%jobid%.err
+
+# si le programme pi.c n'est pas compilé...le compiler:
+# make
+
+# nom du programme
+PROG=pi.exe  
+
+./$PROG "$@"
+
+exit
+

+ 6 - 0
usage_avance/OAR_array/pi_input.txt

@@ -0,0 +1,6 @@
+100
+150
+1000
+100000
+9000
+4000