Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
29273 Discussions

code run fine with ifort 10.1 but has problem with ifort 12 and ifort 13

Masoud_J_
Beginner
583 Views

I have a big mpi code it's was completely fine when I used that in ifort 10 but when I want to use systems with ifort 12 or ifort 13, I can compile and run but the code stops ( in some system with segmentation fault, in some of them without any error ). It doesn't go into the simple following function :

[fortran]

!----*|--.---------.---------.---------.---------.---------.---------.-|-------|
SUBROUTINE MPI_COMBINE_STATS(STAT,Z_SIZE,Y_SIZE)
!----*|--.---------.---------.---------.---------.---------.---------.-|-------|
use ntypes
use Domain
use Grid
use mpi_var
implicit none
integer :: I, J, Z_SIZE,Y_SIZE,send_rank
real(r8),dimension(0:Z_SIZE*Y_SIZE-1) :: STAT
real(r8),dimension(0:Z_SIZE*Y_SIZE-1,1:NP) :: STAT_TMP

send_rank = 0
CALL MPI_GATHER(STAT,Z_SIZE*Y_SIZE,MPI_DOUBLE_PRECISION,STAT_TMP,Z_SIZE*Y_SIZE,MPI_DOUBLE_PRECISION,send_rank,MPI_COMM_WORLD,IERROR)
IF ( RANK .EQ. 0) THEN
STAT(:) = 0D0
DO I = 1,NP
DO J =0, Z_SIZE*Y_SIZE-1
STAT(J) = STAT(J) + STAT_TMP(J,I)
ENDDO
ENDDO
ENDIF

RETURN
END

[/fortran]

Is there any way/flag to ask ifort 13 to use structures like ifort 10 or something like this ? I am trying to fix the problems, but that's not too much straight forward .

Regards



0 Kudos
1 Reply
TimP
Honored Contributor III
583 Views

If you are using an open source MPI, you may need to rebuild it with the later compiler.

Even with Intel MPI, I'm not certain that the MPI built with 10.x or earlier compiler could support the current ones.  That would be a question for the HPC forum.

If your MPI throws run-time data type errors, it may mean you are not building and running always with the same MPI.

0 Kudos
Reply