6.5.1 fails to build after merge  [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
User avatar
jzwanzig
Posts: 504
Joined: Mon Aug 17, 2009 9:25 am

6.5.1 fails to build after merge

Post by jzwanzig » Wed Dec 15, 2010 2:12 am

Hi,
I just merged revno 431 of trunk/6.5.1-public into my 6.5.1-private branch, and it now fails to build on both intel and gcc. Specifically, I did:

commit my changes, which build and pass tests;
run clean-source-tree
merge trunk/6.5.1-public
run makemake
run configure
run make

fails with

/usr/local/openmpi/gcc/bin/mpif90 -m64 -DHAVE_CONFIG_H -I. -I../../../src/12_hide_mpi -I../.. -I../../src/incs -I../../../src/incs -ffree-form -J/home/jzwanzig/code/abinit/6.5.1-private/tmp-gcc/src/mods -O2 -mtune=native -march=native -mfpmath=sse -m64 -ffree-line-length-none -c -o m_xmpi.o ../../../src/12_hide_mpi/m_xmpi.F90
../../../src/12_hide_mpi/m_xmpi.F90:1840.88:

E_CREATE_STRUCT(my_ncol+2,block_length,block_depl,block_type,new_type,ierr)
1
Error: There is no specific subroutine for the generic 'mpi_type_create_struct' at (1)
make[3]: *** [m_xmpi.o] Error 1
make[3]: Leaving directory `/home/jzwanzig/code/abinit/6.5.1-private/tmp-gcc/src/12_hide_mpi'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/jzwanzig/code/abinit/6.5.1-private/tmp-gcc/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/jzwanzig/code/abinit/6.5.1-private/tmp-gcc'
make: *** [all] Error 2

any suggestions? thanks in advance,
Joe

p.s. How can this even happen? I know the trunk branch is heavily tested on many platforms...
Josef W. Zwanziger
Professor, Department of Chemistry
Canada Research Chair in NMR Studies of Materials
Dalhousie University
Halifax, NS B3H 4J3 Canada
jzwanzig@gmail.com

User avatar
jzwanzig
Posts: 504
Joined: Mon Aug 17, 2009 9:25 am

Re: 6.5.1 fails to build after merge

Post by jzwanzig » Wed Dec 15, 2010 3:33 am

OK, here's what I had to do to get the trunk/6.5.1-public merge to compile:

1) in src/12_hide_mpi/m_xmpi.F90, line 1782:
old: integer,allocatable :: block_depl(:)
new: integer(KIND=MPI_ADDRESS_KIND),allocatable :: block_depl(:) ! this corresponds to the type needed in the call to MPI_TYPE_CREATE_STRUCT

2) in src/62_iowfdenpot/m_io_screening.F90, line 1383:
old: complex(dpc),allocatable :: bufdc(:,:)
new: complex(dpc),allocatable :: bufdc(:,:),bufdc3(:,:,:)

later in this file there were calls to bufdc with 3 array indices, and others with two. Why did this code ever compile?
Josef W. Zwanziger
Professor, Department of Chemistry
Canada Research Chair in NMR Studies of Materials
Dalhousie University
Halifax, NS B3H 4J3 Canada
jzwanzig@gmail.com

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

Re: 6.5.1 fails to build after merge

Post by pouillon » Wed Dec 15, 2010 3:26 pm

It was probably not compiled on the test farm, due to a few transient inconsistencies. I'm fixing them right now, since I'm getting this problem as well on my 6.5.2 branch.
Yann Pouillon
Simune Atomistics
Donostia-San Sebastián, Spain

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

Re: 6.5.1 fails to build after merge

Post by gmatteo » Wed Dec 15, 2010 3:41 pm

Sorry, it's my fault.
I've been working on the MPI-IO part of the code but most of my changes are still in
gmatteo-training in which all the compilation errors you are reporting have been solved.

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

Re: 6.5.1 fails to build after merge

Post by pouillon » Wed Dec 15, 2010 4:11 pm

See pouillon/6.5.2-public/435 for a clean fix of both the MPI and GW_DPC issues. Please wait until tomorrow and check the test farm's results before merging.

What is more preoccupating is that so much bug-infested and untested code manages to make it through the test farm. In particular, it currently means that the enable_gw_dpc=no option is not tested anymore, despite all the efforts Jean-Michel and I are deploying.
Yann Pouillon
Simune Atomistics
Donostia-San Sebastián, Spain

User avatar
jzwanzig
Posts: 504
Joined: Mon Aug 17, 2009 9:25 am

Re: 6.5.1 fails to build after merge

Post by jzwanzig » Wed Dec 15, 2010 4:44 pm

thanks, Yann.
Josef W. Zwanziger
Professor, Department of Chemistry
Canada Research Chair in NMR Studies of Materials
Dalhousie University
Halifax, NS B3H 4J3 Canada
jzwanzig@gmail.com

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

Re: 6.5.1 fails to build after merge

Post by pouillon » Thu Dec 16, 2010 12:17 am

After discussing with Matteo, revno 437 provides the actual fix.
Yann Pouillon
Simune Atomistics
Donostia-San Sebastián, Spain

gonze
Posts: 412
Joined: Fri Aug 14, 2009 8:29 pm

Re: 6.5.1 fails to build after merge

Post by gonze » Thu Dec 16, 2010 6:31 am

Hi Yann,
Unfortunately, pouillon/6.5.2-public/435 did not succeed today...
To which branch are your referring with "revno 437" ? I did not see
any revno 437 in the test farm this night ... Forgot to push ?
Xavier

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

Re: 6.5.1 fails to build after merge

Post by pouillon » Fri Dec 17, 2010 3:54 pm

No, pushed too late for it to be processed on Wednesday. I knew it anyway.

In any case, seeing what happened to revno 437, the support of MPI-IO has now to be declared fully broken until someone fixes it. It might not be much, but I have no time for this. In the meantime, I'll put a lock on it in my branch so that it can safely be merged into trunk. This means that one will have to activate debug mode (--enable-debug > enhanced, see build-config.ac for details) to compile MPI-IO.
Yann Pouillon
Simune Atomistics
Donostia-San Sebastián, Spain

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

Re: 6.5.1 fails to build after merge

Post by gmatteo » Fri Dec 17, 2010 4:56 pm

The code is stopping in one of the new routines I've added for supporting MPI-IO.
I'm going to investigate the problem.

mverstra
Posts: 655
Joined: Wed Aug 19, 2009 12:01 pm

Re: 6.5.1 fails to build after merge  [SOLVED]

Post by mverstra » Sun Jan 09, 2011 1:49 pm

Update everyone? I still have the problem with mpi_type_create_struct, but it looks like it comes from the fact my (IBM) distribution of MPICH is old and does not have mpi_type_create_struct implemented yet. The latest IBM doc contains it, but the libs have no reference to the symbol, except in one c++ interface, where they state that mpi_type_struct is deprecated and should be replaced by mpi_type_create_struct...

Matthieu
Matthieu Verstraete
University of Liege, Belgium

Locked