[发明专利]一种间断伽辽金法求解欧拉方程的GPU加速方法有效
申请号: | 201910714335.2 | 申请日: | 2019-08-03 |
公开(公告)号: | CN110516316B | 公开(公告)日: | 2022-03-15 |
发明(设计)人: | 徐立;王晗;杨中海;李斌 | 申请(专利权)人: | 电子科技大学 |
主分类号: | G06F30/23 | 分类号: | G06F30/23;G06F119/14 |
代理公司: | 电子科技大学专利中心 51203 | 代理人: | 闫树平 |
地址: | 611731 四川省成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明属于计算流体力学、高性能计算领域,涉及一种间断伽辽金方法(DGM)的GPU并行加速技术,具体为一种间断伽辽金法求解欧拉方程的GPU加速方法。本发明采用四面体网格对求解区域进行剖分,以基函数、高斯积分、数值通量为基础,GPU为主要计算硬件,CUDA为编程模型建立间断伽辽金方法GPU并行框架。通过CUDA并行框架实现了GPU多线程的管理,通过设计的数据结构和线程访问方式来实现高效的内存访问。在解决面积分需要单元间数据交换而不独立的问题时,采用了按照面网格并行、每个面网格的计算线程处理两个单元的方式,既避开了单元不独立的问题,实现了大规模并行,还减少了计算量。 | ||
搜索关键词: | 一种 间断 伽辽金法 求解 方程 gpu 加速 方法 | ||
【主权项】:
1.一种间断伽辽金法求解欧拉方程的GPU加速方法,包括以下几个步骤:/n步骤1、读取计算网格的信息,并将面网格按照边界类型排序;/n步骤2、在CPU端进行几何参数的预计算,并将结果拷贝到GPU显存;/n步骤3、在GPU端完成流场的初始化,并且将时间步初始化为0;初始化时分配与单元数量一致的线程数,每个线程负责初始化单元内的所有场;/n步骤4、判断计算时间步是否达到预定的终止时间步,若达到,结束计算,否则继续;/n步骤5、在GPU端进入时间推进,具体为:依次启动面上场计算核函数、面积分核函数、体积分核函数、以及时间更新核函数。/n步骤6、再次判断当前计算时间步是否达到预定的后处理时间步,若达到,同步GPU线程,并将计算结果拷贝到CPU端,将当前计算得到的流场数据输出;否则不进行任何操作。/n步骤7、时间步自增1,转至步骤4。/n上述步骤中GPU显存不存储原始的网格信息而只存储:计算直接需要的且由原始数据计算得到的数据、网格拓扑关系以及流场数据,使用数组结构体的方式组织并存储在GPU全局内存中,而CPU端仅在预计算时保留网格原始信息和流场数据,在预计算完成后释放,仅保留计算的场数据;对于高斯积分点的基函数值、高斯积分权重、常数质量矩阵三类所有线程都会使用到的常数,存储于GPU的常量内存中。/n所述计算直接需要的且由原始数据计算得到的数据为法向量、体积和面积。/n
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201910714335.2/,转载请声明来源钻瓜专利网。