Delft3D FM并行计算方法
其中<workingDir> 要写mdu文件所在的文件夹名字,<inputFile>写mdu文件名字,<process>根据份数有多少写多少,我分成8份就从0写到7,如果分成4份就从0写到3,以此类推。使用过Delft3D FM的朋友都知道,如果模拟的区域较大、时间较长,就会导致Delft3D FM模型计算所花费时间较久,而并行计算方法可以有效减少模型计算时间。5.输入下面的命令将*.mdu文件分
方法参考:Delft3D FM Parallel Run - YouTube
使用过Delft3D FM的朋友都知道,如果模拟的区域较大、时间较长,就会导致Delft3D FM模型计算所花费时间较久,而并行计算方法可以有效减少模型计算时间。下面介绍在Delft3D FM上如何进行并行计算。
步骤:
1.在Delft3D FM安装目录下找到x64文件(我的目录是“C:\Program Files (x86)\Deltares\Delft3D FM Suite 2020.02 HMWQ (1.6.1.47098)\plugins\DeltaShell.Dimr\kernels”):

2.将x64文件复制到与*.mdu文件同一个文件夹中:

3.打开这里的x64文件,将\share\bin中的所有文件复制进\dflow\bin中。原视频中没有这一步骤,但是我操作过程中没有这一步骤会导致后面报错,各位可根据实际情况进行。


4.在*.mdu文件目录下,打开命令行窗口。

5.输入下面的命令将*.mdu文件分成若干部分。注意命令中的路径、份数、mdu文件名都要根据自己的实际情况进行修改。其中份数可根据自己电脑的核数进行确定,我这里分成8份,大家可以在任务管理器查看自己电脑的核数。
E:\Delft3D\Paralell_Computing_Test\paralell_fm\paralell_test\input\x64\dflowfm\bin\dflowfm-cli.exe -partition:ndomains=8:icgsolver=6 paralell_test.mdu

这一步完成后mdu文件分成了八份:

6.准备xml文件。打开记事本或其他文本编译器,输入下面内容:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<dimrConfig xmlns="http://schemas.deltares.nl/dimrConfig" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.deltares.nl/dimrConfig http://content.oss.deltares.nl/schemas/d_hydro-1.00.xsd">
<documentation>
<fileVersion>1.00</fileVersion>
<createdBy>Deltares, Coupling team</createdBy>
<creationDate>2017-02-08T13:32:38.6490749Z</creationDate>
</documentation>
<control>
<start name="myNameDFlowFM"/>
</control>
<component name="myNameDFlowFM">
<library>dflowfm</library>
<workingDir>input</workingDir>
<inputFile>paralell_test.mdu</inputFile>
<process>0 1 2 3 4 5 6 7</process>
<mpiCommunicator>DFM_COMM_DFMWORLD</mpiCommunicator>
</component>
</dimrConfig>
其中<workingDir> 要写mdu文件所在的文件夹名字,<inputFile>写mdu文件名字,<process>根据份数有多少写多少,我分成8份就从0写到7,如果分成4份就从0写到3,以此类推。最后将文件保存为*.xml文件,并保存在与<workingDir>同一目录下(我这里是与input文件夹同一目录下),保存名字为dimr_config.xml(与后面的脚本文件对应即可):

7.准备脚本文件。打开记事本或其他文本编译器,输入下面命令。这里的目录对应Delft3D FM安装目录。后面的数字8对应份数,再后面的xml文件对应步骤6生成的那个xml文件。将该文件保存为*.bat文件,放在input文件夹同一目录下。
call "C:\Program Files (x86)\Deltares\Delft3D FM Suite 2020.02 HMWQ (1.6.1.47098)\plugins\DeltaShell.Dimr\kernels\x64\dimr\scripts\run_dimr_parallel.bat" 8 dimr_config.xml
pause

8.点击bat文件,这时候就开始并行计算了:

有的朋友可能点击bat文件的时候报错,这时建议参考这篇文章:
关于MPICH2运行“出现与目标机器积极拒绝,无法连接问题_目标机器积极拒绝,无法连接 mpich-CSDN博客
最后感谢miao_yan师兄对我的大力帮助~也感谢您看到这里~
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐

所有评论(0)