Welcome on the forums. Please post in English or French.
You are not logged in. You won't be able to post until you register and log in using the top-right bar.
Bonjour,
J'essaye de construire un version parallèle de CodeAster unstable, avec
- compilateurs et mkl intel version 11.1/072
- mpich2-1.0.8
- adaptation des fichiers de configuration depuis la version parallèle STA10.3
Le résultat:
Exécution de Code_Aster
<INFO> Ligne de commande 1 :
<INFO> ./asteru_mpi Python/Execution/E_SUPERV.py -eficas_path ./Python -commandes fort.1 -num_job 2033-tango -mode interactif -rep_outils /opt/aster/v11.2/outils -rep_mat /opt/aster/v11.2/unstable/materiau -rep_dex /opt/aster/v11.2/unstable/datg -suivi_batch -memjeveux 256.0 -tpmax 1500
/opt/mpi/mpich_ifort/bin/mpdlib.py:8: DeprecationWarning: The popen2 module is deprecated. Use the subprocess module.
import sys, os, signal, popen2, socket, select, inspect
/opt/mpi/mpich_ifort/bin/mpdlib.py:16: DeprecationWarning: the md5 module is deprecated; use hashlib instead
from md5 import new as md5new
(parallel_copy) - destination : /tmp/miko-tango-interactif.2033-tango/proc.0 - temps initial : 22:18:27
(parallel_copy) - destination : /tmp/miko-tango-interactif.2033-tango/proc.0 - graine : /tmp/miko-tango-interactif.2033-tango/global/*
COPIE /tmp/miko-tango-interactif.2033-tango/global/* vers /tmp/miko-tango-interactif.2033-tango/proc.0
cp -L -r /tmp/miko-tango-interactif.2033-tango/global/* /tmp/miko-tango-interactif.2033-tango/proc.0
[ OK ]
(parallel_copy) - destination : /tmp/miko-tango-interactif.2033-tango/proc.0 - temps final : 22:18:28Et un message pas très sympa...
/opt/aster/v11.2/testing/bibc/supervis/astercore_module.c 414 : erreur lors de l'appel a la fonction E_Global.print_header TypeError: print_header() takes exactly 1 argument (0 given) rank 0 in job 2 tango_41052 caused collective abort of all ranks exit status of rank 0: killed by signal 9 EXIT_COMMAND_2126_00000019=137 <INFO> Exécution Code_Aster terminée, diagnostic : <S>_ERROR
La commande "mpirun_cmd" d'asrun fonctionne "à la main"
mpirun_cmd : /opt/mpi/mpich/bin/mpiexec -machinefile %(mpi_hostfile)s -wdir %(wrkdir)s -n %(mpi_nbcpu)s %(program)s
Exemple
mpirun -machinefile /opt/aster/v11.2/etc/codeaster/mpi_hostfile -np 4 -wdir /tmp /opt/mumps/mumps-4.9.2/build/examples/dsimpletest < input_simpletest_real Solution is 0.99999999999999878 1.9999999999999996 3.0000000000000009 3.9999999999999987 5.0000000000000018
Si quelqu'un pouvait m'indiquer d'où vient l'erreur ?
D'avance merci,
Miko
Last edited by miko (2012-08-12 19:01:50)
Offline
Bonjour,
testing ou unstable ? visiblement il y a un mélange des 2 d'où le problème avec print_header et le nombre d'argument.
MC
Offline
courtois wrote:
Bonjour,
testing ou unstable ? visiblement il y a un mélange des 2 d'où le problème avec print_header et le nombre d'argument.
MC
Bonjour,
C'est bien vu, merci Mathieu.
En effet, depuis le répertoire "unstable", j'ai lancé cette commande
../bin/as_run --make --config=config_mpi.txt
L’exécutable "asteru_mpi" a été créé dans le répertoire "testing"
Je l'ai déplacé dans le répertoire "unstable", d'où le problème.
En le replaçant de nouveau dans le répertoire "testing" y compris les fichiers
"config_mpi.txt" et le "profile_mpi.sh", le code fonctionne.
Par contre coté performances, c'est décevant, pour un calcul avec contact, solveur MUMPS, j'ai:
mpi_nbcpu ELAPSED 1 480.16 2 503.55 4 650.03
En version séquentielle, solveur MULTI_FRONT, ncpus=4, ELAPSED = 505.31
Je veux tenter de nouveau la compilation de la version "unstable"
Miko
Offline
miko wrote:
Je veux tenter de nouveau la compilation de la version "unstable"
Depuis $ASTER_ROOT, lancement de la commande:
bin/as_run --vers=unstable --make --config=unstable/config_mpi.txt
Le résultat:
OK Catalogue d'éléments compilé avec succès copie de .../elem.1... [ OK ] OK Code_Aster a été construit avec succès OK Construction terminée correctement de /opt/aster/v11.2/unstable sur tango (*) les temps cpu et système peuvent ne pas être mesurés correctement quand on utilise mpirun. as_run 1.10.6 ------------------------------------------------------------ --- DIAGNOSTIC JOB : OK ------------------------------------------------------------
Miko
Offline
miko wrote:
Par contre coté performances, c'est décevant, pour un calcul avec contact, solveur MUMPS, j'ai:
Code:
mpi_nbcpu ELAPSED 1 480.16 2 503.55 4 650.03En version séquentielle, solveur MULTI_FRONT, ncpus=4, ELAPSED = 505.31
Avec un calcul de contact, il faut faire attention, en effet, tous les solveurs de contact ne profitent pas du parallélisme.
Par exemple si on a un calcul avec méthode discrète CONTRAINTE où le contact représente la majeure partie du temps de calcul alors il n'est pas étonnant de voir les temps se dégrader car ce solveur ne tire absolument pas partie du parallélisme. Or ce dernier induit nécesserairement des surcoûts (que l'on n'espère en général compensés par les gains en temps de calcul).
La doc U2.04.04 donne quelques infos sur le niveau de parallélisme de chaque méthode. Seules 2 en profitent vraiment : la méthode GCP faiblement et la méthode CONTINUE à partir de la version 11.2
TdS
Offline