CN109002659B - 一种基于超级计算机的流体机械仿真程序优化方法 - Google Patents
一种基于超级计算机的流体机械仿真程序优化方法 Download PDFInfo
- Publication number
- CN109002659B CN109002659B CN201811044172.3A CN201811044172A CN109002659B CN 109002659 B CN109002659 B CN 109002659B CN 201811044172 A CN201811044172 A CN 201811044172A CN 109002659 B CN109002659 B CN 109002659B
- Authority
- CN
- China
- Prior art keywords
- optimization
- data
- core
- program
- simulation program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
本发明公开了一种基于超级计算机的流体机械仿真程序优化方法,针对神威·太湖之光超算体系结构与其编程特点,结合流体机械仿真程序特性,提出了一套系统可行的优化方案,其依次包括了分块众核并行优化、DMA传输优化、数据布局优化、双缓冲优化、SIMD向量化优化、寄存器通信优化。该方法为针对神威·太湖之光超算平台开发、移植或优化流体机械仿真程序的开发人员提供了一种通用的优化方法,实现对神威·太湖之光计算资源的充分利用,提升程序计算性能,缩短仿真花费时间。
Description
技术领域
本发明属于计算流体力学与计算机交叉领域,特别涉及一种基于超级计算机的流体机械仿真程序优化方法。
背景技术
神威·太湖之光超级计算机是由国家并行计算机工程技术研究中心自主研发,现安装在国家超级计算无锡中心的超级计算机,峰值性能为125.4PFlops,从2016年6月20日至2017年11月31日连续5次获得全球超级计算机500强(TOP500)榜单第一名。其基于申威SW26010处理器构建,共包含40960块SW26010处理器,每个处理器包含4个核组,每个核组包含1个MPE(Management Processing Element,简称主核)和64个CPEs(ComputingProcessing Elements,简称从核),从核分布在8×8的阵列中。其中主核上的编译器支持C,C++和Fortran 3种编程语言,而从核上的编译器只支持C与Fortran两种编程语言。编译器的不兼容问题使得传统流体机械仿真程序无法直接在从核上运行,无法有效利用神威太湖之光强大的计算能力。
计算流体力学(Computational Fluid Dynamics,CFD)是一个借助数值计算和计算机科学来求解流体力学的控制方程,模拟客观世界中流体的真实流动,对流体力学问题进行实验分析,介于数学、流体力学和计算机科学之间的交叉学科,在航空、航天、船舶、流体机械等有着重要的应用。作为一个仿真程序,它依据流体流动的基本定律,利用计算机的高速计算能力,刻画流体在空间中的真实流动规律,具有计算密集、控制逻辑复杂、数据量大、大量非线性偏微分方程组求解、仿真花费时间过长等特点。
如何结合神威·太湖之光体系架构与编程特点使流体机械仿真程序充分发挥神威·太湖之光超算平台及其SW26010处理器强大的计算能力一直是高性能研究的主要挑战之一,该优化方法的提出对流体机械仿真程序在国产高性能计算平台高效应用有一定的指导意义。
发明内容
本发明的目的在于提供一种基于超级计算机的流体机械仿真程序优化方法,以解决上述问题。
为实现上述目的,本发明采用以下技术方案:
一种基于超级计算机的流体机械仿真程序优化方法,包括以下步骤:
步骤1,利用超级计算机神威·太湖之光超算平台gprof对流体机械仿真程序算法进行剖分,寻找程序算法中符合神威·太湖之光体系结构加速的计算密集型算法部分,并将该部分算法改写为针对神威·太湖之光编程平台的算法;
步骤2,对完成步骤1的流体机械仿真程序中计算密集型部分进行分块众核并行优化,根据基于空间限制、传输效率限制、映射限制、数据量限制四个条件限制的分块规则,将数据根据跨步读取规则与映射规则分发至MPE从核阵列进行计算;
步骤3,对完成步骤2的分块众核并行优化进行DMA传输优化:依据步骤2中从核所需的数据,使用DMA-intrinsic接口编写DMA传输控制程序;
步骤4,对完成步骤3的程序进行数据布局优化,对流体机械仿真程序核心段程序进行变量依赖关系分析,将数据进行拼接或整合;
步骤5,对完成步骤4的程序进行双缓冲优化,将通信与计算重合;
步骤6,对完成步骤5的程序使用神威·太湖之光的向量化部件进行SIMD向量化优化;
步骤7,对完成步骤6的程序进行寄存器通信优化,同时对程序进行性能分析和代码整理分析,若分析结果低于程序预期性能,或程序经过迭代修改后在设计上有进一步提升的空间,则重复进行步骤1至7,若结果满足预期性能且程序设计,则基于神威·太湖之光体系结构的流体机械仿真程序优化结束。
进一步的,在步骤1中,神威·太湖之光体系结构为基于SW26010处理器构建的超算平台,共包含40960块SW26010处理器,每个处理器包含4个核组,每个核组包含1个MPE和64个CPEs,从核分布在8×8的阵列中;神威·太湖之光体系结构的算法为利用SW26010MPE与CPEs计算能力的流体机械算法;
基于神威·太湖之光编程平台指神威·太湖之光的编程特点:MPE主核的编译器支持C,C++和Fortran3种编程语言,使用时需要引入“athread.h”头文件,CPEs从核上的编译器只支持C与Fortran两种编程语言,使用时需要引入“slave.h”头文件。
进一步的,在步骤2中,分块众核并行优化包括三个部分:
1)基于空间限制、传输效率、映射限制、数据量限制四个条件的分块规则,空间限制指可配置为LDM(Local Data Memory,局部数据存储器)的从核SPM(ScratchPad Memory,便笺式存储器)空间只有64KB,即LDMsize≤60KB;传输效率限制指当传输数据主存地址为128B对界,且传输量为128B倍数的时候达到DMA传输的峰值性能,即在保证主存地址对界的前提下保证Blocksize%128==0;映射限制与数据量限制指每次传输的数据量必须保证一次流体机械计算的全部完成;基于数据量限制的从核分配方法如下所示,避免从核无效的满负荷运行,有效降低系统能耗:
其中,DataBlock表示数据块的总数,core_number表示所需从核数量,core_numberx表示所有可能的数量取值且core_numberx≤64。
分块规则如以下公式表示,其中Totalsize表示所需传递的所有数据,Slave_number表示所有计算核的核心数目,Block表示所需分块的总块数:
2)主存跨步读写规则:跨步的长度为:Stride=Boundarysize×8Byte,其中Stride表示跨步的长度,Boundarysize表示流体机械仿真程序中三维数组中边界数据层数;每次读写的数据量为其中Carrysize表示每次读写的数据量,Valid_Datasize表示数组内部有效数据的大小,Block表示分块的总块数;
3)从核循环展开的映射规则:在每次从主存向LDM传输数据的时候需要将主存地址映射成为访存映射,使用循环展开的分法,使同一时间步内执行连续的数据块,如以下公式所示,其中Bias表示主存地址的偏移量,Blockindex表示当前数据块的索引,Threadindex表示当前计算从核的线程号;
Bias=Blockindex×64+Threadindex。
进一步的,在步骤3中,DMA传输优化使用神威·太湖之光的DMA-intrinsic接口单独设置操作属性、传输模式、传输量、跨步大小的DMA描述符。
进一步的,在步骤4中,数据布局优化包括对核心段程序变量依赖关系的分析,对相同形式的数组拼接或者合并。
进一步的,在步骤5中,双缓冲优化指在从核64KB的SPM中开辟2倍于所传递数据大小的空间用于存放互为缓冲的数据,在通信过程中除了第一轮次的读入与最后一轮次的写出之外,当计算从核核心进行本轮次计算的同时进行上一轮次的读入与下一轮次的写回。
进一步的,在步骤6中,SIMD向量化优化包括数组对界填充、处理不对界数组、扩展变量替换与循环分裂。
进一步的,在步骤7中,寄存器通信优化指使用寄存器通信的汇编命令,利用C语言的内联汇编语言在SW26010处理器的计算核心上通过阵列中同行/同列核心间的通信。
与现有技术相比,本发明有以下技术效果:
本发明其依次包括了分块众核并行优化、DMA传输优化、数据布局优化、双缓冲优化、SIMD向量化优化、寄存器通信优化,该方法为针对神威·太湖之光超算平台开发、移植或优化流体机械仿真程序的开发人员提供了一种通用的优化方法;分块众核并行优化使用DMA-intrinsic接口编写DMA传输控制程序,减少DMA描述符的冗余设置,提高从核DMA传输效率;数据布局优化减少DMA通信次数,提高带宽利用效率,缓解多从核多次发起通信请求所导致的竞争;双缓冲优化,将通信与计算重合,提高从核访存效率;使用神威·太湖之光的向量化部件提高流体机械仿真程序的运行效率;实现对神威·太湖之光计算资源的充分利用,提升程序计算性能,缩短仿真花费时间。
附图说明
图1为本发明的流程图。
具体实施方式
以下结合附图对本发明进一步说明:
本发明提出的一种基于超级计算机的流体机械仿真程序优化方法,针对神威·太湖之光超算平台体系结构及其编程特性,结合流体机械仿真程序特点,提出了一套系统可行的优化方案。
请参阅图1,一种基于神威·太湖之光的流体机械仿真程序优化方法,包括以下步骤:步骤1,利用神威·太湖之光国产超算平台提供的gporf等工具对流体机械仿真程序算法进行剖分,寻找程序算法中适合神威·太湖之光体系结构加速的计算密集型算法部分。然后按照神威·太湖之光编程平台的特点,在MPE主核程序中引入“athread.h”头文件,用C语言编写MPE从核计算程序,同时引入“slave.h”头文件,将该计算密集型算法部分改写为基于神威·太湖之光编程平台的算法;
步骤2,对完成步骤1的流体机械仿真程序中计算密集型部分进行分块众核并行优化,首先根据空间限制、传输效率、映射限制、数据量限制四个条件的分块规则计算每次计算所需传递的数据块Block,空间限制指可配置为LDM(Local Data Memory,局部数据存储器)的从核SPM(ScratchPad Memory,便笺式存储器)空间只有64KB,即LDMsize≤60K;B传输效率限制指当传输数据主存地址为128B对界,且传输量为128B倍数的时候达到DMA传输的峰值性能,即在保证主存地址对界的前提下保证Blocksize%128==0;映射限制与数据量限制指每次传输的数据量必须保证一次流体机械计算的全部完成;基于数据量限制的从核分配方法如下所示,避免从核无效的满负荷运行,有效降低系统能耗:
其中,DataBlock表示数据块的总数,core_number表示所需从核数量,core_numberx表示所有可能的数量取值且core_numberx≤64。
分块规则如一下公式表示,其中Totalsize表示所需传递的所有数据,Slave_number表示所有计算核的核心数目,Block表示所需分块的总块数:
接着,根据主存跨步读写规则算出每次跨步的距离Stride,与每次操作DMA传递的数据量Carrysize:由于在流体机械仿真程序中并行使用了区域分解方法,网格块都存在边界通信的虚拟网格,而计算核函数只需要对网格块的内部数据进行迭代求解,造成输入数据的不连续。但是冗余读入会造成SPM的浪费,多次读入会发起过多请求造成带宽争用,因此采用跨步读取的方式进行访存。跨步的长度为:Stride=Boundarysize×8Byte,其中Boundarysize表示流体机械仿真程序中三维数组中边界数据层数;每次读写的数据量为其中Valid_Datasize表示数组内部有效数据的大小,Block表示分块的总块数。
最后,根据从核循环展开的映射规则将计算量展开在CPEs从核上:在每次从主存向LDM传输数据的时候需要将主存地址映射成为访存映射,使用循环展开的分法,使同一时间步内执行连续的数据块,如以下公式所示,其中Bias表示主存地址的偏移量,Blockindex表示当前数据块的索引,Threadindex表示当前计算从核的线程号。
Bias=Blockindex×64+Threadindex
充分利用神威·太湖之光计算核心强大的计算能力,提升程序计算性能;
步骤3,对完成步骤2的分块众核并行优化方法进行DMA传输优化:依据步骤2中CPEs从核所需的数据,使用神威·太湖之光的DMA-intrinsic接口单独设置操作属性、传输模式、传输量、跨步大小等DMA描述符。减少DMA描述符的冗余设置,提高从核DMA传输效率;
步骤4,对完成步骤3的程序进行数据布局优化,对流体机械仿真程序核心段程序进行变量依赖关系分析,将数据进行拼接或整合,减少DMA通信次数,提高带宽利用效率,缓解多从核多次发起通信请求所导致的竞争。
步骤5,对完成步骤4的程序进行双缓冲优化,在从核64KB的SPM中开辟2倍于所传递数据大小的空间用于存放互为缓冲的数据,在通信过程中除了第一轮次的读入与最后一轮次的写出之外,当计算核心(从核)进行本轮次计算的同时可以同时进行上一轮次的读入与下一轮次的写回。将通信与计算重合,提高从核访存效率。
步骤6,对完成步骤5的程序进行SIMD向量化优化,使用数组对界填充、处理不对界数组、扩展变量替换与循环分裂。使用神威·太湖之光的向量化部件提高流体机械仿真程序的运行效率。
步骤7,对完成步骤6的程序进行寄存器通信优化,使用寄存器通信的汇编命令,利用C语言的内联汇编语言在SW26010处理器的计算核心上通过阵列中同行/同列核心间的通信,减少了从核的冗余访存操作。
完成以上步骤后对程序进行性能分析和代码整理分析,若分析结果低于程序预期性能,或程序经过迭代修改后在设计上有进一步可提升的空间,则重复进行步骤1-7,若结果满足预期性能且程序设计,则基于神威·太湖之光体系结构的流体机械仿真程序优化结束。
Claims (7)
1.一种基于超级计算机的流体机械仿真程序优化方法,其特征在于,包括以下步骤:
步骤1,利用超级计算机神威·太湖之光超算平台gprof对流体机械仿真程序算法进行剖分,寻找程序算法中符合神威·太湖之光体系结构加速的计算密集型算法部分,并将该部分算法改写为针对神威·太湖之光编程平台的算法;
步骤2,对完成步骤1的流体机械仿真程序中计算密集型部分进行分块众核并行优化,根据基于空间限制、传输效率限制、映射限制、数据量限制四个条件限制的分块规则,将数据根据跨步读取规则与映射规则分发至SW26010处理器从核进行加速计算;
步骤3,对完成步骤2分块众核并行优化的流体机械仿真程序进行DMA传输优化:依据步骤2中从核所需的数据,使用DMA-intrinsic接口编写DMA传输控制程序;
步骤4,对完成步骤3的程序进行数据布局优化,对流体机械仿真程序的核心段程序进行变量依赖关系分析,将数据进行拼接或整合;
步骤5,对完成步骤4的程序进行双缓冲优化,将通信与计算重叠;
步骤6,对完成步骤5的程序使用神威·太湖之光的向量化部件进行SIMD向量化优化;
步骤7,对完成步骤6的程序进行寄存器通信优化,同时对程序进行性能分析和代码整理分析,若分析结果低于程序预期性能,或发现程序经过迭代修改后在设计上有进一步提升的空间,则重复进行步骤1-7,若结果满足预期性能,则基于神威·太湖之光体系结构的流体机械仿真程序优化结束;
在步骤2中,分块众核并行优化包括三个部分:
1)基于空间限制、传输效率、映射限制、数据量限制四个条件的分块规则,空间限制指可配置为局部数据存储器LDM的从核便笺式存储器SPM空间只有64KB,即LDMsize≤60KB;传输效率限制指当传输数据主存地址为128B对界,且传输量为128B倍数的时候达到DMA传输的峰值性能,即在保证主存地址对界的前提下保证Blocksize%128==0;映射限制与数据量限制指每次传输的数据量必须保证一次流体机械计算的全部完成;基于数据量限制的从核分配方法如下所示,避免从核无效的满负荷运行,有效降低系统能耗:
其中,DataBlock表示数据块的总数,core_number表示所需从核数量,core_numberx表示所有可能的数量取值且core_numberx≤64;
分块规则如以下公式表示,其中Totalsize表示所需传递的所有数据,core_number表示所有计算核的核心数目,Block表示所需分块的总块数:
2)主存跨步读写规则:跨步的长度为:Stride=Boundarysize×8Byte,其中Stride表示跨步的长度,Boundarysize表示流体机械仿真程序中三维数组中边界数据层数;每次读写的数据量为其中Carrysize表示每次读写的数据量,Valid_Datasize表示数组内部有效数据的大小,Block表示分块的总块数;
3)从核循环展开的映射规则:在每次从主存向LDM传输数据的时候需要将主存地址映射成为访存映射,使用循环展开的分法,使同一时间步内执行连续的数据块,如以下公式所示,其中Bias表示主存地址的偏移量,Blockindex表示当前数据块的索引,Threadindex表示当前计算从核的线程号;
Bias=Blockindex×64+Threadindex。
2.根据权利要求1所述的一种基于超级计算机的流体机械仿真程序优化方法,其特征在于,在步骤1中,神威·太湖之光体系结构为基于SW26010处理器构建的超算平台,共包含40960块SW26010处理器,每个处理器包含4个核组,每个核组包含1个MPE,简称主核和64个CPEs,简称从核,从核分布在8×8的阵列中;计算密集型算法部分是指计算任务之间没有直接的相互依赖关系,适合利用大规模并行方式进行处理的算法部分;针对神威·太湖之光编程平台的算法指基于神威·太湖之光编程环境的,可以充分利用SW26010 MPE与CPEs计算能力的流体机械算法;
神威·太湖之光编程平台指神威·太湖之光的编程特点:MPE主核的编译器支持C,C++和Fortran 3种编程语言,使用时需要引入“athread.h”头文件,CPEs从核上的编译器只支持C与Fortran两种编程语言,使用时需要引入“slave.h”头文件。
3.根据权利要求1所述的一种基于超级计算机的流体机械仿真程序优化方法,其特征在于,在步骤3中,DMA传输优化使用神威·太湖之光的DMA-intrinsic接口单独设置操作属性、传输模式、传输量、跨步大小的DMA描述符。
4.根据权利要求1所述的一种基于超级计算机的流体机械仿真程序优化方法,其特征在于,在步骤4中,数据布局优化包括对核心段程序变量依赖关系的分析,对相同形式的数组拼接或者合并。
5.根据权利要求1所述的一种基于超级计算机的流体机械仿真程序优化方法,其特征在于,在步骤5中,双缓冲优化指在从核64KB的SPM中开辟2倍于所传递数据大小的空间用于存放互为缓冲的数据,在通信过程中除了第一轮次的读入与最后一轮次的写出之外,当计算从核核心进行本轮次计算的同时进行上一轮次的读入与下一轮次的写回。
6.根据权利要求1所述的一种基于超级计算机的流体机械仿真程序优化方法,其特征在于,在步骤6中,SIMD向量化优化包括数组对界填充、处理不对界数组、扩展变量替换与循环分裂。
7.根据权利要求1所述的一种基于超级计算机的流体机械仿真程序优化方法,其特征在于,在步骤7中,寄存器通信优化指使用寄存器通信的汇编命令,利用C语言的内联汇编语言在SW26010处理器的计算核心上通过阵列中同行/同列核心间的通信。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811044172.3A CN109002659B (zh) | 2018-09-07 | 2018-09-07 | 一种基于超级计算机的流体机械仿真程序优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811044172.3A CN109002659B (zh) | 2018-09-07 | 2018-09-07 | 一种基于超级计算机的流体机械仿真程序优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109002659A CN109002659A (zh) | 2018-12-14 |
CN109002659B true CN109002659B (zh) | 2020-08-28 |
Family
ID=64591373
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811044172.3A Active CN109002659B (zh) | 2018-09-07 | 2018-09-07 | 一种基于超级计算机的流体机械仿真程序优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109002659B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109739678A (zh) * | 2019-01-10 | 2019-05-10 | 国家超级计算无锡中心 | 基于寄存器间通信的减少冗余读取方法 |
CN110673877B (zh) * | 2019-08-22 | 2020-09-01 | 成都信息工程大学 | 一种基于手动向量化的并行计算方法 |
CN111444134A (zh) * | 2020-03-24 | 2020-07-24 | 山东大学 | 分子动力学模拟软件的并行pme的加速优化方法及系统 |
CN112306678B (zh) * | 2020-10-22 | 2022-10-04 | 中国海洋大学 | 一种基于异构众核处理器的算法并行处理方法及系统 |
CN113835984B (zh) * | 2021-09-27 | 2023-08-08 | 山东省计算中心(国家超级计算济南中心) | 一种基于国产超算微架构的众核应用性能评估方法 |
CN114138381B (zh) * | 2022-01-30 | 2022-06-03 | 北京卡普拉科技有限公司 | 一种数值程序的处理系统 |
CN114970301B (zh) * | 2022-07-29 | 2022-10-21 | 中国海洋大学 | 一种基于国产众核架构的分子动力学计算方法 |
CN115952393B (zh) * | 2023-03-13 | 2023-08-18 | 山东大学 | 基于超级计算机的多头注意力机制的前向计算方法及系统 |
CN117472448B (zh) * | 2023-12-28 | 2024-03-26 | 山东省计算中心(国家超级计算济南中心) | 一种申威众核处理器从核簇加速并行方法、设备及介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2740978A1 (en) * | 2008-10-17 | 2010-04-22 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | Method for the deterministic execution and synchronization of an information processing system comprising a plurality of processing cores executing system tasks |
US9081501B2 (en) * | 2010-01-08 | 2015-07-14 | International Business Machines Corporation | Multi-petascale highly efficient parallel supercomputer |
CN106020773A (zh) * | 2016-05-13 | 2016-10-12 | 中国人民解放军信息工程大学 | 异构众核架构中有限差分算法的优化方法 |
CN106598731A (zh) * | 2016-12-01 | 2017-04-26 | 上海交通大学 | 基于异构多核架构的运行时系统及其控制方法 |
CN106775594A (zh) * | 2017-01-13 | 2017-05-31 | 中国科学院软件研究所 | 一种基于国产申威26010处理器的稀疏矩阵向量乘异构众核实现方法 |
CN107168683A (zh) * | 2017-05-05 | 2017-09-15 | 中国科学院软件研究所 | 国产申威26010众核cpu上gemm稠密矩阵乘高性能实现方法 |
CN107273094A (zh) * | 2017-05-18 | 2017-10-20 | 中国科学院软件研究所 | 一种适应于“神威·太湖之光”上hpcg优化的数据结构及其高效实现方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106095583B (zh) * | 2016-06-20 | 2018-04-17 | 国家海洋局第一海洋研究所 | 基于新神威处理器的主从核协同计算编程框架 |
CN107451097B (zh) * | 2017-08-04 | 2020-02-11 | 中国科学院软件研究所 | 国产申威26010众核处理器上多维fft的高性能实现方法 |
-
2018
- 2018-09-07 CN CN201811044172.3A patent/CN109002659B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2740978A1 (en) * | 2008-10-17 | 2010-04-22 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | Method for the deterministic execution and synchronization of an information processing system comprising a plurality of processing cores executing system tasks |
US9081501B2 (en) * | 2010-01-08 | 2015-07-14 | International Business Machines Corporation | Multi-petascale highly efficient parallel supercomputer |
CN106020773A (zh) * | 2016-05-13 | 2016-10-12 | 中国人民解放军信息工程大学 | 异构众核架构中有限差分算法的优化方法 |
CN106598731A (zh) * | 2016-12-01 | 2017-04-26 | 上海交通大学 | 基于异构多核架构的运行时系统及其控制方法 |
CN106775594A (zh) * | 2017-01-13 | 2017-05-31 | 中国科学院软件研究所 | 一种基于国产申威26010处理器的稀疏矩阵向量乘异构众核实现方法 |
CN107168683A (zh) * | 2017-05-05 | 2017-09-15 | 中国科学院软件研究所 | 国产申威26010众核cpu上gemm稠密矩阵乘高性能实现方法 |
CN107273094A (zh) * | 2017-05-18 | 2017-10-20 | 中国科学院软件研究所 | 一种适应于“神威·太湖之光”上hpcg优化的数据结构及其高效实现方法 |
Non-Patent Citations (2)
Title |
---|
Sunway Taihu Light supercomputer makes its appearance;Jack Dongarra;《RESEARCH HIGHLIGHTS》;20160915;第265-266页 * |
神威太湖之光上OpenFOAM的移植与优化;孟德龙 等;《计算机科学》;20171031;第64-70页 * |
Also Published As
Publication number | Publication date |
---|---|
CN109002659A (zh) | 2018-12-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109002659B (zh) | 一种基于超级计算机的流体机械仿真程序优化方法 | |
CN106940815B (zh) | 一种可编程卷积神经网络协处理器ip核 | |
CN103617150B (zh) | 一种基于gpu的大规模电力系统潮流并行计算的系统及其方法 | |
CN104375805A (zh) | 采用多核处理器仿真可重构处理器并行计算过程的方法 | |
CN114970294B (zh) | 基于神威架构的三维应变仿真pcg并行优化方法及系统 | |
CN112580792B (zh) | 一种神经网络多核张量处理器 | |
CN103226487A (zh) | 面向异构众核多级存储结构的数据分布与局部性优化方法 | |
CN112446471B (zh) | 基于异构众核处理器的卷积加速方法 | |
Zhang et al. | An adaptive breadth-first search algorithm on integrated architectures | |
CN112130901A (zh) | 基于risc-v的协处理器、数据处理方法及存储介质 | |
Momose et al. | The brand-new vector supercomputer, SX-ACE | |
CN101021831A (zh) | 面向科学计算的64位流处理器芯片体系结构 | |
Liu et al. | Scratchpad memory architectures and allocation algorithms for hard real-time multicore processors | |
CN109522127B (zh) | 一种基于gpu的流体机械仿真程序异构加速方法 | |
Cardellini et al. | Heterogeneous sparse matrix computations on hybrid GPU/CPU platforms | |
Van Lunteren et al. | Coherently attached programmable near-memory acceleration platform and its application to stencil processing | |
Xu et al. | Balancing cpu-gpu collaborative high-order cfd simulations on the tianhe-1a supercomputer | |
Shang et al. | LACS: A high-computational-efficiency accelerator for CNNs | |
Chen et al. | Performance evaluation of convolutional neural network on Tianhe-3 prototype | |
Lin et al. | swFLOW: A dataflow deep learning framework on sunway taihulight supercomputer | |
CN111125950A (zh) | 一种核反应堆热工水力模拟软件cfd并行处理方法 | |
US20230289398A1 (en) | Efficient Matrix Multiply and Add with a Group of Warps | |
CN115952393A (zh) | 基于超级计算机的多头注意力机制的前向计算方法及系统 | |
Deng et al. | CPU/GPU computing for an implicit multi-block compressible Navier-Stokes solver on heterogeneous platform | |
Cao et al. | MZ Core: An Enhanced Matrix Acceleration Engine for HPC/AI Applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |