【技术实现步骤摘要】
基于GPU的分布式图处理系统
本专利技术涉及图处理系统领域,特别是涉及一种基于GPU的分布式图处理系统。
技术介绍
今天,大规模的图在生活中越来越常见:更为复杂的道路网络、更为广泛的社交运用、在交叉学科的更多模型的建立,等等。为了这些错综复杂的图中获取必要的信息来进行更好的生产与创造活动,在大规模的图上进行的大规模图分析也越来越重要,并且也在获得越来越广泛的关注。如何面对越来越庞大规模的图、越来越复杂的结构、以及越来越多样化的需求,成为了今天高性能计算研究领域一个值得研究的方向。由于图结构本身的特殊性,用于图分析的图算法在实际执行之时不只会带来很大的计算与数据访问负担,并且极易产生读写、计算负载分配的不平衡。由于庞大的计算需求,人们倾向于利用高性能的计算框架和/或硬件等资源来满足任务发布者对于低响应时间的需求。然而同时由于极不平衡的数据读写与计算负担的发生,在传统方案无法很好地兼顾两者之间的平衡之时,如何更好地发挥分布式系统方案和/或高性能硬件在图分析处理上各自的优势,同时尽可能避开各自固有的弱点,就成为了在该领域进行开发与优化的研究技术人员的共同挑战。
技术实现思路
本专利技术主要解决的技术问题是提供一种基于GPU的分布式图处理系统,是通过在现有的分布式图处理框架下加入对于GPU的整合,并且对合并的系统进行任务调度,数据访问等内部机制的优化,从而实现在图分析应用的数据访问与计算方面都取得较高且稳定的性能表现。为解决上述技术问题,本专利技术采用的一个技术方案是:提供一种基于GPU的分布式图处理系统,其包括:控制模块、主存管理模块、外存管理模块、主机-设备通信接 ...
【技术保护点】
1.一种基于GPU的分布式图处理系统,其特征在于,包括:控制模块、主存管理模块、外存管理模块、主机‑设备通信接口模块、GPU模块,所述控制模块:将需要传输的数据和任务打包并发送给GPU,并对图算法模型与图结构进行评估;负责图数据在各个分布式节点之间的划分以及调度各计算任务的分配比例;用于向主存/外存管理模块提出数据访问的请求,并且对获得的数据执行用户指定的处理任务;根据开销模型给出的评估结果,调度和监督GPU之间的协同工作,并且对每次迭代的执行结果给出反馈;所述主存管理模块:用于读取和更新所述控制模块和所述GPU模块所需的数据,完成GraphX框架模块与系统主存模块之间的交互;所述外存管理模块:用于完成GraphX框架模块与各节点上的外部存储设备之间的交互;所述主机‑设备通信接口模块:用于完成控制模块和GPU模块之间的数据或执行逻辑交互;所述GPU模块:用于生成和判断图算法中每次迭代时产生的更新需求信息和在Spark中传递的信息。
【技术特征摘要】
1.一种基于GPU的分布式图处理系统,其特征在于,包括:控制模块、主存管理模块、外存管理模块、主机-设备通信接口模块、GPU模块,所述控制模块:将需要传输的数据和任务打包并发送给GPU,并对图算法模型与图结构进行评估;负责图数据在各个分布式节点之间的划分以及调度各计算任务的分配比例;用于向主存/外存管理模块提出数据访问的请求,并且对获得的数据执行用户指定的处理任务;根据开销模型给出的评估结果,调度和监督GPU之间的协同工作,并且对每次迭代的执行结果给出反馈;所述主存管理模块:用于读取和更新所述控制模块和所述GPU模块所需的数据,完成GraphX框架模块与系统主存模块之间的交互;所述外存管理模块:用于完成GraphX框架模块与各节点上的外部存储设备之间的交互;所述主机-设备通信接口模块:用于完成控制模块和GPU模块之间的数据或执行逻辑交互;所述GPU模块:用于生成和判断图算法中每次迭代时产生的更新需求信息和在Spark中传递的信息。2.根据权利要求1所述的基于GPU的分布式图处理系统,其特征在于,采用Pergel式的分布式图处理模型来进行图算法的迭代计算。3.根据权利要求1所述的基于GPU的分布式图处理系统,其特征在于,GraphX框架模块架构于Spark系统模块上。4.根据权利要求1所述的基于GPU的分布式图处理系统,其特征在于,所述主机-设备通信接口模块与所述GPU模块之间设置有用于语言转换的JNI接口,所述JNI接口将控制单元模块发送来的图数据与任务转换成GPU模块适用的图数据与任务。5.根据权利要求1所述的基于GPU的分布式图处理系统,其特征在于,所述基于GPU的分布式图处理系统的控制步骤包括:1)接收用户提交的图分析任务请求;2)控制模块依据用户提交的任务请求内容,结合图的数据规模、图的结构来对图数据与任务进行面向GPU模块的划分;2.1)控制模块根据计算量阈值在图中选出若干个核心顶点,并组成用于代价估计的若干个核心顶点集合;2.2)控制模块对各个核心顶点集合及其核心顶点周边的顶点组成的子图区域进行代价估计,其计算公式如下:其中,Ci为第i种类型的基础计算,Aj为第j种类型的数据访问,Mk为第k种类型的系统通信,Count函数得到Ci的数量、Size函数分别得到Aj和Mk的数据量的累积量、T()函数计算在当前系统环境下Ci、Aj、Mk在单位量的数据上进行一次操作所需要的时间;2.3)控制模块根据系统环境中各个节点的算力估计的数值以及负载均衡的方式,对完成代价估计的子图提出图划分方式与任务的全局调度方案,并实施图划分与任务分配;3)主机-设备通信接口模块将控制模块给出的数据划分方案和任务的全局...
【专利技术属性】
技术研发人员:谢希科,邹凯,李琦,
申请(专利权)人:中国科学技术大学苏州研究院,
类型:发明
国别省市:江苏,32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。