devel:cluster
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
devel:cluster [2016/08/20 08:57] – boman | devel:cluster [2017/06/28 16:14] (current) – papeleux | ||
---|---|---|---|
Line 14: | Line 14: | ||
De l' | De l' | ||
- | Le cluster est l' | + | Le cluster est l' |
- | Coté disque, | + | Coté disque, |
+ | |||
+ | On utilise SFTP ([[http:// | ||
En RAM, chaque coeur dispose de 4Go. Autrement dit, chaque noeud possède 4x12=48Go de RAM, pour un total de 576Go si on somme les 12 noeuds. | En RAM, chaque coeur dispose de 4Go. Autrement dit, chaque noeud possède 4x12=48Go de RAM, pour un total de 576Go si on somme les 12 noeuds. | ||
Line 22: | Line 24: | ||
Seul le " | Seul le " | ||
- | L'OS installé est [[http:// | + | Le cluster ayant été réinstallé récement (05/2017) suite à un crash disk, l'OS installé est [[http:// |
- | La plupart des applications et des libs sont installées sur ''/ | + | La plupart des applications et des libs sont installées sur ''/ |
Line 58: | Line 60: | ||
Tout ça pour dire que si on veut travailler avec Metafor, il faut charger au démarrage les modules dont il dépend. Ceci est fait dans le fichier ~/ | Tout ça pour dire que si on veut travailler avec Metafor, il faut charger au démarrage les modules dont il dépend. Ceci est fait dans le fichier ~/ | ||
<file module.profile> | <file module.profile> | ||
- | # sge : gestionnaire de queue | + | module load slurm |
- | module load sge | + | |
- | # applications nécessaires à la compilation - run metafor | + | |
- | module load cmake samcef swig python qt vtk | + | |
- | module load isosurf gmsh tetgen triangle matlab | + | |
- | module load gcc | + | |
- | # old intel-cluster-studio | + | module load git subversion |
- | #module load intel-tbb | + | module load gcc cmake swig |
- | #module load intel-cl-st/ | + | module load python qt vtk parasolid mumps |
- | #module load intel-cl-st/ | + | #module load gmm trilinos |
- | # nouveau svn | + | module load samcef gmsh |
- | module load subversion/ | + | module load isosurf tetgen triangle |
+ | module load matlab scilab | ||
- | # new intel-cluster-studio | + | # intel community |
- | . / | + | #. / |
+ | . / | ||
+ | . /cm/ | ||
+ | |||
+ | # sinon cmake prend /usr/bin/cc meme si gcc est dans le PATH! | ||
+ | export CC=gcc | ||
+ | export CXX=g++ | ||
+ | export FC=gfortran | ||
+ | |||
+ | #icc | ||
+ | #export CC=$(which icc) | ||
+ | #export CXX=$(which icpc) | ||
+ | #export FC=$(which ifort) | ||
</ | </ | ||
Line 90: | Line 100: | ||
Actions: | Actions: | ||
a/ e-mail address (reports) | a/ e-mail address (reports) | ||
- | c/ SVN repository | + | b/ archive name |
- | d/ SVN branch | + | c/ build options |
- | e/ build options | + | d/ debug mode : False |
- | f/ debug mode : False | + | h/ nice value : ' |
- | j/ nb of task launched in parallel | + | j/ nb of task launched in parallel |
- | k/ nb of threads by task : '8' | + | k/ nb of threads by task : '1' |
- | m/ Run Method | + | m/ Run Method |
- | n/ SGE queue : ' | + | |
- | o/ SGE run on local disk : True | + | |
- | p/ additional SGE args : '' | + | |
- | 1/ source | + | 1/ source |
2/ compile | 2/ compile | ||
- | 3/ battery | + | 3/ battery |
- | 4/ installer | + | |
G/ GO | G/ GO | ||
Line 112: | Line 118: | ||
Your choice? | Your choice? | ||
</ | </ | ||
- | La configuration fabulous.cmake contient toutes les informations pour compiler par défaut avec le compilateur intel (le gcc étant trop vieux pour compiler | + | La configuration fabulous.cmake contient toutes les informations pour compiler par défaut avec le gcc 6.3 recompilé et installé dans ''/ |
- | Lancez la compilation par "'' | + | Configurez l' |
+ | Lancez la compilation par "'' | ||
+ | ===== Lancer des calculs ===== | ||
+ | Pour lancer un calcul sur les noeuds, il ne faut pas vous connecter sur les noeuds. A partir du Master Node, les tests sont mis en attente dans un système de queues et sont executés en fonction de la disponibilité des ressources (noeuds, mémoire, | ||
+ | L' | ||
- | ===== Lancer des calculs | + | <note warning> ATTENTION : Actuellement, |
+ | </ | ||
- | Pour lancer | + | Une fois organisé |
- | + | < | |
- | Encore une fois, il est possible de faire ça manuellement ou grâce aux scripts de Metafor | + | Actions: |
- | + | b/ exec name : '../Metafor/ | |
- | Ensuite créez un répertoire vide et allez dedans. Tapez "'' | + | c/ test filename |
- | < | + | |
- | a/ e-mail address (reports) | + | |
- | b/ exec name : '../oo_metaB/ | + | |
- | c/ test name : 'apps.qs.cont2' | + | |
d/ logfile (no ext) : ' | d/ logfile (no ext) : ' | ||
e/ algorithm | e/ algorithm | ||
+ | g/ Run multiple test on dir : False | ||
j/ nb of task launched in parallel | j/ nb of task launched in parallel | ||
- | k/ nb of threads by task : '1' | + | k/ nb of threads by task : '12' |
- | m/ Run Method | + | m/ Run Method |
- | | + | |
- | | + | |
- | | + | |
+ | q/ Time (d-hh: | ||
u/ ftp transfert | u/ ftp transfert | ||
Line 143: | Line 152: | ||
Q/ QUIT | Q/ QUIT | ||
- | Your choice? | ||
- | </ | ||
- | Choisissez la méthode de run " | ||
- | Metafor est capable d' | ||
- | <note warning> | + | |
- | ATTENTION : A ce jour, la configuration des queues via SGE ou le script de lancement des calculs généré par launch.py permet de lancer plusieures tâches en même temps, MAIS seul 1 job tournera effectivement.\\ | + | |
- | Conclusion : ne demandez pas plus d'1 tâche à la fois par '' | + | |
- | < | + | |
- | j/ nb of task launched in parallel | + | |
</ | </ | ||
- | (=> splittez vos tests dans plusieurs répértoires et faites plusieurs commandes launch ...) | ||
- | </ | ||
- | Une fois que le job est lancé, il est possible | + | Configurez les chemins vers l' |
- | | + | (ATTENTION le produit (nbTests * nbThreads) ne peut dépasser le nombre de coeurs sur 1 noeud soit 12). |
- | Voilà ce que ça peut donner: | + | |
+ | Choisissez | ||
+ | Metafor est capable d' | ||
+ | |||
+ | Soyez attentif aux paramètres de mémoire ( "'' | ||
+ | et de temps de calcul demandés ("'' | ||
+ | |||
+ | Une fois que le job est lancé, ("'' | ||
< | < | ||
- | boman@fabulous: | + | Your choice? go in slurm |
- | queuename | + | sending job 'Tests.banc18ER.casingRotAnalysis.WingletBlade.Coarse3250Eas' |
- | --------------------------------------------------------------------------------- | + | Submitted batch job 451 |
- | all.q@node001.cm.cluster | + | Submission SUCCESSFUL! |
- | 72 0.58500 fullblade7 boman r | + | |
- | --------------------------------------------------------------------------------- | + | |
- | all.q@node002.cm.cluster | + | |
- | --------------------------------------------------------------------------------- | + | |
- | all.q@node003.cm.cluster | + | |
- | 69 0.50500 barbara04f boman r | + | </code> |
- | --------------------------------------------------------------------------------- | + | |
- | all.q@node004.cm.cluster | + | |
- | 73 0.56500 fullblade7 boman r | + | |
- | --------------------------------------------------------------------------------- | + | |
- | all.q@node005.cm.cluster | + | |
- | 74 0.54500 fullblade7 boman r | + | |
- | --------------------------------------------------------------------------------- | + | |
- | all.q@node006.cm.cluster | + | |
- | --------------------------------------------------------------------------------- | + | |
- | all.q@node007.cm.cluster | + | |
- | 76 0.50500 fullblade7 boman r | + | |
- | --------------------------------------------------------------------------------- | + | |
- | all.q@node008.cm.cluster | + | |
- | --------------------------------------------------------------------------------- | + | |
- | all.q@node009.cm.cluster | + | |
- | --------------------------------------------------------------------------------- | + | |
- | all.q@node010.cm.cluster | + | |
- | 75 0.52500 fullblade7 boman r | + | |
- | --------------------------------------------------------------------------------- | + | |
- | all.q@node011.cm.cluster | + | |
- | 71 0.60500 fullblade7 boman r | + | |
- | --------------------------------------------------------------------------------- | + | |
- | all.q@node012.cm.cluster | + | |
- | ############################################################################ | + | squeue donne des informations sur les jobs dans les queues : |
- | | + | pour mon job en particulier : |
- | ############################################################################ | + | < |
- | 79 0.00000 dev.batter boman qw 05/17/2011 16:45:02 12 | + | squeue |
+ | Wed Jun 28 16:08:43 2017 | ||
+ | JOBID PARTITION | ||
+ | 451 defq metafor papeleux | ||
+ | </ | ||
+ | ou pour tous les jobs : | ||
+ | < | ||
+ | squeue | ||
+ | Wed Jun 28 16:05:54 2017 | ||
+ | JOBID PARTITION | ||
+ | 418 defq metafor wautelet | ||
+ | 451 defq metafor papeleux | ||
+ | </ | ||
+ | |||
+ | Les outputs de sprio (actuellement pas de calcul de priorité des jobs => premier arrivé, premier servis) | ||
+ | < | ||
+ | sprio -l | ||
+ | You are not running a supported priority plugin | ||
+ | (priority/basic). | ||
+ | Only ' | ||
+ | sstat -a --format=JobID, | ||
+ | | ||
+ | ------------ -------- ---------- ---------- | ||
+ | sstat: WARNING: We will use a much slower algorithm with proctrack/ | ||
+ | 451.0 | ||
</ | </ | ||
- | Pour voir tous les jobs gérés par SGE pour tous les utilisateurs: | ||
- | qstat -u ' | ||
- | Pour voir les nom complet de vos jobs gérés par SGE: | ||
- | qstat -r | grep "Full jobname" | ||
- | Pour supprimer son job avant la fin, il suffit de repérer son numéro par "'' | ||
- | qdel [numero] | ||
- | Des mails sont envoyés par SGE pour signaler le démarrage, le kill ou la fin du job. | ||
- | Au lancement de jobs à travers "'' | + | pour plus d'info sur les commandes Slurm, lire [[devel: |
- | qDelxxxx.py : permet de killer un job (Attention, cette commande ne gère pas la copie et suppression des fichiers temporaires de calcul sur le disque du noeud de calcul) | + | Des mails sont envoyés par Slurm pour signaler le démarrage, le kill ou la fin du job. |
+ | |||
+ | Au lancement de jobs à travers "'' | ||
+ | |||
+ | sCancelxxxx.py : permet de killer un job (Attention, cette commande ne gère pas la copie et suppression des fichiers temporaires de calcul sur le disque du noeud de calcul) | ||
cpNodeResultsxxxx.py : copie les fichiers du disque du noeud de calcul (''/ | cpNodeResultsxxxx.py : copie les fichiers du disque du noeud de calcul (''/ | ||
rmNodeResultsxxxx.py : nettoye le disque du noeud de calcul des fichiers du process xxxx ('' | rmNodeResultsxxxx.py : nettoye le disque du noeud de calcul des fichiers du process xxxx ('' | ||
Line 218: | Line 222: | ||
Nb : le script '' | Nb : le script '' | ||
+ | |||
+ | Nb2 : Les noeuds de calcul n' | ||
Pour plus d' | Pour plus d' |
devel/cluster.1471676271.txt.gz · Last modified: 2016/08/20 08:57 by boman