Abaqus Fortran en modo MPI da diferentes resultados usando Matmul
-
21-12-2019 - |
Pregunta
Estoy usando ForTran90 FreeFormat Coding y Intel Ifort Compiler para crear una subrutina de usuario que se usa además en un cálculo de elementos finitos en Abaqus. Esta rutina funciona bien, un solo núcleo. Sin embargo, cuando se usa en modo paralelo (MPI), la simulación se bloquea con (señal 11) Lo rastreé a los siguientes codelines. Esto causará errores
BBAR1 = J**(-2d0/3d0)*( MATMUL( F1,TRANSPOSE(F1) ) )
donde esta versión lo hará:
BBAR1 = ( MATMUL( F1,TRANSPOSE(F1) ) )
BBAR1 = J**(-2d0/3d0)*BBAR1
está conduciendo mi locura.¿Alguien tiene alguna idea por qué eso es?
Agradecido por cualquier consejo
Solución
Finalmente recibí la solución a esto. Hoy intenté aleatoriamente degradar mi versión del compilador de Intel desde Ifort 14.0 a Ifort 12.1.5 Ahora todo funciona bien ... Esto es realmente extraño.De alguna manera, la solución paralela en Abaqus funciona no correctamente con el nuevo lanzamiento de Intel.