Abinit 7.2.1 GCC 4.6.3 openmpi  [SOLVED]

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
JEJohns
Posts: 55
Joined: Sun May 02, 2010 5:30 pm

Abinit 7.2.1 GCC 4.6.3 openmpi

Post by JEJohns » Fri Apr 05, 2013 3:48 am

Hi Everyone,
I'm having an issue updating to the newest version of abinit. My HPC system upgraded their software, and I so I had to recompile anyways. I'm getting the following error during MAKE:
../../../abinit-7.2.1/src/66_paw/m_paw_dmft.F90:587.132:

ft%mbandc,nspinor,dtset%natom,(2*paw_dmft%maxlpawu+1)), stat=ABI_ALLOC_STAT
1
Error: Syntax error in ALLOCATE statement at (1)


My configuration input looks like
../abinit-7.2.1/configure --prefix="/projects/p20129/abinit7.2" --enable-64bit-flags="yes" --enable-mpi="yes" --enable-mpi-io="yes" CC="mpicc" FC="mpif90" FCFLAGS="-g -O3" --with-FFT-flavor="fftw3" --with-dft-flavor="atompaw+libxc+bigdft+wannier90" > c.log

the only errors I that pop up during configuration are the warnings about not linking back to an external linalg library (which I will do at a very soon but later date).
Does anyone have any suggestions?
Best,
James

User avatar
jbeuken
Posts: 365
Joined: Tue Aug 18, 2009 9:24 pm
Contact:

Re: Abinit 7.2.1 GCC 4.6.3 openmpi

Post by jbeuken » Fri Apr 05, 2013 6:22 pm

Hi,

2 little remarks :

1) if you use : --enable-mpi="yes" , it's better to use '--with-mpi-prefix' to point to your openmpi installation
for ex : --with-mpi-prefix="/usr/local/openmpi" , then, no needed to use CC and/or FC

2) if you use : --with-FFT-flavor="fftw3" , you need to set "--with-fft-libs="

jmb
------
Jean-Michel Beuken
Computer Scientist

JEJohns
Posts: 55
Joined: Sun May 02, 2010 5:30 pm

Re: Abinit 7.2.1 GCC 4.6.3 openmpi

Post by JEJohns » Fri Apr 12, 2013 8:21 pm

I thought I'd post this as solved. In the past, on our HPC, using the --with-mpi-prefix option hadn't worked (as recently as 7.0), and I had to specify the compilers as FC=mpif90 etc. Secondly, I still couldn't get the FFT=FFTW3 to make (error in 98 main) using gcc, but using the intel comilers and --with-fft-flavor=fftw-mkl with the appropriate libraries worked great. As an aside for anyone who reads this, while doing a ground state calculation unit cell optimization spread over 24 processors, I had a speed up of 2x for using the ifort with the MKL fft and linalg libraries over using gcc and scalapack 2.0.2 libraries on the following HPC system

Interconnect: Infiniband DDR
Number of Nodes: 504 (4032 cores)
Processor: Intel Nehalem E5520, 64-bit, 8M Cache, 2.26 GHz, 5.86 GT/s Intel® QPI, 1066Mhz FSB
Memory: Per node (Per Core) 48GB's (6GB's), Type: DDR3 1066 MHz

Cheers,
James

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

Re: Abinit 7.2.1 GCC 4.6.3 openmpi

Post by pouillon » Mon Apr 22, 2013 12:20 pm

Regarding the speed, you can significantly improve performance with GCC using link-time optimizations (LTO), starting with GCC 4.7. They are not yet enabled by default in the build system of Abinit, thus you'll have to provide these flags by yourself for now.
Yann Pouillon
Simune Atomistics
Donostia-San Sebastián, Spain

Abdennour
Posts: 1
Joined: Sat Apr 27, 2013 8:04 pm

Re: Abinit 7.2.1 GCC 4.6.3 openmpi

Post by Abdennour » Sat Apr 27, 2013 8:37 pm

i ask how to run ABINIT in parallel for Windows version

gryko
Posts: 12
Joined: Tue Feb 26, 2013 5:56 pm

Re: Abinit 7.2.1 GCC 4.6.3 openmpi - syntax error

Post by gryko » Sun May 12, 2013 7:37 pm

Hello:

There are several posts on Syntax error in Abinit-7.2.1, in m_paw_dmft.F90. I am getting the same error
and I cannot solve the problem. Here is an excerpt from the make:

make[3]: Leaving directory `/home/gryko/abinit-7.2.1/src/65_psp'
Making all in 66_paw
make[3]: Entering directory `/home/gryko/abinit-7.2.1/src/66_paw'
/home/gryko/abinit-7.2.1/config/wrappers/wrap-mpifc -DHAVE_CONFIG_H -I. -I../.. -I../../src/incs -I../../src/incs -I/home/gryko/abinit-7.2.1/fallbacks/exports/include -I/home/gryko/abinit-7.2.1/fallbacks/exports/include -I/home/gryko/abinit-7.2.1/fallbacks/exports/include -ffree-form -J/home/gryko/abinit-7.2.1/src/mods -O3 -L/home/gryko/OPEN64/lib -I/home/gryko/OPEN64/include -c -o m_paw_dmft.o m_paw_dmft.F90
m_paw_dmft.F90:587.132:

ft%mbandc,nspinor,dtset%natom,(2*paw_dmft%maxlpawu+1)), stat=ABI_ALLOC_STAT
1
Error: Syntax error in ALLOCATE statement at (1)
make[3]: *** [m_paw_dmft.o] Error 1

The same error shows up with both gfortran and open64 compilers. I tried various configuration settings, such as
--with-mpi-level=1 --with-dft-flavor="libxc", and no optimization, and the error is the same.
My PC is AMD FX 8350 (8CPU), with mpich-3.0.4., running Fedora 18.

The source file, m_paw_dmft.F90 seems to be fine.

Thank you very much,
Jan Gryko,
Jacksonville State Univ., AL

User avatar
gmatteo
Posts: 291
Joined: Sun Aug 16, 2009 5:40 pm

Re: Abinit 7.2.1 GCC 4.6.3 openmpi

Post by gmatteo » Mon May 13, 2013 1:49 am

replace

ABI_ALLOCATE(paw_dmft%psichi,(dtset%nsppol,dtset%nkpt,paw_dmft%mbandc,nspinor,dtset%natom,(2*paw_dmft%maxlpawu+1)))

with

allocate(paw_dmft%psichi,(dtset%nsppol,dtset%nkpt,paw_dmft%mbandc,nspinor,dtset%natom,(2*paw_dmft%maxlpawu+1)))

gryko
Posts: 12
Joined: Tue Feb 26, 2013 5:56 pm

Re: Abinit 7.2.1 GCC 4.6.3 openmpi

Post by gryko » Mon May 13, 2013 4:43 pm

Thank you very much for your tip. Unfortunately, the error is the same, no change. The binary version of abinit-7.2.1 from the abinit web
site runs OK, but I want to compile abinit with different options and compare. Thank you very much for your help.

The configure script was:

./configure --with-prefix=/home/gryko/abinit_OPEN64 \
> --enable-mpi=yes --with-mpi-prefix=/home/gryko/mpich-install --with-mpi-level=1 \
> FC=/home/gryko/OPEN64/bin/openf90-4.5.2.1 \
> CC=/home/gryko/OPEN64/bin/opencc-4.5.2.1 \
> F77=/home/gryko/OPEN7=64/bin/openf90 \
> FCFLAGS="-Ofast -L/home/gryko/OPEN64/lib -I/home/gryko/OPEN64/include" \
> CFLAGS="-Ofast -L/home/gryko/OPEN64/lib -I/home/gryko/OPEN64/include" \
> --enable-optim="aggressive"


Best,
JG

User avatar
jbeuken
Posts: 365
Joined: Tue Aug 18, 2009 9:24 pm
Contact:

Re: Abinit 7.2.1 GCC 4.6.3 openmpi  [SOLVED]

Post by jbeuken » Thu May 16, 2013 3:22 pm

Hi gryko,

this is my ac file for open64 (4.2.5.2) with openmpi

Code: Select all

enable_64bit_flags = yes
enable_gw_dpc = yes
enable_debug = no
# problem with 79_seqpar_mpi/lobpcgwf.F90 ( compiler bug )
fcflags_opt_79_seqpar_mpi = -O0 -m64 -align64
enable_mpi = yes
enable_mpi_io = no
with_mpi_prefix = /usr/local/openmpi_open64
with_linalg_flavor = custom
with_linalg_libs = -L/opt/acml4.4.0/gfortran64/lib -lacml


two things about your config :
- try without "--enable-optim="aggressive"
- try with --enable-mpi-io=no

jmb
------
Jean-Michel Beuken
Computer Scientist

gryko
Posts: 12
Joined: Tue Feb 26, 2013 5:56 pm

Re: Abinit 7.2.1 GCC 4.6.3 openmpi

Post by gryko » Wed May 22, 2013 3:26 pm

Hello jmb:

Thank you very much for your help. The problem was with "aggressive" option.
JG

lawilog
Posts: 1
Joined: Wed Sep 04, 2013 12:30 pm

Re: Abinit 7.2.1 GCC 4.6.3 openmpi

Post by lawilog » Wed Sep 04, 2013 12:45 pm

I also had the above syntax error and google brought me here. My solution to this syntax error was not changing the MPI implementation, decreasing the optimization level or doing a benchmark with 24 processors and the MKL library.

The problem is that the GNU compiler (gfortran) has a default free-line-length of 132. This causes problems with the ABI_ALLOCATE makro.
To solve it, you need to configure with FCFLAGS="-ffree-line-length-none".
(I think this flag should be set automatically in future releases.)

Locked