Ocean Modeling Discussion

ROMS/TOMS

Search for:
It is currently Mon Jul 22, 2019 2:12 pm




Post new topic Reply to topic  [ 7 posts ] 

All times are UTC

Author Message
PostPosted: Mon Oct 24, 2005 6:48 pm 
Hi everybody,

I am trying to compile ROMS on linux with pgi fortran compiler,

1)
My first error:
-Unable to open include file: mpif.h (mod_parallel.f90: 18)

I go to line and change the following line

include 'mpif.h'
to
include '/usr/mpich/pgi/include/mpif.h'

it works, but is there anyway to do this (I also added /usr/mpich/pgi/include in my path, but now working) without modifying the source code (same thing also happens the statement "include 'netcdf.inc' " in mod_netcdf.F).

2) I have some archive file which is not succesfully created,
-rw-r--r-- 1 yildirim grad 8 Oct 24 14:16 libADM.a
-rw-r--r-- 1 yildirim grad 8 Oct 24 14:24 libICE.a
-rw-r--r-- 1 yildirim grad 609972 Oct 24 14:25 libMODS.a
-rw-r--r-- 1 yildirim grad 1135138 Oct 24 14:24 libNLM.a
-rw-r--r-- 1 yildirim grad 8 Oct 24 14:16 libRPM.a
-rw-r--r-- 1 yildirim grad 8 Oct 24 14:16 libTLM.a
-rw-r--r-- 1 yildirim grad 1508014 Oct 24 14:25 libUTIL.a

Is this crucial, what is wrong in there,

3) I hope that this is my final error,

$>> make -f makefile.linux.trapezoid

pgf90 -u -Bstatic -fastsse -Mipa=fast master.o ocean_control.o -o oceanM_linux_trapezoid libADM.a libRPM.a libTLM.a libNLM.a libICE.a libUTIL.a libMODS.a -L/users/yildirim/LinuxNETCDF/netcdf/lib -lnetcdf -lfmpi-pgi -lmpi-pgi
The following function(s) are called, but no IPA information is available:
mpi_init_, mpi_comm_rank_, mpi_finalize_, mod_param_initialize_param_, mod_parallel_initialize_parallel_, mod_scalars_initialize_scalars_, wclock_on_, inp_par_, mod_arrays_, initial_, main3d_, wrt_rst_, wclock_off_, close_io_
IPA inhibited
make: *** [oceanM_linux_trapezoid] Error 2



thanks,











I have not encountered this problem in Linux with g95 and SGI machines,

thanks,


Top
  
Reply with quote  
PostPosted: Wed Oct 26, 2005 1:50 am 
Offline

Joined: Wed Apr 07, 2004 10:48 pm
Posts: 52
Location: 2nd Institute of Oceanography,SOA
yildirim wrote:
Hi everybody,

I am trying to compile ROMS on linux with pgi fortran compiler,

1)
My first error:
-Unable to open include file: mpif.h (mod_parallel.f90: 18)

I go to line and change the following line

include 'mpif.h'
to
include '/usr/mpich/pgi/include/mpif.h'

it works, but is there anyway to do this (I also added /usr/mpich/pgi/include in my path, but now working) without modifying the source code (same thing also happens the statement "include 'netcdf.inc' " in mod_netcdf.F).

I would think you can resolve this problem by copying mpif.h to the running directory such as roms-2.2/

For netcdf, you might need to set an environment variable in ~/.bashrc, please find how to do it in the Netcdf website


2) I have some archive file which is not succesfully created,
-rw-r--r-- 1 yildirim grad 8 Oct 24 14:16 libADM.a
-rw-r--r-- 1 yildirim grad 8 Oct 24 14:24 libICE.a
-rw-r--r-- 1 yildirim grad 609972 Oct 24 14:25 libMODS.a
-rw-r--r-- 1 yildirim grad 1135138 Oct 24 14:24 libNLM.a
-rw-r--r-- 1 yildirim grad 8 Oct 24 14:16 libRPM.a
-rw-r--r-- 1 yildirim grad 8 Oct 24 14:16 libTLM.a
-rw-r--r-- 1 yildirim grad 1508014 Oct 24 14:25 libUTIL.a

Is this crucial, what is wrong in there,

3) I hope that this is my final error,

$>> make -f makefile.linux.trapezoid

pgf90 -u -Bstatic -fastsse -Mipa=fast master.o ocean_control.o -o oceanM_linux_trapezoid libADM.a libRPM.a libTLM.a libNLM.a libICE.a libUTIL.a libMODS.a -L/users/yildirim/LinuxNETCDF/netcdf/lib -lnetcdf -lfmpi-pgi -lmpi-pgi
The following function(s) are called, but no IPA information is available:
mpi_init_, mpi_comm_rank_, mpi_finalize_, mod_param_initialize_param_, mod_parallel_initialize_parallel_, mod_scalars_initialize_scalars_, wclock_on_, inp_par_, mod_arrays_, initial_, main3d_, wrt_rst_, wclock_off_, close_io_
IPA inhibited
make: *** [oceanM_linux_trapezoid] Error 2



thanks,











I have not encountered this problem in Linux with g95 and SGI machines,

thanks,


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Fri Oct 28, 2005 8:03 pm 
Offline
User avatar

Joined: Wed Jul 02, 2003 5:29 pm
Posts: 3633
Location: IMS/UAF, USA
You can change the makefile fragment under Compilers that you are using. You want to add options like -I/usr/mpich/pgi/include and change where it looks for NetCDF. Hernan is adding in some MPICH options to the makefile, not sure if you have that version yet. That might help with #3 as well.

I don't know what happened with #2 - you don't provide any error messages.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Mon Oct 31, 2005 4:04 am 
Offline
Site Admin
User avatar

Joined: Wed Feb 26, 2003 4:41 pm
Posts: 1078
Location: IMCS, Rutgers University
There are two possibilities for compiling ROMS in a linux cluster with the single new makefile structure and any compiler:

1) Some clusters systems (vendors) provide a native MPI library. This is kind of advantegeous because the MPI (MPICH) libraries are optimized for such particular architectures and they are more efficient. The mpif90 script is not required in this case. The fact that you cannot find mpif.h is telling you that, probably, a native MPI library is not available. Then, you are using the wrong value for macro FORT in the makefile. You need to use mpif90 instead of pgi as a value. Hardwiring the path for this include file is not a good idea because you must use the mpif90 script instead. There are other compilation intructions that may be required in this script.

2) Alternatively, you need to use the generic MPICH script mpif90 in some systems. That is, FORT must have as a value mpif90. In the ROMS released compiling structure, we provided the make rules file Linux-mpif90.mk for such compilation.

However, if you have more than one compiler in you system there is not an easy way to select the desired compiler. For this reason, I modified the makefile and its associate compiling rules files to allow this capability. A new macro switch, MPIF90, is included in the makefile to achieve this:

Code:
#  If distributed-memory, turn on compilation via the script "mpif90".
#  This is needed in some Linux operating systems. In some systems with
#  native MPI libraries the compilation does not require MPICH type
#  scripts. This macro is also convient when there are several fortran
#  compiliers (ifort, pgf90, pathf90) in the system that use mpif90.
#  In this, case the user need to select the desired compiler below and
#  turn on both MPI and MPIF90 macros.

      MPIF90 :=


I updated the corrections tar file for ROMS 2.2 which includes the updates to the makefile. Noticed that I eliminated file Compiler/Linux-mpif90.mk because it is no longer needed.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Thu Apr 06, 2006 10:21 pm 
Offline

Joined: Mon Feb 20, 2006 10:34 pm
Posts: 6
Location: State University of New York at Buffalo
Hi
Does anyone know answer to yildirim's third question. I get something similar using PGF90 :

The following function(s) are called, but no IPA information is available:
mod_param_initialize_param_, mod_parallel_initialize_parallel_, mod_scalars_initialize_scalars_, wclock_on_, inp_par_, mod_arrays_, initial_, main3d_, wrt_rst_, wclock_off_, close_io_
IPA inhibited
make: *** [/home/tsingh2/compile/oceanS] Error 2
rm mod_kinds.f90

Any suggestions :?:

~ Tarun


Top
 Profile  
Reply with quote  
 Post subject: "IPA inhibited"
PostPosted: Fri Jun 23, 2006 7:17 pm 
Offline

Joined: Tue Jul 01, 2003 5:21 pm
Posts: 1
Location: University of Arizona
Hi.

I get exactly the same error message as tarusingh.

"The following function(s) are called, but no IPA information is available:
mod_param_initialize_param_, mod_parallel_initialize_parallel_, mod_scalars_initialize_scalars_, wclock_on_, inp_par_, mod_arrays_, initial_, main3d_, wrt_rst_, wclock_off_, close_io_
IPA inhibited
make: *** [../in/oceanM] Error 2
rm mod_kinds.f90"

Has anyone found the reason for or a way around this?

Paul


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Fri Jun 23, 2006 9:08 pm 
Offline

Joined: Mon Feb 20, 2006 10:34 pm
Posts: 6
Location: State University of New York at Buffalo
I couldn't find a way to get around with this problem... :( . I have now switched on from pgf90 to ifort copilers. Everything hs been working very fine for me with this new compiler. :D . You can download a student version of the compiler from intel
Hope this helps

Best of Luck
Tarun


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 7 posts ] 

All times are UTC


Who is online

Users browsing this forum: No registered users and 3 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group