Afficher la pageAnciennes révisionsLiens de retourHaut de page Cette page est en lecture seule. Vous pouvez afficher le texte source, mais ne pourrez pas le modifier. Contactez votre administrateur si vous pensez qu'il s'agit d'une erreur. ====== Moyens pour le calcul scientifique à l'I2M ====== ===== Le matériel ===== ==== Ressources locales ==== ^ Nom de la machine ^ Os ^ processeur ^ nombre de coeurs ^ fréquence processeur ^ mémoire ^ IP ^ | [[serveur:signal|signal]] | Ubuntu 22.04 | E5-2698 v3 (2 hexa-coeurs) | 32 | 2.3GHz | 192 Go | signal.i2m.univ-amu.fr | | [[reserve:5STZGD2|t630-2]] | Ubuntu 20.04 | E5-2680 v4 (2* 14 coeurs) | 28 | 2.4GHz | 256 Go | t630-2.i2m.univ-amu.fr | | [[reserve:serveurs:core2|core2]] | Ubuntu 18.04 | E5-2683 v4 (28 cœurs) | 28 | 3GHz | 256 Go | | | [[reserve:serveurs:core3|core3]] | Ubuntu 20.04 | Intel(R) Xeon(R) Gold 6230R (2 x 26 cœurs) | 52 | 2.10GHz | 256 Go | | | [[reserve:serveurs:core4|core4]] | Ubuntu 20.04 | Intel(R) Xeon(R) Gold 6230R (2 x 26 cœurs) | 52 | 2.10GHz | 256 Go | | | [[reserve:serveurs:core5|core5]] | Ubuntu 20.04 | Intel(R) Xeon(R) Gold 6230R (2 x 26 cœurs) | 52 | 2.10GHz | 256 Go | | | [[reserve:serveurs:gpu1|gpu1]] | Ubuntu 20.04 | Intel(R) Xeon(R) Bronze 3204 (2 x 6 cœurs) + [[https://www.nvidia.com/fr-fr/data-center/tesla-v100/|Tesla V100S PCIe 32GB]]| 12 | 1.9GHz | 188 Go | | Ancienne marchine qui ne marchent plus : octopus et holopherne ==== Répertoire personnel ==== ''HOME_DIR'' monté, sur le serveur **signal** est le même que celui sur www.i2m.univ-amu.fr, pour récupérer vos "anciennes" données se connecter sur [[protis.i2m.univ-amu.fr]] et faire un scp. ''HOME_DIR'' monté, sur le serveur **t630-2** est le même que celui sur protis.i2m.univ-amu.fr. /* Un [[https://www2/ganglia|coup d'oeil]] sur la charge des ressources de calcul (en local seulement, merci de signaler tout problème à [[i2m-support@univ-amu.fr]]) ==== Ressources complémentaires ==== * [[http://mmg.cnrs-mrs.fr|Marseille Meso-grille]] * [[grille]] accès depuis le réseau du laboratoire * [[http://www.cpu-world.com/Compare_CPUs/Intel_CM8064401438110,Intel_CM8063501454002,Intel_AT80604004869AA/?|comparaison sur les processeurs]] ===== Les logiciels disponibles ===== voir [[logiciels|détails]] ===== Développer ses programmes ===== voir [[developpement]] ===== Executer ===== Le plus simple (et recommandé) est d'utiliser le [[http://fr.wikipedia.org/wiki/Gestionnaire_de_t%C3%A2ches|système de soumission de batches]], ce qui fait qu'au lieu de se connecter sur un serveur particulier, et lancer son programme, on soumet une "tâche" dans une file d'attente (ou queue), par exemple: <code> qsub -q small ./script.sh </code> * qsub est la commande pour soumettre la tâche. Lorsque la tâche est terminée, on reçoit un mail * //small// est le nom d'une des queues disponibles (voir ''qconf -sql'' ou ''status -a'' pour la liste des queues disponibles) * le troisième argument est un script contenant le programme à exécuter (programme fortran, C, etc... ou scilab, matlab, ...) Cette commande peut être lancée depuis une des machinées citées plus haut, ou penelope. __Mode paramétrique__ Si on veut lancer plusieurs fois le même programme en faisant varier un paramètre, il faut lancer la commande suivante: <code> qsub -t 40-100:10 -q big calculs/test-schroedinger-first-order.sh </code> Ici, on va avoir un paramètre qui varie de 40 à 100 par pas de 10. Ce paramètre est récupéré dans le script de lancement de la façon suivante: <code> #!/bin/sh # #$ -S /bin/sh #$ -N "Schroedinger" #$ -M bradji@cmi.univ-mrs.fr,henry@cmi.univ-mrs.fr #$ -m be /local/apps/scilab-5.4.0/bin/scilab -nwni -f /home/bradji/calculs/test-schroedinger-first-order.sce -args "N=$((SGE_TASK_ID))" </code> le script Scilab contient la ligne (la ligne de commandes contient 6 items): <code> args = sciargs(); disp(args(6)); N=sscanf(args(6), 'N=%d'); disp(N); </code> d'autres possibilités avec SGE sur [[http://arc.liv.ac.uk/SGE/howto/sge-array.html]] ==== les queues ==== ^ nom ^ ressources ^ choix ^ | small | 3 slots | à utiliser en priorité, le temps d'exécution est limité à 24h | | big | 1 slot | à réserver aux jobs gros consommateurs de ressources, mémoire limitée à 22Go | | long | 1 slot | à réserver aux jobs longs | Il est possible de changer de queue, si le job est en attente, et qu'une autre queue est libre: <code> $ status -a Running jobs: job-ID # name owner start time running in ----------------------------------------------------------------------------- ... Waiting jobs: job-ID # name owner submit time Queue ------------------------------------------------------------------------ ... 14893 1 OptiCTAA_CI userA 01/26/2012 21:20:35 small ... queue used free -------------------------- big 0 1 long 0 8 small 5 0 </code> il faut utiliser la commande qalter: <code> qalter -q big 14893 </code> ==== le script ==== Un exemple avec scilab: <code> #!/bin/sh # #$ -S /bin/sh #$ -N "sujet_du_message" #$ -M moi@cmi.univ-mrs.fr #$ -m be . /etc/profile.d/modules.sh module purge scilab module load scilab/5.4.0 scilab -nwni -f /home/henry/Simulations/monprog.sce </code> ou avec matlab (mais ne fonctionnera pas sur holopherne car il n y a pas licence sur ce serveur) <code> #!/bin/sh # #$ -S /bin/sh #$ -N "sujet_du_message" #$ -M moi@cmi.univ-mrs.fr #$ -m be export LC_ALL=en_US.UTF-8 . /etc/profile.d/modules.sh module purge matlab module load matlab/7.13 matlab -nodesktop -nodisplay -nojvm < /home/henry/Simulations/monprog.m </code> <note important>Quand SGE lance le script, il est dans le homedir (i.e. /home/henry). Il faut donc donner le chemin des fichiers, en absolu comme ici, ou en relatif par rapport au homedir</note> On soumet le job: <code> qsub -q small -v a=0 -v fa=-5 script.sh </code> (ici en passant deux variables d'environnement voir [[http://www.mathworks.com/matlabcentral/answers/101717-is-it-possible-to-pass-a-matlab-file-that-requires-an-input-argument-to-matlab-in-batch-mode-under-u]]) \\ Le système répond: <code> Your job NNNN ("sujet_du_message") has been submitted </code> et crée 2 fichiers sujet_du_message.oNNNN et sujet_du_message.eNNNN dans votre homedir Une [[http://iusti.polytech.univ-mrs.fr/~jobic/dokuwiki/doku.php?id=sge|description]] plus des détaillées des commandes disponibles pour surveiller l'exécution des tâches ==== Récupération des résultats ==== * l'utilisateur moi@cmi.univ-mrs.fr reçoit un message dès que le job se termine * tant que le job n'est pas terminé, on peut regarder les messages éventuels dans deux fichiers, s'ils sont présents: <code> sujet_du_message.o<jobid> pour les sorties du programme sujet_du_message.e<jobid> pour les erreurs éventuelles </code> ===== Informations ===== * Exemple d'[[http://www.mhpcc.edu/training/workshop/parallel_intro/|introduction à la programmation parallèle]] * Notes pour le [[https://www.i2m.univ-amu.fr/~henry/doku.php?id=master2|Master2]] EDP-AN */ calcul.txt Dernière modification : 2023/04/25 09:47de chabrol