一种格子玻尔兹曼模型格点迁移计算方法及系统技术方案

技术编号:17516550 阅读:100 留言:0更新日期:2018-03-21 01:08
本发明专利技术公开了一种格子玻尔兹曼模型格点迁移计算方法及系统。在本发明专利技术的方法中,在格点迁移计算中,针对格子玻尔兹曼模型数据的每个数据块:维持当前数据块的数据的保存位置不变并保存来自其他数据块的数据,其中,所述来自其他数据块的数据和所述当前数据块的数据间的存储位置对应关系与格点迁移后所述来自其他数据块的数据和所述当前数据块的数据间的存储位置对应关系一致;将当前数据块的数据以及来自其他数据块的数据作为一个数据体,通过改变所述数据体在内存中的映射位置来完成格点迁移计算。相较于现有技术,根据本发明专利技术的方法,可以大大减少格点迁移计算的计算时间。

A lattice Boltzmann model lattice migration calculation method and system

The invention discloses a lattice Boltzmann model grid point migration calculation method and system. \u5728\u672c\u53d1\u660e\u7684\u65b9\u6cd5\u4e2d\uff0c\u5728\u683c\u70b9\u8fc1\u79fb\u8ba1\u7b97\u4e2d\uff0c\u9488\u5bf9\u683c\u5b50\u73bb\u5c14\u5179\u66fc\u6a21\u578b\u6570\u636e\u7684\u6bcf\u4e2a\u6570\u636e\u5757\uff1a\u7ef4\u6301\u5f53\u524d\u6570\u636e\u5757\u7684\u6570\u636e\u7684\u4fdd\u5b58\u4f4d\u7f6e\u4e0d\u53d8\u5e76\u4fdd\u5b58\u6765\u81ea\u5176\u4ed6\u6570\u636e\u5757\u7684\u6570\u636e\uff0c\u5176\u4e2d\uff0c\u6240\u8ff0\u6765\u81ea\u5176\u4ed6\u6570\u636e\u5757\u7684\u6570\u636e\u548c\u6240\u8ff0\u5f53\u524d\u6570\u636e\u5757\u7684\u6570\u636e\u95f4\u7684\u5b58\u50a8\u4f4d\u7f6e\u5bf9\u5e94\u5173\u7cfb\u4e0e\u683c\u70b9\u8fc1\u79fb\u540e\u6240\u8ff0\u6765\u81ea\u5176\u4ed6\u6570\u636e\u5757\u7684\u6570\u636e\u548c\u6240\u8ff0\u5f53\u524d\u6570\u636e\u5757\u7684\u6570\u636e\u95f4\u7684\u5b58\u50a8\u4f4d\u7f6e\u5bf9\u5e94\u5173\u7cfb\u4e00\u81f4\uff1b\u5c06\u5f53\u524d\u6570\u636e\u5757\u7684\u6570\u636e\u4ee5\u53ca\u6765\u81ea\u5176\u4ed6\u6570\u636e\u5757\u7684\u6570\u636e\u4f5c\u4e3a\u4e00\u4e2a\u6570\u636e\u4f53\uff0c\u901a\u8fc7\u6539\u53d8\u6240\u8ff0\u6570\u636e\u4f53\u5728\u5185\u5b58\u4e2d\u7684\u6620\u5c04\u4f4d\u7f6e\u6765\u5b8c\u6210\u683c\u70b9\u8fc1\u79fb\u8ba1\u7b97\u3002 Compared with the existing technology, the calculation time of the grid point migration can be greatly reduced according to the method of the present invention.

【技术实现步骤摘要】
一种格子玻尔兹曼模型格点迁移计算方法及系统
本专利技术涉及地质开发领域,具体说涉及一种格子玻尔兹曼模型格点迁移计算方法及系统。
技术介绍
格子玻尔兹曼(Boltzmann)模型(LBM),是介于流体的微观分子动力学模型和宏观连续模型之间的介观模型,其兼具二者的优点。这种模型具有明显的计算优势,其介观背景使得流体内部的相互作用及流体与固体的相互作用在LBM中可以方便地描述,因而在多组分、多相流以及渗流、气固两相流、流-固耦合方面得到广泛应用。由于不受连续介质假设的限制,因而在微尺度流动与传热等连续方法不适用的问题研究中具有良好的应用前景。格子Boltzmann模型的并行计算,需要将数据分块,将所有的数据点分到各个处理器。在格点迁移计算(并行边界处理)中,除了对各处理器内部的数据进行本地迁移之外,还需要在各个处理器之间执行数据交换,即跨处理器迁移。在现有方法中,格子Boltzmann模型的格点迁移计算迁移过程复杂,需要复制的数据量大,格点迁移的计算时间长,从而延长了格子Boltzmann模型整体计算时间。为了减少格子Boltzmann模型的整体计算时间,需要一种新的格子玻尔兹曼模型格点迁移计算方法。
技术实现思路
本专利技术提供了一种格子玻尔兹曼模型格点迁移计算方法,在格点迁移计算中,针对格子玻尔兹曼模型数据的每个数据块:维持当前数据块的数据的保存位置不变并保存来自其他数据块的数据,其中,所述来自其他数据块的数据和所述当前数据块的数据间的存储位置对应关系与格点迁移后所述来自其他数据块的数据和所述当前数据块的数据间的存储位置对应关系一致;将当前数据块的数据以及来自其他数据块的数据作为一个数据体,通过改变所述数据体在内存中的映射位置来完成格点迁移计算。在一实施例中,维持当前数据块的数据的保存位置不变并保存来自其他数据块的数据,其中,针对每个数据块构造包含数据层以及镜像层的数据体存储空间,所述数据层与所述镜像层的存储地址不重合,所述数据层用于存储当前数据块的数据,所述镜像层用于存储来自其他数据块的数据。在一实施例中,所述镜像层的存储地址与所述数据层的存储地址相邻。在一实施例中,所述方法包括:在每个用于进行并行计算的处理模块的内存中构造所述数据体存储空间;将所述数据块分配并保存在各个处理模块所述数据层中,所述镜像层不分配数据;在迁移计算中,每个所述处理模块发送需要在处理模块之间执行交换的数据并接收来自其他处理器的数据;每个所述处理模块将接收到的来自其他处理器的数据保存到所述镜像层;改变所述处理模块的内存中所述数据体存储空间的起点的位置完成格点迁移计算。在一实施例中,当格子玻尔兹曼模型像素点边长分别为nx、ny、nz时,针对三维模型所述数据体存储空间的起点改变后的位置如下:start`=start-nx*ny-nx-1其中,start`为新的起点位置,start为原本的起点位置。在一实施例中,当格子玻尔兹曼模型像素点边长分别为nx、ny、nz时,针对二维模型所述数据体存储空间的起点改变后的位置如下:start`=start--nx-1其中,start`为新的起点位置,start为原本的起点位置。本专利技术还提出了一种格子玻尔兹曼模型格点迁移计算系统,所述系统包括存储模块,其中,所述存储模块配置为:在格点迁移计算中,针对格子玻尔兹曼模型数据的每个数据块,维持当前数据块的数据的保存位置不变并保存来自其他数据块的数据,其中,所述来自其他数据块的数据和所述当前数据块的数据间的存储位置对应关系与格点迁移后所述来自其他数据块的数据和所述当前数据块的数据间的存储位置对应关系一致;将当前数据块的数据以及来自其他数据块的数据作为一个数据体,通过改变所述数据体在所述存储模块中的映射位置来完成格点迁移计算。在一实施例中,所述存储模块包含多个数据体存储单元,每个数据体存储单元对应一个所述数据块,其中:所述数据体存储单元包含数据层以及镜像层,所述数据层与所述镜像层的存储地址不重合,所述数据层用于存储当前数据块的数据,所述镜像层用于存储来自其他数据块的数据。在一实施例中,所述数据体存储单元配置为:所述镜像层的存储地址与所述数据层的存储地址相邻。在一实施例中,所述系统包括多个用于进行并行计算的处理模块,所述存储模块分布在各个所述处理模块中,每个处理模块的所述存储模块包含一个所述数据体存储单元,其中:所述系统配置为将所述数据块分配并保存在各个处理模块的所述数据层中,所述镜像层不分配数据;所述处理模块配置为在迁移计算中发送需要在处理模块之间执行交换的数据并接收来自其他处理器的数据;所述处理模块配置为将接收到的来自其他处理器的数据保存到所述镜像层;所述处理模块配置为改变所述存储模块中所述数据体存储单元的起点的位置以完成格点迁移计算。相较于现有技术,根据本专利技术的方法即系统,可以大大减少格点迁移计算的计算时间。本专利技术的其它特征或优点将在随后的说明书中阐述。并且,本专利技术的部分特征或优点将通过说明书而变得显而易见,或者通过实施本专利技术而被了解。本专利技术的目的和部分优点可通过在说明书、权利要求书以及附图中所特别指出的步骤来实现或获得。附图说明附图用来提供对本专利技术的进一步理解,并且构成说明书的一部分,与本专利技术的实施例共同用于解释本专利技术,并不构成对本专利技术的限制。在附图中:图1是现有技术中格子Boltzmann模型数据块分配示意图;图2是现有技术中格子Boltzmann模型二维格点迁移方向示意图;图3是现有技术中格子Boltzmann模型三维格点迁移方向示意图;图4是现有技术中基于图1所示数据点分配的格子Boltzmann模型格点迁移结果示意图;图5是根据本专利技术一实施例单一处理单元中格子Boltzmann模型数据块分配示意图;图6是根据本专利技术一实施例图5所示处理单元中格子Boltzmann模型格点迁移结果示意图;图7是根据本专利技术一实施例图5到图6的格点迁移过程示意图;图8是根据本专利技术一实施例的方法执行流程图;图9是根据本专利技术一实施例单一处理单元中数据体存储单元结构示意图;图10是根据本专利技术一实施例格点迁移过程中数据体存储单元数据块存储情况示意图;图11是根据本专利技术一实施例格点迁移过程中数据体存储单元中数据块起点移动情况示意图;图12是根据本专利技术一实施例的系统结构简图。具体实施方式以下将结合附图及实施例来详细说明本专利技术的实施方式,借此本专利技术的实施人员可以充分理解本专利技术如何应用技术手段来解决技术问题,并达成技术效果的实现过程并依据上述实现过程具体实施本专利技术。需要说明的是,只要不构成冲突,本专利技术中的各个实施例以及各实施例中的各个特征可以相互结合,所形成的技术方案均在本专利技术的保护范围之内。在现有方法中,格子Boltzmann模型的格点迁移计算迁移过程复杂,需要复制的数据量大,格点迁移的计算时间长,从而延长了格子Boltzmann模型整体计算时间。为了减少格子Boltzmann模型的整体计算时间,本专利技术提供了一种格子玻尔兹曼模型格点迁移计算方法。在现有技术中,格子Boltzmann模型的并行计算,需要将数据分块,将所有的数据点(数据块)分到各个处理器。如图1所示,四个处理器(由粗实线分隔)分别被分配4组数据点(A、B、C、D)。在格点迁移计算中,除了对各处理器内部的数据进行本地迁移本文档来自技高网...
一种格子玻尔兹曼模型格点迁移计算方法及系统

【技术保护点】
一种格子玻尔兹曼模型格点迁移计算方法,其特征在于,在格点迁移计算中,针对格子玻尔兹曼模型数据的每个数据块:维持当前数据块的数据的保存位置不变并保存来自其他数据块的数据,其中,所述来自其他数据块的数据和所述当前数据块的数据间的存储位置对应关系与格点迁移后所述来自其他数据块的数据和所述当前数据块的数据间的存储位置对应关系一致;将当前数据块的数据以及来自其他数据块的数据作为一个数据体,通过改变所述数据体在内存中的映射位置来完成格点迁移计算。

【技术特征摘要】
1.一种格子玻尔兹曼模型格点迁移计算方法,其特征在于,在格点迁移计算中,针对格子玻尔兹曼模型数据的每个数据块:维持当前数据块的数据的保存位置不变并保存来自其他数据块的数据,其中,所述来自其他数据块的数据和所述当前数据块的数据间的存储位置对应关系与格点迁移后所述来自其他数据块的数据和所述当前数据块的数据间的存储位置对应关系一致;将当前数据块的数据以及来自其他数据块的数据作为一个数据体,通过改变所述数据体在内存中的映射位置来完成格点迁移计算。2.根据权利要求1所述的方法,其特征在于,维持当前数据块的数据的保存位置不变并保存来自其他数据块的数据,其中,针对每个数据块构造包含数据层以及镜像层的数据体存储空间,所述数据层与所述镜像层的存储地址不重合,所述数据层用于存储当前数据块的数据,所述镜像层用于存储来自其他数据块的数据。3.根据权利要求2所述的方法,其特征在于,所述镜像层的存储地址与所述数据层的存储地址相邻。4.根据权利要求2或3所述的方法,其特征在于,所述方法包括:在每个用于进行并行计算的处理模块的内存中构造所述数据体存储空间;将所述数据块分配并保存在各个处理模块所述数据层中,所述镜像层不分配数据;在迁移计算中,每个所述处理模块发送需要在处理模块之间执行交换的数据并接收来自其他处理器的数据;每个所述处理模块将接收到的来自其他处理器的数据保存到所述镜像层;改变所述处理模块的内存中所述数据体存储空间的起点的位置完成格点迁移计算。5.根据权利要求4所述的方法,其特征在于,当格子玻尔兹曼模型像素点边长分别为nx、ny、nz时,针对三维模型所述数据体存储空间的起点改变后的位置如下:start`=start-nx*ny-nx-1其中,start`为新的起点位置,start为原本的起点位置。6.根据权利要求4所述的方法,其特征在于,当格子玻尔兹曼模型像素点边长分别为nx、...

【专利技术属性】
技术研发人员:徐婷蒲军周宇秦学杰曹丽丽杨森
申请(专利权)人:中国石油化工股份有限公司中国石油化工股份有限公司石油勘探开发研究院
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1