【原创】并行编译SIESTA最近闲的无聊,在曙光集群上并行编译了SIESTA,把其中的过程和教训跟大家分享一下.
1.获得SIESTA
SIESTA对科研人员是可以免费使用的,因此可以在主页上注册,大概两个星期后管理员会通过审核,通知您可以使用SIESTA.然后就可以从上面下载到源文件,赝势文件等。
2.编译器安装
我这里使用的FORTRAN编译器是PGI7.0,并行使用MPI-1.2.7.
PGI的安装很友好,因此不做介绍。
接着使用PGI编译MPICH,先进行配置生成MAKEFILE文件具体是:
./configure -prefix=/your/mpich/directory -fc="pgf77 -Mx,119,0x200000" \
-f90="pgf90 -Mx,119,0x200000" \
-without-romio --without-mpe -opt=-O -rsh=ssh
然后进入你的安装目录,使用make完成安装,最好是测试下例子确认安装成功。
安装完之后将MPICH的BIN加入环境变量中。
3.安装数学库
并行编译SIESTA需要以下4个数学库BLAS,LAPACK,BLACS以及SCALAPACK,这些都可以从免费获得。对于BLAS和LAPACK可以使用优化过的MKL(INTEL处理器),ACML(AMD处理器),同样后者也可以从网上免费获得。SIESTA也能使用NETCDF数学库(这里没有使用)。
在这里我使用的ACML,BLACS以及SCALAPACK数学库,ACML的安装很友好,不过要下载对应好编译器的版本。这里主要介绍下BLACS和SCALAPCK的编译。