Abinit 6.8.1 make fails
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.
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.
Abinit 6.8.1 make fails
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
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
Re: Abinit 6.8.1 make fails
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.
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
Simune Atomistics
Donostia-San Sebastián, Spain
Re: Abinit 6.8.1 make fails
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
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
Re: Abinit 6.8.1 make fails
Here is the configure log.
- Attachments
-
- config.log
- (135.76 KiB) Downloaded 266 times
Re: Abinit 6.8.1 make fails
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
Simune Atomistics
Donostia-San Sebastián, Spain
Re: Abinit 6.8.1 make fails
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."
Re: Abinit 6.8.1 make fails
Then just move the file and restart your calculation.
Yann Pouillon
Simune Atomistics
Donostia-San Sebastián, Spain
Simune Atomistics
Donostia-San Sebastián, Spain
Re: Abinit 6.8.1 make fails
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?
Re: Abinit 6.8.1 make fails
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
Simune Atomistics
Donostia-San Sebastián, Spain
Re: Abinit 6.8.1 make fails
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.
Re: Abinit 6.8.1 make fails
To be clear: only the post-processing part needs to be run serially.
Yann Pouillon
Simune Atomistics
Donostia-San Sebastián, Spain
Simune Atomistics
Donostia-San Sebastián, Spain
Re: Abinit 6.8.1 make fails
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!
Re: Abinit 6.8.1 make fails
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
Simune Atomistics
Donostia-San Sebastián, Spain
Re: Abinit 6.8.1 make fails
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.