Abinit 6.8.1 make fails

option, parallelism,...

Moderators: fgoudreault, mcote

Forum rules
Please have a look at ~abinit/doc/config/build-config.ac in the source package for detailed and up-to-date information about the configuration of Abinit 8 builds.
For a video explanation on how to build Abinit 7.x for Linux, please go to: http://www.youtube.com/watch?v=DppLQ-KQA68.
IMPORTANT: when an answer solves your problem, please check the little green V-like button on its upper-right corner to accept it.
Locked
haiou
Posts: 12
Joined: Fri Dec 18, 2009 4:11 pm

Abinit 6.8.1 make fails

Post by haiou » Tue Sep 13, 2011 1:50 pm

configure command: configure --enable-mpi FC=mpif90 CC=mpicc.
The following are the results of configuring and error infomation of make.
Can someone give me a help?
Thanks a lot!

====================================================================================================================
Summary of important options:

* C compiler : intel version 10.1
* Fortran compiler: intel version 10.1
* architecture : intel xeon (64 bits)

* debugging : basic
* optimizations : standard

* MPI enabled : yes
* MPI-IO enabled : yes
* GPU enabled : no (none)

* TRIO flavor = netcdf-fallback+etsf_io-fallback
* TIMER flavor = abinit (libs: ignored)
* LINALG flavor = netlib-fallback (libs: internal)
* FFT flavor = none (libs: ignored)
* MATH flavor = none (libs: ignored)
* DFT flavor = libxc-fallback+atompaw-fallback+bigdft-fallback+wannier90-fallback

===========================================================================================================

Making all in 01_interfaces_ext
make[3]: Entering directory `/vol5/home/wuyja01/abinitV681/abinit-6.8.1-mpi/src/01_interfaces_ext'
mpif90 -DHAVE_CONFIG_H -I. -I../.. -I../../src/incs -I../../src/incs -I/vol5/home/wuyja01/abinitV681/abinit-6.8.1-mpi/plugins/bigdft -free -module /vol5/home/wuyja01/abinitV681/abinit-6.8.1-mpi/src/mods -O2 -arch pn4 -tune pn4 -ip -mcmodel=large -xT -g -extend-source -vec-report0 -c -o interfaces_bigdft.o interfaces_bigdft.F90
config.h(572): #error: "HAVE_MPI1 and HAVE_MPI2 are both undefined"

make[3]: *** [interfaces_bigdft.o] Error 1
make[3]: Leaving directory `/vol5/home/wuyja01/abinitV681/abinit-6.8.1-mpi/src/01_interfaces_ext'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/vol5/home/wuyja01/abinitV681/abinit-6.8.1-mpi/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/vol5/home/wuyja01/abinitV681/abinit-6.8.1-mpi'
make: *** [all] Error 2

User avatar
pouillon
Posts: 651
Joined: Wed Aug 19, 2009 10:08 am
Location: Spain
Contact:

Re: Abinit 6.8.1 make fails

Post by pouillon » Tue Sep 13, 2011 4:31 pm

Looks like the build system was not able to detect the MPI level your implementation is compatible with. Try --with-mpi-level=2 first, then --with-mpi-level=1 if it doesn't work.

It would be nice if you could attach your config.log as well (the one before using the option), so that I can improve the detection mechanism.
Yann Pouillon
Simune Atomistics
Donostia-San Sebastián, Spain

haiou
Posts: 12
Joined: Fri Dec 18, 2009 4:11 pm

Re: Abinit 6.8.1 make fails

Post by haiou » Wed Sep 14, 2011 2:04 pm

Dear Pouillon,
It's very kind of you to reply.
I have tried the mpi level option as you taught. Here are the results.

-----------------------------------------------------------------------------------------------------------------------------------------------------
configure with "--with-mpi-level=2", make failed. The following is the error information.

checking for /vol5/home/wuyja01/abinitV681/abinit-6.8.1-mpi-level2/plugins/netcdf/netcdf.mod... yes
checking for netcdf library... no
LDFLAGS was ' -L/vol5/home/wuyja01/abinitV681/abinit-6.8.1-mpi2/plugins/netcdf'
Action: install NetCDF and set the library link path with --with-netcdf-ldflags.
configure: error: "No 'NetCDF' library found."
make[4]: *** [configure-stamp] Error 1
make[4]: Leaving directory `/vol5/home/wuyja01/abinitV681/abinit-6.8.1-mpi-level2/plugins/etsf_io'
make[3]: *** [package-ready] Error 2
make[3]: Leaving directory `/vol5/home/wuyja01/abinitV681/abinit-6.8.1-mpi-level2/plugins/etsf_io'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/vol5/home/wuyja01/abinitV681/abinit-6.8.1-mpi-level2/plugins'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/vol5/home/wuyja01/abinitV681/abinit-6.8.1-mpi-level2'
make: *** [all] Error 2

------------------------------------------------------------------------------------------------------------------------------------------------
configure with "--with-mpi-level=1". make successfully.
But when I calculate with abinit, the process exit with the following information.

yhrun: job 70692 queued and waiting for resources
yhrun: job 70692 has been allocated resources
Attempting to use an MPI routine before initializing MPICH
yhrun: error: xnode16: task0: Exited with exit code 1
Attempting to use an MPI routine before initializing MPICH
Attempting to use an MPI routine before initializing MPICH
Attempting to use an MPI routine before initializing MPICH
Attempting to use an MPI routine before initializing MPICH
yhrun: error: xnode64: task12: Exited with exit code 1
Attempting to use an MPI routine before initializing MPICH
Attempting to use an MPI routine before initializing MPICH
yhrun: error: xnode68: task16: Exited with exit code 1
yhrun: error: xnode62: task10: Exited with exit code 1
yhrun: error: xnode65: task13: Exited with exit code 1
yhrun: error: xnode71: task19: Exited with exit code 1
yhrun: error: xnode41: task4: Exited with exit code 1
Attempting to use an MPI routine before initializing MPICH
Attempting to use an MPI routine before initializing MPICH
Attempting to use an MPI routine before initializing MPICH
Attempting to use an MPI routine before initializing MPICH
Attempting to use an MPI routine before initializing MPICH
Attempting to use an MPI routine before initializing MPICH
Attempting to use an MPI routine before initializing MPICH
Attempting to use an MPI routine before initializing MPICH
Attempting to use an MPI routine before initializing MPICH
Attempting to use an MPI routine before initializing MPICH
Attempting to use an MPI routine before initializing MPICH
yhrun: error: xnode66: task14: Exited with exit code 1
yhrun: error: xnode38: task1: Exited with exit code 1
yhrun: error: xnode50: task8: Exited with exit code 1
Attempting to use an MPI routine before initializing MPICH
Attempting to use an MPI routine before initializing MPICH
yhrun: error: xnode39: task2: Exited with exit code 1
yhrun: error: xnode63: task11: Exited with exit code 1
yhrun: error: xnode49: task7: Exited with exit code 1
yhrun: error: xnode67: task15: Exited with exit code 1
yhrun: error: xnode70: task18: Exited with exit code 1
yhrun: error: xnode40: task3: Exited with exit code 1
yhrun: error: xnode42: task5: Exited with exit code 1

haiou
Posts: 12
Joined: Fri Dec 18, 2009 4:11 pm

Re: Abinit 6.8.1 make fails

Post by haiou » Wed Sep 14, 2011 2:06 pm

Here is the configure log.
Attachments
config.log
(135.76 KiB) Downloaded 267 times

User avatar
pouillon
Posts: 651
Joined: Wed Aug 19, 2009 10:08 am
Location: Spain
Contact:

Re: Abinit 6.8.1 make fails

Post by pouillon » Thu Sep 15, 2011 4:48 pm

Looks like your MPI installation is not working. You may consider installing a more recent version of MPICH or try OpenMPI. Your system administrator should know.
Yann Pouillon
Simune Atomistics
Donostia-San Sebastián, Spain

haiou
Posts: 12
Joined: Fri Dec 18, 2009 4:11 pm

Re: Abinit 6.8.1 make fails

Post by haiou » Mon Sep 19, 2011 6:55 am

pouillon wrote:Looks like your MPI installation is not working. You may consider installing a more recent version of MPICH or try OpenMPI. Your system administrator should know.

Dear pouillon,
Thank you very much. I have reinstalled the MPICH. But there is a new problem. when I performed the calculation using mpi, the process exited with the following error information.

" Fortran runtime error: File 'optAl.out' already exists."

User avatar
pouillon
Posts: 651
Joined: Wed Aug 19, 2009 10:08 am
Location: Spain
Contact:

Re: Abinit 6.8.1 make fails

Post by pouillon » Mon Sep 19, 2011 12:03 pm

Then just move the file and restart your calculation.
Yann Pouillon
Simune Atomistics
Donostia-San Sebastián, Spain

haiou
Posts: 12
Joined: Fri Dec 18, 2009 4:11 pm

Re: Abinit 6.8.1 make fails

Post by haiou » Mon Sep 19, 2011 12:46 pm

pouillon wrote:Then just move the file and restart your calculation.

Dear pouillon,
When I start the calculation, there is no ‘optAl.out’ file in the present working directory. My calculation is carried out on two CPUs parallely using mpi. It seems that there is one .out file for each CPU. Maybe the two CPU execute the calculation independently? This causes the ".out file already exists" error?

User avatar
pouillon
Posts: 651
Joined: Wed Aug 19, 2009 10:08 am
Location: Spain
Contact:

Re: Abinit 6.8.1 make fails

Post by pouillon » Tue Sep 20, 2011 11:53 am

You're probably using one of the Abinit post-processors which has not been parallelized yet. Just re-run your calculation serially, and it will work.
Yann Pouillon
Simune Atomistics
Donostia-San Sebastián, Spain

haiou
Posts: 12
Joined: Fri Dec 18, 2009 4:11 pm

Re: Abinit 6.8.1 make fails

Post by haiou » Tue Sep 20, 2011 5:30 pm

pouillon wrote:You're probably using one of the Abinit post-processors which has not been parallelized yet. Just re-run your calculation serially, and it will work.

Dear pouillon,
The calculation run successfully in the case of serial. But the problem to be solved is a little large, I have to run it on many CPUs simultaneously using MPI. Additionally, the calculation run successfully on 20 CPUs with "abinit-v5.8.4" with the same input file.

User avatar
pouillon
Posts: 651
Joined: Wed Aug 19, 2009 10:08 am
Location: Spain
Contact:

Re: Abinit 6.8.1 make fails

Post by pouillon » Wed Sep 21, 2011 6:42 pm

To be clear: only the post-processing part needs to be run serially.
Yann Pouillon
Simune Atomistics
Donostia-San Sebastián, Spain

haiou
Posts: 12
Joined: Fri Dec 18, 2009 4:11 pm

Re: Abinit 6.8.1 make fails

Post by haiou » Thu Oct 20, 2011 7:20 am

pouillon wrote:To be clear: only the post-processing part needs to be run serially.

Then why the "abinit-v5.8.4" run successfully with the same input file?
Thanks a lot!

User avatar
pouillon
Posts: 651
Joined: Wed Aug 19, 2009 10:08 am
Location: Spain
Contact:

Re: Abinit 6.8.1 make fails

Post by pouillon » Thu Oct 20, 2011 9:56 am

Because the abinit executable is parallelized, while the post-processors (aim, anaddb, cut3d, mrgscr, optics, ...) are not.
Yann Pouillon
Simune Atomistics
Donostia-San Sebastián, Spain

haiou
Posts: 12
Joined: Fri Dec 18, 2009 4:11 pm

Re: Abinit 6.8.1 make fails

Post by haiou » Mon Oct 31, 2011 12:26 pm

pouillon wrote:Because the abinit executable is parallelized, while the post-processors (aim, anaddb, cut3d, mrgscr, optics, ...) are not.

But when the error come out it was abinit running, not the post programs.

Locked