forum@abinit.org
Subject: The ABINIT Users Mailing List ( CLOSED )
List archive
- From: James Johns <jej7x@xenon.cchem.berkeley.edu>
- To: forum@abinit.org
- Subject: Re: [abinit-forum] Compiling abinip using mpich on Suse10.1
- Date: Tue, 17 Feb 2009 11:22:16 -0800 (PST)
Thanks for the help Alain, i took your advice and installed openmpi into /opt/openmpi and exported the paths as you said. I then compiled the simple hello world program below using mpifortran and ran the a.out using "mpirun a.out" and it worked just fine. I then switched to my abinit directory to try configure --enable-mpi --with-mpi-prefix=/opt/openmpi. I thought the configuration script ran fine, and tried make multi and make multi_alt, but I kept getting this error.
ltypes.F90
In file defs_wvltypes.F90:33
use BigDFT_API
1
Fatal Error: Can't open module file 'bigdft_api.mod' for reading at (1): No such file or directory
make[1]: *** [defs_wvltypes.o] Error 1
I then checked the config.log file and found the following error:
configure:9388: /opt/openmpi//bin/mpicc -E conftest.c
conftest.c:16:28: error: ac_nonexistent.h: No such file or directory
configure:9395: $? = 1
configure: failed program was:
| /* confdefs.h. */
and
configure:11219: /opt/openmpi//bin/mpicc -c conftest.c >&5
configure:11226: $? = 0
configure:11258: /opt/openmpi//bin/mpicc -c conftest.c >&5
conftest.c: In function 'main':
conftest.c:34: error: 'not' undeclared (first use in this function)
conftest.c:34: error: (Each undeclared identifier is reported only once
conftest.c:34: error: for each function it appears in.)
conftest.c:34: error: expected ';' before 'big'
configure:11265: $? = 1
configure: failed program was:
| /* confdefs.h. */
and one other one with confdefs.h.
I get the same result when I type gcc -v
gcc -v
Using built-in specs.
Target: x86_64-suse-linux
Configured with: ../configure --enable-threads=posix --prefix=/usr --with-local-prefix=/usr/local --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64 --enable-languages=c,c++,objc,fortran,obj-c++,java,ada --enable-checking=release --with-gxx-include-dir=/usr/include/c++/4.1.2 --enable-ssp --disable-libssp --disable-libgcj --with-slibdir=/lib64 --with-system-zlib --enable-shared --enable-__cxa_atexit --enable-libstdcxx-allocator=new --program-suffix= --enable-version-specific-runtime-libs --without-system-libunwind --with-cpu=generic --host=x86_64-suse-linux
Thread model: posix
gcc version 4.1.2 20070115 (SUSE Linux)
and when I type mpif90 -v or /opt/openmpi/bin/mpif90 -v
/opt/openmpi/bin/mpif90 -v
Using built-in specs.
Target: x86_64-suse-linux
Configured with: ../configure --enable-threads=posix --prefix=/usr --with-local-prefix=/usr/local --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64 --enable-languages=c,c++,objc,fortran,obj-c++,java,ada --enable-checking=release --with-gxx-include-dir=/usr/include/c++/4.1.2 --enable-ssp --disable-libssp --disable-libgcj --with-slibdir=/lib64 --with-system-zlib --enable-shared --enable-__cxa_atexit --enable-libstdcxx-allocator=new --program-suffix= --enable-version-specific-runtime-libs --without-system-libunwind --with-cpu=generic --host=x86_64-suse-linux
Thread model: posix
gcc version 4.1.2 20070115 (SUSE Linux)
Finally, you wanted to see the showme
/opt/openmpi/bin/mpif90 -showme
gfortran -I/opt/openmpi/include -pthread -I/opt/openmpi/lib -L/opt/openmpi/lib -lmpi_f90 -lmpi_f77 -lmpi -lopen-rte -lopen-pal -ldl -Wl,--export-dynamic -lnsl -lutil -lm -ldl
I'm working with abinit5.6.5 at the moment.
This is not a small post, so if you made it this far down, THANK YOU.
-Cheers,
James
On Mon, 16 Feb 2009, Alain Jacques wrote:
Hello James,> working binary?
If you use the configure flags --enable-mpi --
--with-mpi-prefix=/opt/mpich ... FC=ifort, the thing to look after is
that the mpi environment uses the same fortran compiler. So your
/opt/mpich/... should have been built with Intel ifort compiler; if
mpich has been installed from a Suse distributed package, I assume it
has been built with the default gcc/gfortran toolchain.
Not recognized? ... look for the mpif90 wrapper; it should reside in
/opt/mpich/bin and the right prefix is then
--with-mpi-prefix=/opt/mpich. Are you working with a mpich(1) or mpich2?
mpich is antiquated, use mpich2 (and btw I would recommend openmpi)
Setup your build environment in order to find the mpi execs if it is not
already done (export PATH=/opt/mpich/bin:$PATH) and libraries (export
LD_LIBRARY_PATH=/opt/mpich/lib:$LD_LIBRARY_PATH)
Do a simple parallalel fortran hello test with the following program ...
PROGRAM HelloWorld
include 'mpif.h'
call mpi_init(ierr)
call mpi_comm_size(MPI_COMM_WORLD,npes, ierr)
call mpi_comm_rank(MPI_COMM_WORLD,irank,ierr)
print*,'Hello World! I am ',irank,' of ',npes
call mpi_finalize(ierr)
END PROGRAM
Save in hello.f90. Compile with mpif90 hello.f90. Does it produce a
If all of this work, go back to abinit. Try with a plain configure and
let it find out the best setup. Do a configure --enable-mpi
--with-mpi-prefix=/opt/mpich. Maybe add --enable-64bit-flags if you're
working with a 64bit mpich lib. Any error during configure? Look for
details in config.log. In case of difficulties, please mention your
abinit version, the output of gcc -v, mpif90 -v and mpif90 -showme.
Cheers,
Alain
Hi,
I'm the relatively inexperienced system admin for a few computers in
my experimental lab. I'm using a SMP 4 intel xenon processor
SUSE10.1 machine, and have compiled and run abinit quite sucessfully,
but only in a serial capacity. I'd like to use the larger power of my
machine by using the parallel version of the code. To that end, I
installed the mpich package. That, however, did not install a header
file mpi.h which the tutorial on abinip said to look for. I then
installed the mpich development package/kit/thingy from SUSE. This
has the mpich header, as well as a several libraries for the fortran
compiler. First question, it is unclear from the tutorial if I should
still use the configuration flag FC=ifort (I had used the intel
fortran compiler to make the serial version). Also, using the default
configuration script, it does not detect a native mpi support. If I
use the command configure --with-mpi-prefix=/opt/mpich/include (this
is where mpi.h is) it also can't find anything. If I use the
directory /opt/mpich/ch-p4 it can at least find that there is a
general parallel environment, but does not recognize it as mpi. This
also does not put a copy of abinip in the ~abinit/src/main directory.
Attempting to run make and then make install or make multi and make
install both give errors. In the tutorial, it says to replace a
directory in the line with a directory you have already written down,
but early in the same paragraph it says to take note of the location
of the mpi.h file, the name and location of the MPI library file
ending in .a (which of the many library files I'm not sure) and the
dependencies of the MPI Library. The tutorial I'm reading from is
http://www.abinit.org/Infos_v5.5/tutorial/lesson_parallelism.html
I know discussions of compilation of abinit, and specifically how to
compile and use the parallel version have come up before, but I have 4
years of this forum saved on my hard drive, and searching for parallel
or compilation problems yields far to many results. If anyone has any
clarification, that would be greatly appreciated. Thanks,
James Johns
UC Berkeley
- [abinit-forum] Compiling abinip using mpich on Suse10.1, James Johns, 02/16/2009
- Re: [abinit-forum] Compiling abinip using mpich on Suse10.1, Alain Jacques, 02/16/2009
- Re: [abinit-forum] Compiling abinip using mpich on Suse10.1, James Johns, 02/17/2009
- Re: [abinit-forum] Compiling abinip using mpich on Suse10.1, Alain Jacques, 02/17/2009
- Re: [abinit-forum] Compiling abinip using mpich on Suse10.1, James Johns, 02/19/2009
- Re: [abinit-forum] Compiling abinip using mpich on Suse10.1, Alain Jacques, 02/20/2009
- Re: [abinit-forum] Compiling abinip using mpich on Suse10.1, James Johns, 02/19/2009
- Re: [abinit-forum] Compiling abinip using mpich on Suse10.1, Alain Jacques, 02/17/2009
- Re: [abinit-forum] Compiling abinip using mpich on Suse10.1, James Johns, 02/17/2009
- Re: [abinit-forum] Compiling abinip using mpich on Suse10.1, Alain Jacques, 02/16/2009
Archive powered by MHonArc 2.6.15.