Hey

Yes, I am from RWTH Aachen, doing Hybrid Parallelization of some code on HPC.

These are the outputs from the command line:

$ mpif90 --showme

gfortran -I/opt/MPI/openmpi-1.5.3/linux/gcc/include -fexceptions -pthread 
-I/opt/MPI/openmpi-1.5.3/linux/gcc/lib -I/opt/MPI/openmpi-1.5.3/linux/gcc/lib 
-Wl,-rpath,/opt/MPI/openmpi-1.5.3/linux/gcc/lib 
-I/opt/MPI/openmpi-1.5.3/linux/gcc/lib -L/opt/MPI/openmpi-1.5.3/linux/gcc/lib 
-lmpi_f90 -lmpi_f77 -lmpi -ldl -Wl,--export-dynamic -lnsl -lutil -lm -ldl



$ mpif77 --showme
gfortran -I/opt/MPI/openmpi-1.5.3/linux/gcc/include -fexceptions -pthread 
-I/opt/MPI/openmpi-1.5.3/linux/gcc/lib 
-Wl,-rpath,/opt/MPI/openmpi-1.5.3/linux/gcc/lib 
-I/opt/MPI/openmpi-1.5.3/linux/gcc/lib -L/opt/MPI/openmpi-1.5.3/linux/gcc/lib 
-lmpi_f77 -lmpi -ldl -Wl,--export-dynamic -lnsl -lutil -lm -ldl


About the make file, I pass all of these parameters as FFLAGS!!! It is a lot, I 
know. :D

gfortran -c -I./ -Isolve/ -Inonlinear/ -Iforward/ -Isimul/ -Isimul/gs/ 
-Isimul/sgsim/ -Ig_taf/ -Iad_taf/ -Iinverse/ -Iinverse/g_taf/ -Iinverse/ad_taf/ 
-Initsol/ -Iprops/bas/ -Iuser/none/ -m64 -fno-second-underscore -march=k8 -O3 
-ffast-math -funroll-all-loops -fprefetch-loop-arrays -mno-ieee-fp -DG95 
-DCLopt -fdefault-integer-8 -frepack-arrays -ftree-vectorize -funit-at-a-time 
-fopenmp -DPROPS_bas -DSIMUL_sgsim -DUSER_none -DfOMP -DQDDOT -Dhead_base 
-DSTBAY -DstdFW -Dsetg_taf -DnoHDF -I/opt/MPI/openmpi-1.5.3/linux/gcc/include 
-fexceptions -pthread -I/opt/MPI/openmpi-1.5.3/linux/gcc/lib 
-I/opt/MPI/openmpi-1.5.3/linux/gcc/lib 
-Wl,-rpath,/opt/MPI/openmpi-1.5.3/linux/gcc/lib 
-I/opt/MPI/openmpi-1.5.3/linux/gcc/lib -L/opt/MPI/openmpi-1.5.3/linux/gcc/lib 
-lmpi_f90 -lmpi_f77 -lmpi -ldl -Wl,--export-dynamic -lnsl -lutil -lm -ldl -x 
f95-cpp-input simul/simul_wrapper.f90 -o simul/simul_wrapper.o 
-I/opt/MPI/openmpi-1.5.3/linux/gcc/include -fexceptions -pthread
 -I/opt/MPI/openmpi-1.5.3/linux/gcc/lib -I/opt/MPI/openmpi-1.5.3/linux/gcc/lib


Regards,
Ali
RWTH Aachen


________________________________
 From: "Iliev, Hristo" <il...@rz.rwth-aachen.de>
To: Mohamad Ali Rostami <ma.rost...@yahoo.com>; Open MPI Users 
<us...@open-mpi.org> 
Sent: Wednesday, June 27, 2012 2:59 PM
Subject: RE: [OMPI users] MPI Problem
 

Hi,
 
Could you please compare the output from “mpif77/mpif90 -showme” when executed 
from the command line and from inside the Makefile? Could you also check that 
the argument to MPI_INIT is a normal INTEGER and is not getting some funny KIND 
or preprocessor treatment?
 
Regards,
--
Hristo Iliev, Ph.D. -- High Performance Computing
RWTH Aachen University, Center for Computing and Communication
 
From:users-boun...@open-mpi.org [mailto:users-boun...@open-mpi.org] On Behalf 
Of Mohamad Ali Rostami
Sent: Wednesday, June 27, 2012 9:36 AM
To: Jeff Squyres
Cc: Open MPI Users
Subject: Re: [OMPI users] MPI Problem
 
Something strange,
 
By adding all the libraries which I found from mpif90/mpif77 --showme,
Fortran 77 version worked finally,
but Fortran 90 version still has the problem.
 
Error: There is no specific subroutine for the generic 'mpi_init' at (1)
 
any idea??
 

________________________________

From:Jeff Squyres <jsquy...@cisco.com>
To: Mohamad Ali Rostami <ma.rost...@yahoo.com> 
Cc: Open MPI Users <us...@open-mpi.org> 
Sent: Monday, June 25, 2012 10:22 PM
Subject: Re: [OMPI users] MPI Problem

On Jun 25, 2012, at 3:59 PM, Mohamad Ali Rostami wrote:

> >    mpif90 my_application.f90 -o my_application
> 
> Yes, as I told you out of make file, it works.
> The problem is something strange in the make file.

I'm sorry; I must have mis-parsed your issue, then.  So just to make sure I 
understand:

shell$ mpif90 my_application.f90 -o my_application

Works fine, but:

shell$ make
...something that eventually invokes "mpif90 my_application.f90 -o 
my_application"

doesn't work.  Right?

If you're invoking the exact same command in both cases (interactive shell and 
makefile), the *usual* cause of this kind of problem is that the "mpif90" in 
your Makefile is picking up a different mpif90 than the one that is picked up 
by your shell.  Meaning: your PATH has been reset in the sub-process where 
"make" is executed, and so when make forks off "mpif90", it finds a different 
one than the one you execute interactively in the shell.

Check what your path is and/or exactly which mpif90 is getting invoked by your 
Makefile.

-- 
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to: 
http://www.cisco.com/web/about/doing_business/legal/cri/

Reply via email to