24小时热门版块排行榜    

查看: 1896  |  回复: 1

pariah

铜虫 (小有名气)

[求助] 求一份完整的编译abinit的资源贴

刚看到一位同学对并行mpi编译的问题,因为自己最近也在弄,所以想有已经成功编译好的给大家一个完整的在各种linux版本下的编译过程,(abinit 论坛上有给出ubuntu下的从clear 系统的完整安装)
我最近也编译了并行的abinit,貌似安装都良好,但是中间还是有一些warning,比如缺少什么libxc netcdf atompaw之类的,但是这些我都手动下载放到了.abinit/tarball里了。不知到对程序有没有影响。在我穿行运行时../../../bin/abini MPI_ABORT was invoked on rank 0 in communicator MPI_COMM_WORLD
with errorcode 14.

NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes.
You may or may not see output from other processes, depending on
exactly when Open MPI kills them.
当我并行 mpirun -np 2 ..... 提示
MPI_ABORT was invoked on rank 0 in communicator MPI_COMM_WORLD
with errorcode 14.

NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes.
You may or may not see output from other processes, depending on
exactly when Open MPI kills them.
--------------------------------------------------------------------------
[root@Pariah Work_paral]# mpirun -np 2 ../../../../src/98_main/abinitlog
--------------------------------------------------------------------------
MPI_ABORT was invoked on rank 0 in communicator MPI_COMM_WORLD
with errorcode 14.

NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes.
You may or may not see output from other processes, depending on
exactly when Open MPI kills them.
--------------------------------------------------------------------------
--------------------------------------------------------------------------
mpirun has exited due to process rank 0 with PID 3563 on
node Pariah exiting improperly. There are two reasons this could occur:

1. this process did not call "init" before exiting, but others in
the job did. This can cause a job to hang indefinitely while it waits
for all processes to call "init". By rule, if one process calls "init",
then ALL processes must call "init" prior to termination.

2. this process called "init", but exited without calling "finalize".
By rule, all processes that call "init" MUST call "finalize" prior to
exiting or it will be considered an "abnormal termination"

This may have caused other processes in the application to be
terminated by signals sent by mpirun (as reported here).
不知到如何解决,我的系统是fedora15 不知是否有同学在fedora下完整编译过并行的abinit
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pariah

铜虫 (小有名气)

★ ★ ★
fzx2008(金币+3): 谢谢分享 2011-12-17 19:34:09
cenwanglai: 2011-12-23 22:01:35
problem solved, share with all users
for ubuntu user (all from clear installation)
CODE:
apt-get install gcc gfortran
apt-get install patch
apt-get install libnetcdf4 libnetcdf-dev
apt-get install fftw3 libfftw3-dev
apt-get install libatlas-base-dev libatlas3gf-base
apt-get install liblapack3gf liblapack-dev
apt-get install libblas3gf libblas-dev
apt-get install openmpi-bin openmpi-common libopenmpi-dev

build a "build.ac"file
CODE:
enable_mpi="yes"
enable_mpi_io="yes"
with_mpi_prefix="depend on where your mpi bins located"
with_netcdf_incs="-I/usr/include"
with_netcdf_libs="-L/usr/lib64 -lnetcdf -lnetcdff"
with_fft_flavor="fftw3"
with_fft_incs="-I/usr/include/"
with_fft_libs="-L/usr/lib64 -lfftw3"
with_linalg_flavor="atlas"
with_linalg_libs="-L/usr/lib64 -llapack -lf77blas -lcblas -latlas"
with_dft-flavor="atompaw+bigdft+libxc+wannier90" #if you have problem with downloading the corresponding files,just downloading them manuely and put them in .abinit/tarballs/"
enable_gw_dpc="yes"

then type ./configure --with-config-file="./build.ac"
make mj4 #the number 4 here is according to how many processors your computer has
make install
for fedora/redhat/centos users
CODE:
yum install gcc-gfortran
yum install netcdf
yum install netcdf-devel
yum install atlas
yum install atlas-devel
yum install fftw3
yum install fftw3-devel
yum install libxc
yum install libxc-devel
yum isntall patch
here is the trick for yum users, if you install the openmpi use "yum",you will get the latest version of openmpi,named 1.5.*,but this version is ubstable and be proved uncompatible with abinit.So you have to download the stable version,like 1.4.3 to compile abinit source code
the bulid.ac file almost same
then type ./configure --with-config-file="build.ac"
make mj4
make install

good luck, enjoy
2楼2011-12-17 18:49:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 pariah 的主题更新
信息提示
请填处理意见