Abaqus Fortran en mode MPI donne des résultats différents en utilisant Matmul
-
21-12-2019 - |
Question
J'utilise le codage Fortran90 FreeFormat et le compilateur Intel Ifort pour créer un sous-programme utilisateur que dans un calcul de l'élément fini dans Abaqus. Cette routine fonctionne juste bien un seul noyau. Cependant, lorsque vous l'utilisez en mode parallèle (MPI), la simulation se bloque avec (signal 11) Je l'ai suivi aux codes suivants. Cela causera des erreurs
BBAR1 = J**(-2d0/3d0)*( MATMUL( F1,TRANSPOSE(F1) ) )
où cette version le fera:
BBAR1 = ( MATMUL( F1,TRANSPOSE(F1) ) )
BBAR1 = J**(-2d0/3d0)*BBAR1
Il conduit mon fou.Est-ce que quelqu'un a des idées pourquoi c'est?
reconnaissant pour tout conseil
La solution
Enfin, j'ai eu la solution à cela. Aujourd'hui, j'ai essayé de rétrograder de manière aléatoire ma version de compilateur Intel d'IFORT 14.0 à IFORT 12.1.5 Maintenant, tout fonctionne très bien .... C'est vraiment étrange.En quelque sorte, la solution parallèle à Abaquée ne fonctionne pas correctement avec la dernière version Intel.