- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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.

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page