匹配于高性能计算机体系结构的结构网格数据管理方法_2

文档序号:8258175阅读:来源:国知局
算机结点内CPU内多处理器核间。
[0024]通过本发明实施例的上述方法可以大幅提升结构网格和物理量的存储与访存的数据局部性,支持应用软件面向高性能计算机复杂体系结构展开浮点性能优化,大幅提升计算效率。
【附图说明】
[0025]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
[0026]图1所示为本发明实施例匹配于高性能计算机体系结构的结构网格数据管理方法的流程图;
[0027]图2所示为本发明实施例匹配于高性能计算机体系结构的结构网格数据管理方法的具体流程图;
[0028]图3a所示为本发明实施例一个二维结构网格实例示意图;
[0029]图3b所示为本发明实施例管理二维结构网格的网格片层次结构和3个网格层的示意图;
[0030]图3c所示为本发明实施例3个网格层被分别剖分为2个网格区的示意图;
[0031]图3d所示为本发明实施例3个网格层的6个网格区被分别剖分为2个网格域的示意图;
[0032]图3e所示为本发明实施例3个网格层的6个网格区的12个网格域被分别剖分为2个网格片的示意图;
[0033]图3f所示为本发明实施例某个网格片管理的3个数据片的示意图;
[0034]图4所示为本发明实施例结构网格层次结构的具体示意图。
【具体实施方式】
[0035]为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
[0036]如图1所示为本发明实施例匹配于高性能计算机体系结构的结构网格数据管理方法的流程图。
[0037]包括步骤101,根据数值模拟对象确定结构网格和所述结构网格上的物理量,并将结构网格建模为由多个网格层构成的网格片层次结构。
[0038]所述结构网格由离散数值模拟计算区域的所有网格单元构成,网格单元是数值模拟数值算法和程序设计的最小几何单位,具有惟一的逻辑索引和几何拓扑。所述网格片层次结构包含若干连续编号的网格层。其中,包含离散数值模拟计算区域的所有最粗网格单元的网格层称为最粗网格层;包含离散数值模拟计算区域所有最细网格单元的网格层称为最细网格层;其余网格层称为中间网格层。从最粗网格层到最细网格层中,每个网格层由上一个网格层的若干单元一致加密得到,覆盖上一个网格层数值模拟计算区域的局部区域。
[0039]步骤102,将所述网格层剖分为互不重叠的若干个子网格,称这些子网格为网格区,为每个所述网格区赋予惟一的逻辑编号,将每个所述网格区映射到惟一的高性能计算机结点,将所述网格区分布存储在高性能计算机结点的内存空间。
[0040]步骤103,将网格区剖分为互不重叠的若干个子网格,称这些子网格为网格域,为每个网格域在网格层中分配惟一的逻辑编号,将其映射到高性能计算机结点内惟一的CPU,所述网格域被分布共享存储在高性能计算机结点内不同CPU的内存空间。
[0041]步骤104,将网格域剖分为互不重叠的若干个子网格,称这些子网格为网格片,为每个网格片在网格层中分配惟一的逻辑编号,将其映射到高性能计算机结点内CPU的惟一CPU核,依据所述网格片对CPU核的映射,网格片被共享存储在高性能计算机结点内CPU的内存空间。
[0042]步骤105,在每个网格片上,为每个物理量在该网格片上分配唯一的内存空间,用于储存该物理量定义在该网格片所有网格单元上的离散值。
[0043]所述网格片中包括至少一个数据片,所述数据片包括网格单元的坐标,以及物理量定义在该网格片所有网格单元上的离散值;还包括所述离散值在所述网格单元中的几何位置。
[0044]其中,所述离散值根据所述几何位置不同,分为多种类型,包括,中心量、结点量、边心量、面心量、散乱量、外表面中心量、外表面结点量、外表面面心量等等。作为本发明的一个实施例,不同物理量对应不同的数据片。
[0045]作为本发明的一个实施例,所述数据片还沿网格片的四周设置影像区,用于存储同一物理量从相邻网格片对应几何位置复制的物理量的离散值。
[0046]作为本发明的一个实施例,所述网格片包括网格单元的总数上限可设置为,设置CPU的缓存(Cache)容量为网格片中数值计算依赖的所有数据片的内存容量的上限,选取网格片单元总数上限值,使之满足所在CPU分配到的所有网格片上的所有物理量的数据容量总和不超过该上限,选取所得结果的最大值作为所述网格片包含网格单元的总数上限。
[0047]作为本发明的一个实施例,所述网格片包括网格单元的总数上限可设置为,选取不同的网格片单元总数上限值,进行数值模拟计算,选取性能最优的上限值作为所述网格片包括网格单元的总数上限。
[0048]作为本发明的一个实施例,所述结构网格上的物理量随着网格片被分布储存于高性能计算机结点间、分布共享储存于高性能计算机结点内CPU间、共享存储于高性能计算机结点内CPU内多处理器核间。
[0049]上述的结构网格可以包括二维网格、三维网格和更高维网格。
[0050]通过本发明实施例的上述方法可以大幅提升结构网格和物理量的存储与访问的数据局部性,支持应用软件面向高性能计算机复杂体系结构展开浮点性能优化,大幅提升计算效率。
[0051]如图2所示为本发明实施例匹配于高性能计算机体系结构的结构网格数据管理方法的具体流程图。
[0052]包括步骤201,根据数值模拟对象确定剖分计算区域的结构网格和所述结构网格上的物理量。
[0053]在本实施例中,结构网格由L层网格构成,第O层网格为最粗层网格,包含离散计算区域的所有最粗网格单元,第I层网格包含最粗层部分网格单元按第I层网格细化率加密后形成的所有网格单元构成。依次类推,第J(0〈J〈L,其中J、L为正整数)层网格包含第J-1层部分网格单元按第J层网格细化率加密后形成的所有网格单元构成,第L-1层网格为最细网格层。
[0054]所述第J层网格细化率指第J-1层网格单元沿各个坐标维度被加密的倍数所构成的一个长度为空间总维数的整数正向量。
[0055]在每层网格,每个网格单元具有惟一的索引(K_1,K_2,…,K_d),K_i表示第1-1个坐标维度的索引,为一个整型数。几何相邻网格单元的索引沿相邻坐标方向的索引值相差1,其他相邻坐标方向的索引值相等。第J层网格单元的索引值是其加密前粗网格层网格单元的索引值与第J层网格细化率的乘积。
[0056]图3a给出了一个二维结构网格实例的示意图,它由3层网格构成,最粗网格层包含20x20个网格单元,左下角网格单元的索引值为(0,0);第I层网格包含20x16个网格单元,它通过加密最粗网格层的10x4个网格单元形成,网格细化率为2x4,左下角网格单元的索引值为(0,0);最细层网格包含16x16个网格单元,它通过加密第I层网格的4x4个网格单元形成,网格细化率为4x4,左下
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1