Ph. Marion f0767a54ae corrections README.md oar_array | 6 jaren geleden | |
---|---|---|
.. | ||
Makefile | 6 jaren geleden | |
README.md | 6 jaren geleden | |
gc_array.oar | 6 jaren geleden | |
gc_input.txt | 6 jaren geleden | |
gc_matlab.sh | 6 jaren geleden | |
gc_postraitement.sh | 6 jaren geleden | |
gradientconj.m | 6 jaren geleden | |
pi.c | 6 jaren geleden | |
pi_array.oar | 6 jaren geleden | |
pi_input.txt | 6 jaren geleden |
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
Note: ce fichier peut contenir des centaines, des milliers de lignes
#OAR --array-param-file parametres.txt
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)
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)
Le programme résout un système linéaire par la méthode itérative du gradient conjugué. Le script matlab a été tranformé en fonction: gradientconj(n,tolerance,maxiter)
note: contrairement à l'exemple 1 (ci-dessus) et à l'exemple gradient conjugué des tutoriaux, le script bash OAR ne peut accepter la syntaxe de commande:
matlab -nodisplay -nodesktop -nojvm -r 'testgradientconj("$@");exit'"
L'astuce employée ici est de passer par autre script de lancement intermédiaire: gc_matlab.sh