鲲鹏社区首页
中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助

运行和验证

操作步骤

  1. 使用PuTTY工具,以root用户登录服务器。
  2. 执行以下命令进入测试目录。
    cd /path/to/OpenFOAM/OpenFOAM-v1906/tutorials/incompressible/pisoFoam/LES/motorBike/motorBike
  3. 执行以下命令根据实际需要设置网格精度。
    sed -ri "s/\(20 8 8\)/\(2048 512 64\)/" ./system/blockMeshDict

    建议多机运行时,将网格精度调高。

  4. 执行以下命令设置运行CPU核数。
    sed -ri "s/8/256/" system/{decomposeParDict,decomposeParDict.hierarchical,decomposeParDict.ptscotch}
    sed -ri "s/\(4 2 1\)/\(16 4 4\)/" system/{decomposeParDict,decomposeParDict.hierarchical,decomposeParDict.ptscotch}

    此处配置为双节点运行,运行CPU核数为256,16*4*4=256。可根据具体情况修改。

  5. 执行以下命令进行运行。
    • 单节点
      ./Allrun

      下图为单节点使用CPU核心数为6时的运行截图,其它配置得到的结果应与下图类似。

      若使用root用户运行,需要参照多节点运行部分修改RunFunctions文件,在mpirun命令后加入“--allow-run-as-root”。

    • 双节点
      1. 创建“hostfile”文件。
        vi hostfile
      2. 按“i”进入编辑模式
        Node1
        Node2

        Node1和Node2为运行代码的节点名称,依照实际情况修改,并保证节点相互可以Ping通。注意多台机器间的SSH免密登录。

      3. 按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。
      4. 修改“RunFunctions”文件。
        vi  /path/to/OPENFOAM/bin/tools/RunFunctions
      5. 按“i”进入编辑模式,编辑如下内容。
        $mpirun -x PATH=$PATH –x LD_LIBRARY_PATH=$LD_LIBRARY_PATH -x WM_PROJECT_DIR=$WM_PROJECT -n $nProcs $appRun $appArgs "$@" </dev/null >> $logFile 2>&1

        至此,多节点运行所需配置完成。

      6. 按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。
      7. 执行以下命令进行运行。
        ./Allrun
  6. 计算结束正常退出后,生成计算日志文件,执行vi log.simpleFoam打开log.simpleFoam。需要查看log.simpleFoam日志中的“ExecutionTime”数值,单位是“s”,数值越少性能越优