在北航校级高算平台安装并使用OpenFOAM-7

应对疫情,更好的发扬 不返校,不停学 精神,北航对在校师生免费开放了新建的校级高算平台。

该平台可以通过XshellPutty等软件进行远程控制,XftpWinSCP等软件进行文件上传及下载,校外ip可通过学校VPN进行使用。

下面介绍一下,在北航校级高算平台上安装OpenFOAM-7及使用的方法。

安装OpenFOAM-7

  1. 使用module命令配置GCC、Intel MPICH环境,注意OpenFOAM-7依赖于GCC version 4.8 及以上版本、Intel ICC version 17.0.4 or above

    $ module load Intel-2018
    $ module load openmpi-1.10.7
    
  2. 将OpenFOAM-7和ThirdParty-7解压到某个目录下并进行重命名,如~/OpenFOAM/OpenFOAM-7~/OpenFOAM/ThirdParty-7,并且配置基本环境

    $ cd OpenFOAM-7
    $ vim etc/bashrc
    
    • 修改文件内容etc/bashrc
    65:export WM_COMPILER=Icc
    89:export WM_MPLIB=SYSTEMOPENMPI
    
    • 加载OpenFOAM-7的环境
    $ source ~/OpenFOAM/OpenFOAM-7/etc/bashrc
    
  3. 编译源代码

    $ ./Allwmake
    

    编译过程需要大量时间,可以直接进行并行编译

    $ ./Allwmake -j
    

    上述编译正常完成后,OpenFOAM-7即安装完成

使用OpenFOAM-7

  1. 依次加载上述编译过程中的环境

    $ module load Intel-2018
    $ module load openmpi-1.10.7
    $ source ~/OpenFOAM/OpenFOAM-7/etc/bashrc
    

    也可以讲上述内容直接写入~/.bashrc,每次自动登陆账号即可直接自动加载

  2. 使用任务提交工具 sbatch 进行算例任务提交,使用dsmcFoam进行单节点20核的并行计算为例

    • 在算例目录下创建任务文件,比如run-dsmcFoam.sh,并添加内容

      #!/bin/sh
      #SBATCH -J nanoNozzle1
      #SBATCH -p normal
      #SBATCH -n 20
      #SBATCH -N 1
      #SBATCH --cpus-per-task=1
      #SBATCH -t 72:00:00
      #SBATCH -o log.dsmc
      #SBATCH -e log.error
      
      srun hostname | sort > machinefile.${SLURM_JOB_ID}
      NP=`cat machinefile.${SLURM_JOB_ID} | wc -l`
      mpirun -np ${NP} --hostfile ./machinefile.${SLURM_JOB_ID}  dsmcFoam –parallel
      

      上述各语句意思参考《北京航空航天大学HPC项目用户手册》

    • 使用 sbatch 命令提交算例

      $ sbatch ./run-dsmcFoam.sh
      
    • 可以使用squeue查看任务状态,需要说明squeue命令会显示所有用户的任务,可以使用grep命令进行本账号下的任务筛选

      $ squeue | grep 账号名称
      

常用Linux命令

一些常用的Linux操作命令

命令 含义
pwd 显示当前目录位置
cd 目录跳转,../为上一级目录,./为当前目录
ls 显示某目录下的文件夹和文件
cp 复制
mv 移动或者重命名
rm 删除
mkdir 创建目录
vim 使用vim对文档进行编辑
chmod 更改文件或者目录权限,比如赋予某文件可执行权限chmod u+x 文件名
head 打印文件,默认显示开头10行
tail 打印文件,一般使用参数-f用来监视日志文件
zip 压缩,多级目录压缩,使用参数-r
unzip 解压缩
tar 另一种格式的压缩或者解压缩
gzip 另一种格式的压缩或者解压缩

本高算平台上的任务管理命令

命令 含义
sinfo 查看系统状态
squeue 查看任务状态,配合grep命令使用,squeue
sbatch 提交任务,配合任务脚本使用
scancel 结束任务,后跟作业号

你可能感兴趣的:(在北航校级高算平台安装并使用OpenFOAM-7)