二维风暴潮模式并行计算研究-修改稿.doc

二维风暴潮模式并行计算研究-修改稿.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
二维风暴潮模式并行计算研究-修改稿

二维风暴潮模式并行计算研究 郑友华1 李训强1 朱首贤2 张文静1 (1、解放军理工大学气象学院;2、河海大学港口海岸与近海工程学院;江苏南京,211100) 摘 要:本文通过对串行程序的分析、探讨,提出了基于区域分解的二维风暴潮模式并行算法;通过生成派生数据类型的方式,解决了二维数组子块传送和不同类型数组对应并行化读写的问题;通过子程序全局通信的方式,解决了边界处理的复杂性,提高了模式的可扩展性。并在选取不同的网格规模、不同的进程数的条件下进行了测试,得到了较为理想的结果。 关键词:风暴潮 区域分解 全局通信 派生数据类型 风暴潮是我国沿海的主要气象海洋灾害之一。随着海岸、近岸和海洋开发越来越多,对提高风暴潮模拟精度以及时空分辨率的要求越来越迫切。目前,广泛用于风暴潮模拟与预报的二维模式大多数是基于串行计算技术的,而计算区域的广阔性、模拟精度和时空分辨率的要求必然使得计算时效性不能满足预报的需要,因此,为解决高分辨率模式所带来的大计算量的预报时效问题非常必要的。现实中所有的大型计算机都是基于并行计算技术的,即便是用于科研或气象海洋预报的PC机,也都是多核的,也可以用并行计算技术解决不能充分利用CPU的问题。因此,为提高二维风暴潮模式的计算速度,研究开发基于并行计算技术的二维风暴潮模式是最好的选择。 本文通过对串行程序的分析,提出了基于区域分解的二维风暴潮并行算法,得到了较为理想的结果。加速比峰值接近11.0,并行程序与串行程序同步计算结果的相对误差小于0.001%。 1 并行方法及环境介绍 并行计算就是研究如何把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给许多计算机进行并行处理,最后将这些计算结果综合起来得到最终的结果。在当前并行机上,比较流行的并行编程环境可以分为三类:消息传递、共享存储和数据并行。其中,以MPI和PVM为代表的消息传递并行编程技术基于大粒度的进程级并行,具有最好的可移植性,几乎被当前流行的各类并行机所支持,具有很好的可扩展性[1~4]。完全可以满足二维风暴潮模式并行计算的需要。 本文采用MPI消息传递并行编程技术,对二维风暴潮模式进行了并行化处理,并在某计算服务系统上进行模拟调试。该系统采用了基于 Infiniband DDR 互联的高性能并行文件系统,经测试聚合I/O 写带宽最大可达1.7GB/s,聚合读带宽可达140GB/s,完全消除了机群系统的I/O 瓶颈问题。 2 串行代码分析 将串行程序进行并行化改造前,首先需要对原串行程序进行分析,找出程序中的热点,也就是程序中计算最集中、花费时间最长的地方;然后通过对热点区域的数据相关性、算法的可并行性进行分析,将热点区域进行并行化,以达到最好的并行化效果[8,9]。 2.1 差分方程 李岩等[11]在史峰岩等[5]引入流速逆变张量建立的可隐式求解的自适应曲线网格二维流场模式的基础上加以改进,考虑更为合理的物理过程。模式增加了气压梯度力、球面曲率、水平湍流扩散和辐射应力物理过程,本文采用该模式。 (2.1.1) (2.1.2) (2.1.3) 式中:t为时间;x,y为直角坐标系坐标;u,v分别为沿x,y方向的流速分量;h为海底到静止海面的距离(静水深);ζ为自静止海面向上起算的海面升高;g为重力加速度;T,P,M,F分别为辐射应力、卷破波切应力、涡动粘性、水底摩擦对单位质量水体产生的作用力,下标为在x,y方向的分量[11]。 图1 变量空间配置示意图: +:ζ →:u ↑:v 如图1所示,变量空间配置为C网格。空间差分采用中央差格式,时间积分采用ADI方法。 并引入广义曲线坐标变换: 广义速度量为: ,U,V也称为速度的逆变张量[5]。 对(2.1.2)、(2.1.2)式进行离散,可得形如以下格式的方程组[5~7]: (2.1.4) (2.1.5) Ea、Eb、A(i,j)、C(i,j)的表达式和差分方程的离散很容易推导,这里不再详细给出,有兴趣的读者可参考文献[6]。 显然,第j行各网格点形如(2.1.5)式的差分方程构成一个三对角矩阵的方程组,可以用追赶法[6]求解,得到,然后由(2.1.4)式得到。同理,第i列各网格点的差分方程构成一个三对角矩阵的方程组,可以求解得到,然后得到。 2.2 时间诊断 通过intel vtune性能分析工具对串行程序进行时间分析,分别以计算08年9月7日-10月7日(时间步长180s)金门海域(area1,网格规模为246×238)和东山-大埕湾海域(area2,网格规模为418×418)风暴增水的所用时间为样本,得知,时间

您可能关注的文档

文档评论(0)

junjun37473 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档