1. 安装必要的依赖包

$sudo yum groupinstall -y 'Development Tools'

$sudo yum install zlib-devel libXext-devel libGLU-devel libXt-devel libXrender-devel libXinerama-devel libpng-devel libXrandr-devel libXi-devel libXft-devel libjpeg-turbo-devel libXcursor-devel readline-devel ncurses-devel python python-devel cmake qt-devel qt-assistant mpfr-devel gmp gmp-devel

  1. 下载OpenFOAM安装包

$cd ~

$mkdir OpenFOAM

$cd OpenFOAM

$git clone https://github.com/OpenFOAM/OpenFOAM-5.x.git

$git clone https://github.com/OpenFOAM/ThirdParty-5.x.git

  1. 编译安装OpenFOAM第三方包

$cd ThirdParty-5.x

$ ./Allwmake

  1. 编译OpenFOAM

$cd OpenFOAM-5.x/

  • 修改wmake config目录下相关文件,将默认的编译命令设置从icc或者icpc改为mpiicc,以避免可能的找不到“mpi.h”错误

$vim wmake/rules/linux64Icc/c

CC=mpiicc

vim wmake/rules/linux64Icc/c++

CC = mpiicc -std=c++11 -fp-trap=common -fp-model precise

$vim etc/bashrc

export WM_COMPILER=Icc

export WM_MPLIB=INTELMPI

$source etc/bashrc

  • 设置intel环境变量

加载intel icc和mpiicc环境变量

本次测试安装Intel parallel studio软件包,直接运行

$source /share/app/intel/compilers_and_libraries_2019.0.117/linux/bin/compilervars.sh intel64

$export MPI_ROOT=/share/app/intel/impi/2019.0.117/intel64

可加载全部环境变量

  • 确认INTELMPI环境变量

$ $I_MPI_ROOT

bash: /share/app/intel/compilers_and_libraries_2019.0.117/linux/mpi: Is a directory

  • 编译OpenFOAM

./Allwmake -update -j 24 //-j 24 表示24核编译

  1. 提交作业脚本

#!/bin/bash

#SBATCH -N 2

#SBATCH --job-name=solver

#SBATCH --output=solver

#SBATCH --error=%j.err

source /share/app/intel/compilers_and_libraries_2019.0.117/linux/bin/compilervars.sh intel64

export MPI_ROOT=/share/app/intel/impi/2019.0.117/intel64

export I_MPI_PMI_LIBRARY=/usr/lib64/libpmi.so

source $HOME/OpenFOAM/OpenFOAM-5.x/etc/bashrc

decomposePar -force

srun -n 48 simpleFoam -parallel

reconstructPar

rm -rf processor*

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐