Page 1 of 1

Abinit 6.8.1 make fails

Posted: Tue Sep 13, 2011 1:50 pm
by haiou
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

Re: Abinit 6.8.1 make fails

Posted: Tue Sep 13, 2011 4:31 pm
by pouillon
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.

Re: Abinit 6.8.1 make fails

Posted: Wed Sep 14, 2011 2:04 pm
by haiou
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

Re: Abinit 6.8.1 make fails

Posted: Wed Sep 14, 2011 2:06 pm
by haiou
Here is the configure log.

Re: Abinit 6.8.1 make fails

Posted: Thu Sep 15, 2011 4:48 pm
by pouillon
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.

Re: Abinit 6.8.1 make fails

Posted: Mon Sep 19, 2011 6:55 am
by haiou
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

Posted: Mon Sep 19, 2011 12:03 pm
by pouillon
Then just move the file and restart your calculation.

Re: Abinit 6.8.1 make fails

Posted: Mon Sep 19, 2011 12:46 pm
by haiou
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

Posted: Tue Sep 20, 2011 11:53 am
by pouillon
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.

Re: Abinit 6.8.1 make fails

Posted: Tue Sep 20, 2011 5:30 pm
by haiou
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

Posted: Wed Sep 21, 2011 6:42 pm
by pouillon
To be clear: only the post-processing part needs to be run serially.

Re: Abinit 6.8.1 make fails

Posted: Thu Oct 20, 2011 7:20 am
by haiou
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

Posted: Thu Oct 20, 2011 9:56 am
by pouillon
Because the abinit executable is parallelized, while the post-processors (aim, anaddb, cut3d, mrgscr, optics, ...) are not.

Re: Abinit 6.8.1 make fails

Posted: Mon Oct 31, 2011 12:26 pm
by haiou
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.