Skip to content

FHI-aims

Beta phase: DelftBlue software stack

To compile FHI-aims on DelftBlue:

  1. Load Intel compilers modules:
    module load 2022r2
    module load intel/oneapi-all
    
  2. Load cmake:
    module load cmake
    
  3. Configure initial_cache.cmake:
    # Intel Compilers
    set(CMAKE_Fortran_COMPILER "mpiifort" CACHE STRING "" FORCE)
    set(CMAKE_Fortran_FLAGS "-O3 -ip -fp-model precise" CACHE STRING "" FORCE)
    set(Fortran_MIN_FLAGS "-O0 -fp-model precise" CACHE STRING "" FORCE)
    
    set(CMAKE_C_COMPILER "icc" CACHE STRING "" FORCE)
    set(CMAKE_C_FLAGS "-O3 -ip -fp-model precise -std=gnu99" CACHE STRING "" FORCE)
    
    set(LIB_PATHS "/mnt/shared/apps/generic/intel/oneapi/mkl/2022.0.2/lib/intel64" CACHE STRING "" FORCE)
    set(LIBS "mkl_intel_lp64 mkl_sequential mkl_core mkl_blacs_intelmpi_lp64 mkl_scalapack_lp64" CACHE STRING "" FORCE)
    
    set(USE_MPI ON CACHE BOOL "" FORCE)
    set(USE_SCALAPACK ON CACHE BOOL "" FORCE)
    set(USE_LIBXC ON CACHE BOOL "" FORCE)
    set(USE_HDF5 OFF CACHE BOOL "" FORCE)
    set(USE_RLSY ON CACHE BOOL "" FORCE)
    set(ELPA2_KERNEL "" CACHE STRING "Change to AVX/AVX2/AVX512 if running on Intel processors" FORCE)
    
  4. Compile as usual:
    cmake -C initial_cache.cmake ..
    make -j 8
    make -j 8 vibrations
    

Older software stacks

Beta phase

To compile FHI-aims on DelftBlue (07-04-2022; beta-phase software stack):

  1. Load Intel compilers modules:
    module use /mnt/shared/apps/modulefiles
    module load 2022r1
    module load intel/oneapi-all
    
  2. Load cmake:
    module load compute
    module load cmake
    
  3. Configure initial_cache.cmake:
    # Intel Compilers
    set(CMAKE_Fortran_COMPILER "mpiifort" CACHE STRING "" FORCE)
    set(CMAKE_Fortran_FLAGS "-O3 -ip -fp-model precise" CACHE STRING "" FORCE)
    set(Fortran_MIN_FLAGS "-O0 -fp-model precise" CACHE STRING "" FORCE)
    
    set(CMAKE_C_COMPILER "icc" CACHE STRING "" FORCE)
    set(CMAKE_C_FLAGS "-O3 -ip -fp-model precise -std=gnu99" CACHE STRING "" FORCE)
    
    set(LIB_PATHS "/mnt/shared/apps/generic/intel/oneapi/mkl/2022.0.2/lib/intel64" CACHE STRING "" FORCE)
    set(LIBS "mkl_intel_lp64 mkl_sequential mkl_core mkl_blacs_intelmpi_lp64 mkl_scalapack_lp64" CACHE STRING "" FORCE)
    
    set(USE_MPI ON CACHE BOOL "" FORCE)
    set(USE_SCALAPACK ON CACHE BOOL "" FORCE)
    set(USE_LIBXC ON CACHE BOOL "" FORCE)
    set(USE_HDF5 OFF CACHE BOOL "" FORCE)
    set(USE_RLSY ON CACHE BOOL "" FORCE)
    set(ELPA2_KERNEL "" CACHE STRING "Change to AVX/AVX2/AVX512 if running on Intel processors" FORCE)
    
  4. Compile as usual:
    cmake -C initial_cache.cmake ..
    make -j 8
    make -j 8 vibrations
    

pre-Beta phase: DelftBlue software stack

To compile FHI-aims on DelftBlue (01-04-2022; pre-beta-phase software stack):

  1. Load Intel compilers modules:
    module use /mnt/shared/apps/modulefiles
    module load 2022r1
    module load intel/oneapi
    module load compiler/2022.0.2
    module load mkl/2022.0.2
    module load mpi/2021.5.1
    
  2. Load cmake:
    module load compute
    module load cmake
    
  3. Configure initial_cache.cmake:
    # Intel Compilers
    set(CMAKE_Fortran_COMPILER "mpiifort" CACHE STRING "" FORCE)
    set(CMAKE_Fortran_FLAGS "-O3 -ip -fp-model precise" CACHE STRING "" FORCE)
    set(Fortran_MIN_FLAGS "-O0 -fp-model precise" CACHE STRING "" FORCE)
    
    set(CMAKE_C_COMPILER "icc" CACHE STRING "" FORCE)
    set(CMAKE_C_FLAGS "-O3 -ip -fp-model precise -std=gnu99" CACHE STRING "" FORCE)
    
    set(LIB_PATHS "/mnt/shared/apps/generic/intel/oneapi/mkl/2022.0.2/lib/intel64" CACHE STRING "" FORCE)
    set(LIBS "mkl_intel_lp64 mkl_sequential mkl_core mkl_blacs_intelmpi_lp64 mkl_scalapack_lp64" CACHE STRING "" FORCE)
    
    set(USE_MPI ON CACHE BOOL "" FORCE)
    set(USE_SCALAPACK ON CACHE BOOL "" FORCE)
    set(USE_LIBXC ON CACHE BOOL "" FORCE)
    set(USE_HDF5 OFF CACHE BOOL "" FORCE)
    set(USE_RLSY ON CACHE BOOL "" FORCE)
    set(ELPA2_KERNEL "" CACHE STRING "Change to AVX/AVX2/AVX512 if running on Intel processors" FORCE)
    
  4. Compile as usual:
    cmake -C initial_cache.cmake ..
    make -j 8
    

Alpha phase: Vendor software stack

To compile FHI-aims on DelftBlue (17-03-2022; alpha-phase software stack):

  1. Load Intel compilers module:
    . /cm/shared/intel/bin/compilervars.sh -arch intel64 -platform linux
    
  2. Enable local binary of cmake:
    export PATH="/mnt/shared/home/dpalagin/tools/cmake/cmake-3.22.3-linux-x86_64/bin:$PATH"
    
  3. Configure initial_cache.cmake:
    # Intel Compilers
    set(CMAKE_Fortran_COMPILER "mpiifort" CACHE STRING "" FORCE)
    set(CMAKE_Fortran_FLAGS "-O3 -ip -fp-model precise" CACHE STRING "" FORCE)
    set(Fortran_MIN_FLAGS "-O0 -fp-model precise" CACHE STRING "" FORCE)
    
    set(CMAKE_C_COMPILER "icc" CACHE STRING "" FORCE)
    set(CMAKE_C_FLAGS "-O3 -ip -fp-model precise -std=gnu99" CACHE STRING "" FORCE)
    
    set(LIB_PATHS "/cm/shared/intel/compilers_and_libraries_2020.4.304/linux/mkl/lib/intel64" CACHE STRING "" FORCE)
    set(LIBS "mkl_intel_lp64 mkl_sequential mkl_core mkl_blacs_intelmpi_lp64 mkl_scalapack_lp64" CACHE STRING "" FORCE)
    
    set(USE_MPI ON CACHE BOOL "" FORCE)
    set(USE_SCALAPACK ON CACHE BOOL "" FORCE)
    set(USE_LIBXC ON CACHE BOOL "" FORCE)
    set(USE_HDF5 OFF CACHE BOOL "" FORCE)
    set(USE_RLSY ON CACHE BOOL "" FORCE)
    set(ELPA2_KERNEL "" CACHE STRING "Change to AVX/AVX2/AVX512 if running on Intel processors" FORCE)
    
  4. Compile as usual:
    cmake -C initial_cache.cmake ..
    make -j 8