24小时热门版块排行榜    

查看: 339  |  回复: 2
【奖励】 本帖被评价1次,作者灯塔守望者增加金币 0.5
当前主题已经存档。

[资源] 【分享】Building VASP with MKL

Building VASP

Build FFTW wrapper library for Intel® MKL
Change directory to /interfaces/fftw3xf.
Assuming default installation-- $cd /opt/intel/mkl/10.0.2.018/interfaces/fftw3xfBuild the fftw 3.x Fortran wrapper library for Intel® 64 (previously known as em64t) platform using the Intel compilers. $make libem64t compiler=intelThis will create the fftw wrapper library "libfftw3xf_intel.a" in lib/em64t directory of your Intel® MKL installation.



Build libdmy.a
Change directory to vasp.x.x.lib.
Run the following command from vasp.x.x.lib, using the Makefile for linux using the Intel compiler.
#make -f makefile.linux_ifc_P4After a successful compilation, libdmy.a will be built in the same directory.


Build VASP
Change directory to vasp.x.x.
Edit the makefile.linux_ifc_P4 to link with Intel® MKL libraries.
Go to the section where BLAS, LAPACK and FFT libraries are specified and change as below, assuming the default installation /opt/intel/mkl/10.0.2.018 for MKL 10.0 update 2.
BLAS=-L/opt/intel/mkl/10.0.2.018/lib/em64t -lmkl_intel_lp64 -lmkl_blacs_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread
LAPACK=-L/opt/intel/mkl/10.0.2.018/lib/em64t -lmkl_intel_lp64 -lmkl_blacs_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread
FFT3D= fftmpiw.o fftmpi_map.o fft3dlib.o /opt/intel/mkl/10.0.2.018/lib/em64t /libfftw3xf_intel.aModify Fortran compiler flags line to include fftw3.f from Intel® MKL include directory as below:
FFLAGS= -I/opt/intel/mkl/10.0.2.018/include/fftw -FR -lower_caseThis will eliminate compilation errors pertaining to "cannot open include file `fftw3.f' when Intel® MKL FFT is used rather than VASP's own FFTs.
To use Intel® MKL ScaLAPACK, modify additional options for CPP for parallel version adding -DscaLAPACK to the CPP line and specify Intel® MKL ScaLAPACK as below:
SCA=/opt/intel/mkl/10.0.2.018/lib/em64t/libmkl_scalapack_lp64.a /opt/intel/mkl/10.0.2.018/lib/em64t/libmkl_blacs_intelmpi_lp64.a
To use Intel® MPI specify Fortran compiler as FC=mpiifort.
Run the following command to build vasp:
$make -f makefile.linux_ifc_P4This will create the VASP executable in the current directory.


Step 5 - Running VASP
Run vasp by executing the following command with your workloads:
$mpirun -n 4 ./vasp

Appendix A - Performance Results

Below are VASP benchmark results for HG. VASP version is 4.6.28 on an Intel® Xeon 5400 series Harpertown machine.

Two Quad-core Xeon EM64T (harpertown) 2.83GHz CPUs
2 x 6M Cache
16G Bytes Memory
1333MHz FSB
OS:

RedHat Enterprise 4 U4
Libraries used:

Intel® MKL 9.1.023 (including BLAS, LAPACK & FFT which are be used in VASP)
Intel® MPI 3.1
Compiler to use:

Intel 10.1 C/C++ complier for EM64T
Intel 10.1 Fortran complier for EM64T
Running time (seconds)
Process Number Baseline program Tuned program with MKL
1 81.84 70.96
2 42.80 35.01
4 29.89 25.84
8 19.35 17.55



Appendix B - Known Issues and Limitations

When the Intel® MKL FFT is used instead of VASP’s own implementation of FFT, it will give compilation errors similar to these:

fortcom: Error: fftw3d.f90, line 501: Cannot open include file 'fftw3.f'
include 'fftw3.f'
---------------^
fortcom: Error: fftw3d.f90, line 510: This name does not have a type, and must have an explicit type. [FFTW_FORWARD]
FFTW_FORWARD, FFTW_ESTIMATE)To eliminate the above errors, do one of the below mentioned workarounds.

Copy fftw3.f from /Intel® MKL include/fftw to the vasp.x.x directory.
$cp /include/fftw3.f /vasp.4.6OR

Modify makefile to include fftw3.f from Intel® MKL in the FFLAGS line:
FFLAGS= -I//include/fftw


内容来源于http://software.intel.com/en-us/ ... g-intel-mkl-in-vasp

[ Last edited by mingdong on 2009-9-14 at 16:57 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

superest

金虫 (小有名气)


★★★ 三星级,支持鼓励

这个ifort 10.1不是有错误么?跑bench Hg,结果对么?
2楼2008-11-17 21:56:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

realac

铜虫 (小有名气)


hoho,ifort还是用9.1的,10.1好像编译vasp还是有问题
3楼2008-11-18 07:30:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 灯塔守望者 的主题更新
☆ 无星级 ★ 一星级 ★★★ 三星级 ★★★★★ 五星级
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见