[发明专利]一种基于CPU+GPU异构平台协同处理数据的方法有效
申请号: | 202210144694.0 | 申请日: | 2022-02-17 |
公开(公告)号: | CN114201287B | 公开(公告)日: | 2022-05-03 |
发明(设计)人: | 王宇杰;范长伟 | 申请(专利权)人: | 湖南迈曦软件有限责任公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50 |
代理公司: | 长沙惟盛赟鼎知识产权代理事务所(普通合伙) 43228 | 代理人: | 黄敏华 |
地址: | 410006 湖南省长沙市岳麓*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 cpu gpu 平台 协同 处理 数据 方法 | ||
本发明涉及一种基于CPU+GPU异构平台协同处理数据的方法,具体包括如下步骤:S1:利用稀疏矩阵图案形成的消去树结构将计算任务分解为多个独立的分支计算任务,用消去树的分支划分成的多个子树表示;S2:评估多个设备的子树分解计算性能,所述设备包括CPU和GPU,建立子树与设备间的分配关系;S3:基于设备对相应的子树进行计算;S4:子树中包括根部子树,则基于设备对相应的根部子树进行计算。本发明利用CPU和GPU之间的“协同计算、彼此加速”,从而突破CPU发展的瓶颈,有效解决能耗等问题。
技术领域
本发明涉及异构平台数据处理领域,尤其涉及一种基于CPU+GPU异构平台协同处理数据的方法。
背景技术
异构计算被视为计算机处理器继单核、多核之后的第三个时代,它将实现使用不同类型指令集和体系架构的计算单元。尤其是在大规模稀疏线性系统求解问题中,正在成为许多工程问题中的关键计算步骤,如隐式有限元仿真分析、电力网络仿真、计算流体力学、天气预测等。以有限元仿真分析为例,稀疏线性方程组求解时间经常占据了整个计算时间的80%,所以线性系统的求解效率直接决定了整个有限元分析的计算性能。并且,随着工业水平的快速发展,有限元仿真计算规模也越来越大,相应的计算量也呈爆发式增长,因此高效的线性求解器对提高仿真计算效率缩短仿真计算时间进而加速工业产品迭代进程至关重要。
现在与本发明较为接近的MKL Pardiso稀疏线性方程求解器,包含了多种类型方程的求解算法,并实现基于共享内存多线程并行计算方法,但其仅立足于CPU并行加速计算,并没有充分利用GPU设备的计算能力来实现CPU/GPU异构并行计算方法,这难以满足当前大规模稀疏线性系统的快速求解需求,容易造成设备闲置,浪费能耗。
发明内容
本发明的目的是提供利用CPU和GPU之间的“协同计算、彼此加速”,从而突破CPU发展的瓶颈,有效解决能耗等问题。
为达到上述目的而采用了一种基于CPU+GPU异构平台协同处理数据的方法,其具体包括如下步骤:
S1:利用稀疏矩阵图案形成的消去树结构将计算任务分解为多个独立的分支计算任务,用消去树的分支划分成的多个子树表示;
S2:评估多个设备的子树分解计算性能,所述设备包括CPU和GPU,建立子树与设备间的分配关系;
S3:基于设备对相应的子树进行计算;
S4:子树中包括根部子树,则基于设备对相应的根部子树进行计算;
作为本发明基于CPU+GPU异构平台协同处理数据的方法进一步的改进,S2.1中:使用不同尺寸的子树作为基准来评估CPU和GPU的实际每秒浮点计算次数flops,根据评估结果生成系数来对理论
式中c是时钟频率,np是处理器数量,d表示每个周期双精度指令数;
S2.2:将代表分支计算任务的子树分配给相应的设备。
作为本发明基于CPU+GPU异构平台协同处理数据的方法进一步的改进,S2.2中:
使用贪心策略实现分支计算任务与设备间的映射;
根据浮点操作数(flop)对子树进行降序排序,然后每次都把分支计算任务分配给当前工作最少的设备。
作为本发明基于CPU+GPU异构平台协同处理数据的方法进一步的改进,
S2.2中:
建立一个零一规划数学模型;
(2)
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于湖南迈曦软件有限责任公司,未经湖南迈曦软件有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210144694.0/2.html,转载请声明来源钻瓜专利网。