【问题标题】:How do I compile VASP 5.4.1 on a Cray XC如何在 Cray XC 上编译 VASP 5.4.1
【发布时间】:2017-12-15 23:13:02
【问题描述】:

我想在 Cray XC MPP 机器上编译最新版本的 VASP 5 (5.4.1)。有人有我可以使用的设置吗? VASP 发行版没有附带 Cray 的示例。

构建系统已从 5.3.5 版本更改。

【问题讨论】:

    标签: compilation cray


    【解决方案1】:

    完整的编译说明可以在 ARCHER (http://www.archer.ac.uk) 网站上找到:

    http://www.archer.ac.uk/documentation/software/vasp/compiling_5-4-1-phase2.php

    简而言之:

    1. 下载源代码并打补丁

    2. 切换到 Intel 编程环境并加载 fftw 模块:

      module swap PrgEnv-cray PrgEnv-intel
      module load fftw
      
    3. 使用以下设置创建“makefile.include”:

      # Precompiler options
      CPP_OPTIONS= -DMPI -DHOST=\"CrayXC-Intel\" \
                   -DIFC \
                   -DCACHE_SIZE=2000 \
                   -DPGF90 \
                   -Davoidalloc \
                   -DMPI_BLOCK=8000 \
                   -DscaLAPACK \
                   -Duse_collective \
                   -DnoAugXCmeta \
                   -Duse_bse_te \
                   -Duse_shmem \
                   -Dtbdyn
      
      CPP        = fpp -f_com=no -free -w0  $*$(FUFFIX) $*$(SUFFIX) $(CPP_OPTIONS)
      
      FC         = ftn
      FCL        = ftn
      
      FREE       = -free -names lowercase
      
      FFLAGS     = -assume byterecl
      OFLAG      = -O3 -ip -fno-alias -unroll-aggressive -opt-prefetch -use-intel-optimized-headers -no-prec-div
      OFLAG_IN   = $(OFLAG)
      DEBUG      = -O0
      
      MKL_PATH   = $(MKLROOT)/lib/intel64
      BLAS       =
      LAPACK     =
      BLACS      =
      SCALAPACK  =
      
      OBJECTS    = fftmpiw.o fftmpi_map.o fftw3d.o fft3dlib.o
      INCS       =
      
      LLIBS      = ${MKL_PATH}/libmkl_blas95_lp64.a ${MKL_PATH}/libmkl_lapack95_lp64.a \
                   ${MKL_PATH}/libmkl_scalapack_lp64.a  \
                   -Wl,--start-group ${MKL_PATH}/libmkl_intel_lp64.a \
                   ${MKL_PATH}/libmkl_sequential.a ${MKL_PATH}/libmkl_core.a \
                   ${MKL_PATH}/libmkl_blacs_intelmpi_lp64.a  -Wl,--end-group
      
      OBJECTS_O1 += fft3dfurth.o fftw3d.o fftmpi.o fftmpiw.o
      OBJECTS_O2 += fft3dlib.o
      
      # For what used to be vasp.5.lib
      CPP_LIB    = $(CPP)
      FC_LIB     = $(FC)
      CC_LIB     = cc
      CFLAGS_LIB = -O
      FFLAGS_LIB = -O1
      FREE_LIB   = $(FREE)
      
      OBJECTS_LIB= linpack_double.o getshmem.o
      
      # Normally no need to change this
      SRCDIR     = ../../src
      BINDIR     = ../../bin
      
    4. 编译代码

      make all
      

    【讨论】:

      猜你喜欢
      • 2015-08-15
      • 1970-01-01
      • 1970-01-01
      • 2016-10-24
      • 2016-04-10
      • 2021-03-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多