Slurm提交Fluent和CFX的计算脚本
1. Fluent
首先要编写Fluent的jou脚本:
/file/read-case "small_fan.cas.h5"
/solve/initialize/hyb-initialization
/solve/iterate 100
/file/write-case "small_fan_results.cas.h5" ok
/file/write-data "small_fan_results.dat.h5" ok
/exit ok
这个jou文件很简单,就是告诉Fluent读取哪个文件、怎么初始化、迭代多少步、如何保存直至最后退出。如果计算比较复杂的,比如涉及到UDF加载或特殊条件初始化设置的,还需要增加相应的命令行。不熟悉怎么编写TUI命令的话,可以通过Fluent图形界面下面的命令行窗口录制脚本。
编写Slurm脚本:
#!/bin/bash
#SBATCH --job-name=fluent_test # 任务名称
#SBATCH --partition=debug
#SBATCH --output=%j.out
#SBATCH --error=%j.err
#SBATCH -N 1 # 计算节点数
#SBATCH --ntasks-per-node=32 # 每节点计算进程数
cd $SLURM_SUBMIT_DIR
source ${HOME}/opt/ansys2025r1.env # 载入许可证设置环境变量,这里应该使用绝对路径
export FLUENT=/ansys_inc/v251/fluent/bin/fluent # fluent可执行文件路径
export MPI_TYPE=intel # intel or openmpi
export JOU_FILE=`find . -name "*.jou"`
export MACHINEFILE=$SLURM_JOBID.node
scontrol show hostnames $SLURM_JOB_NODELIST > $MACHINEFILE
#注意fluent根据2维3维单双精度的不同有4钟计算模式:2d、3d、2ddp、3ddp,根据自己的需求选择对应的计算模式
$FLUENT 3ddp -g -t$SLURM_NPROCS -cnf=$MACHINEFILE -mpi=$MPI_TYPE -ssh -i $JOU_FILE
保存以上脚本,将待提交的cas文件和jou文件放到脚本所在文件夹,通过sbatch
命令提交脚本即可。计算完成后将输出的结果文件下载到本地机器上处理。
2. CFX
相比fluent,cfx计算脚本简单很多:
阅读时长1分钟
Andrew Moa