Skip to Content.
Sympa Menu

forum - Re: [abinit-forum] parallel tune

forum@abinit.org

Subject: The ABINIT Users Mailing List ( CLOSED )

List archive

Re: [abinit-forum] parallel tune


Chronological Thread 
  • From: Physics fany <physicsfany@yahoo.com>
  • To: forum@abinit.org
  • Subject: Re: [abinit-forum] parallel tune
  • Date: Sat, 27 Dec 2008 20:57:23 -0800 (PST)
  • Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=X-YMail-OSG:Received:X-Mailer:References:Date:From:Subject:To:MIME-Version:Content-Type:Message-ID; b=1OmGTBZ1ybZy8/pLCanMAIiCM4FFIGisiAQI05PMfbX6nwvf9M8VagGo6iDdDP5MLypkxVD7eDxDj1FTZK+lY3t598FKhYznWst4sqFMq0rAyET/5/SI8DW+VB4obt605WqQR0STxAph+M33tUF5KKVBefGGYAU6NNUUeqq6WcA=;

Hello,

Thank you for your kind help.

I did follow what you have said. But when I wrote "make" I ended up with the following error message:

gzip: /root/.abinit/tarballs/netcdf-3.6.3.tar.gz: unexpected end of file
tar: Unexpected EOF in archive
tar: Unexpected EOF in archive
tar: Error is not recoverable: exiting now
make[4]: *** [uncompress-stamp] Error 2
make[4]: Leaving directory `/root/abinit-5.6.4/tmp-build1/plugins/netcdf'
make[3]: *** [package-ready] Error 2
make[3]: Leaving directory `/root/abinit-5.6.4/tmp-build1/plugins/netcdf'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/root/abinit-5.6.4/tmp-build1/plugins'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/abinit-5.6.4/tmp-build1'
make: *** [all] Error 2

Regards,
Helen


From: Alain Jacques <ajs.jacques@gmail.com>
To: forum@abinit.org
Sent: Saturday, December 27, 2008 4:38:59 PM
Subject: Re: [abinit-forum] parallel tune

Hello Hellen, hello Matthieu,


matthieu verstraete wrote:
> For 5.6.4 the configuration of etsfio does not always work: add
>
> --disable-etsf-io --disable-netcdf
>
...

OK this will prevent the netcdf error from happening ... I'll check
later why netcdf compilation hangs. Of course it won't solve your
parallelization problem.

By default openmpi builds a 64bit version of its libraries on a 64bit
operating system but abinit is build in 32bit without special flags -
this is my best assumption for your difficulties. So let's see if the
following recipe gives you better results.

As Matthieu mentioned, you'll have to "make distclean" to restore a
clean distribution. Nevertheless I suggest to compile abinit in its own
build directory i.e. never from the root of the distribution. I assume
that you have a working openmpi-1.2.8 in /usr/local (i.e. with the files
/usr/local/bin/mpif90 and /usr/local/lib/libmpi_f90.so.0.0.0) with paths
correctly sets - if yesterday's mpi hello test compiled by simply
invoking mpif90 and mpirun ... then it is okay - otherwise export PATH
and LD_LIBRARY_PATH and amend the FLAGS below. So starting from scratch ...

tar xzf abinit-5.6.4.tar.gz
cd abinit-5.6.4
mkdir tmp-build1
cd tmp-build1
../configure --prefix=/opt/abinit --enable-64bit-flags --enable-mpi
--enable-bigdft --disable-etsf-io --disable-netcdf --disable-etsf-xc
--enable-wannier90 --enable-fox --enable-xmlf90
--with-mpi-prefix=/usr/local --with-mpi-cppflags="-DNDEBUG"
--with-mpi-fcflags="-O3 -march=native"
--with-mpi-fc-ldflags="-L/usr/local/lib" --with-cpp-optflags="-DNDEBUG"
CC=gcc CPP=cpp CXX=g++ FC=gfortran CFLAGS=-O2 CXXFLAGS=-O2 FCFLAGS="-O3
-march=native" LDFLAGS="-L/usr/local/lib"
make
... and later a make install

at the end you should have a ./src/main/abinip

a ldd on mine says:
    libmpi_f90.so.0 =>
/opt/openmpi-1.2.8_gcc-4.3.2_m64/lib/libmpi_f90.so.0 (0x00002b1a3a416000)
    libmpi_f77.so.0 =>
/opt/openmpi-1.2.8_gcc-4.3.2_m64/lib/libmpi_f77.so.0 (0x00002b1a3a619000)
    libmpi.so.0 => /opt/openmpi-1.2.8_gcc-4.3.2_m64/lib/libmpi.so.0
(0x00002b1a3a84b000)
    libopen-rte.so.0 =>
/opt/openmpi-1.2.8_gcc-4.3.2_m64/lib/libopen-rte.so.0 (0x00002b1a3ab67000)
    libopen-pal.so.0 =>
/opt/openmpi-1.2.8_gcc-4.3.2_m64/lib/libopen-pal.so.0 (0x00002b1a3ae2f000)
    librt.so.1 => /lib64/librt.so.1 (0x0000003734200000)
    libdl.so.2 => /lib64/libdl.so.2 (0x0000003733600000)
    libnsl.so.1 => /lib64/libnsl.so.1 (0x000000373b400000)
    libutil.so.1 => /lib64/libutil.so.1 (0x000000373fc00000)
    libgfortran.so.3 => /opt/gcc-4.3.2/lib64/libgfortran.so.3
(0x00002b1a3b0aa000)
    libm.so.6 => /lib64/libm.so.6 (0x0000003733200000)
    libgcc_s.so.1 => /opt/gcc-4.3.2/lib64/libgcc_s.so.1 (0x00002b1a3b384000)
    libpthread.so.0 => /lib64/libpthread.so.0 (0x0000003733a00000)
    libc.so.6 => /lib64/libc.so.6 (0x0000003732e00000)
    /lib64/ld-linux-x86-64.so.2 (0x0000003732a00000)
no panic, my gcc and openmpi are homemade, their directories are
different from yours.

If you reproduce the abinit parallel benchmark I described yesterday, it
takes a few minutes to run.
A head of the log_mpi says
  abinit : nproc,me=          2          1
  abinit : nproc,me=          2          0
  ABINIT

  Give name for formatted input file:
t_kpt+spin.in
  Give name for formatted output file:
t_kpt+spin.out
  Give root name for generic input files:
t.i
... there are 2 processors invoked and a tail of the same file says
                0.00694    0.00694
                outvar1 : prtvol=0, do not print more k-points.
    znucl    26.00000

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

Proc.  0 individual time (sec): cpu=        403.6  wall=        403.6

Calculation completed.
.Delivered    0 WARNINGs and  2 COMMENTs to log file.

Tell me if it works,

Cheers,

Alain





Archive powered by MHonArc 2.6.15.

Top of Page