[MITgcm-support] Problem with parallel build: No. of processes not equal to nPx*nPy
Chun-Yan Zhou
c.zhou at dundee.ac.uk
Sat Nov 12 06:14:23 EST 2011
Hi Gus,
Yes, it is the 'SIZE.h' file, type mistake. Any other idea?
chunyan
----------------------------------------------------------------------
Did you call the file "size.h" as your email says?
I think the file "Size.h" is what is compiled.
Note, the name starts with an upper case "S".
Yes nPx * nPy should be equal to the number of processors in your mpirun command.
Gus Correa
----------------------------------------------------------------------
Message: 1
Date: Fri, 11 Nov 2011 17:51:38 +0000
From: "Chun-Yan Zhou" <c.zhou at dundee.ac.uk>
To: <mitgcm-support at mitgcm.org>
Subject: [MITgcm-support] Problem with parallel build: No. of
processes not equal to nPx*nPy
Message-ID: <4EBD60AA0200003200009B2C at ia-gw-6.dundee.ac.uk>
Content-Type: text/plain; charset="us-ascii"
Hi Martin and Gustavo,
I took Martin's first solution to add the 'libmpi_f77.so' to
LD_LIBRARY_PATH setup in my .bash_profile. It worked! finally! But another funny error occurred.
S/R EEBOOT_MINIMAL: No. of processes not equal to nPx*nPy 1 4
STOP ABNORMAL END: PROGRAM MAIN
In this message i believe the first column (1) is how many processors the code recognizes it
should run.
The second column (4) is the number of procs i request in my mpi command
on . Correct?
I noticed that same error happened 2009 http://mitgcm.org/pipermail/mitgcm-support/2009-April/006011.html
But I didn't see a solution there except for the genmake2 change. Any idea about the problem?
I also tried to delete the file Size.h_mpi and CPP_EEOPTIONS.h_mpi, still got the same error message.
The size.h is as follows.
INTEGER sNx
INTEGER sNy
INTEGER OLx
INTEGER OLy
INTEGER nSx
INTEGER nSy
INTEGER nPx
INTEGER nPy
INTEGER Nx
INTEGER Ny
INTEGER Nr
PARAMETER (
& sNx = 40,
& sNy = 21,
& OLx = 3,
& OLy = 3,
& nSx = 1,
& nSy = 1,
& nPx = 2,
& nPy = 2,
& Nx = sNx*nSx*nPx,
& Ny = sNy*nSy*nPy,
& Nr = 8)
C MAX_OLX :: Set to the maximum overlap region size of any array
C MAX_OLY that will be exchanged. Controls the sizing of exch
C routine buffers.
INTEGER MAX_OLX
INTEGER MAX_OLY
PARAMETER ( MAX_OLX = OLx,
& MAX_OLY = OLy )
BTW, Gustavo, you are right. The MPI_INC_DIR is a *direction*,so I just add the line
MPI_INC_DIR=/usr/include/openmpi-x86_64 in my case.
Best wishes!
chunyan
The University of Dundee is a registered Scottish charity, No: SC015096
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mitgcm.org/pipermail/mitgcm-support/attachments/20111112/1f398eea/attachment-0001.htm>
More information about the MITgcm-support
mailing list