[发明专利]一种基于多GPU的强连通图检测方法有效
申请号: | 201910371236.9 | 申请日: | 2019-05-06 |
公开(公告)号: | CN110264392B | 公开(公告)日: | 2021-05-04 |
发明(设计)人: | 吴广君;王树鹏;侯骏腾;李斌斌 | 申请(专利权)人: | 中国科学院信息工程研究所 |
主分类号: | G06T1/20 | 分类号: | G06T1/20;G06T1/60 |
代理公司: | 北京君尚知识产权代理有限公司 11200 | 代理人: | 陈艳 |
地址: | 100093 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 gpu 连通 检测 方法 | ||
本发明提出一种基于多GPU的强连通图检测方法,包括以下步骤:加载图数据并统一存储格式;对图数据进行预处理,包括按照分区个数进行图分割并进行分区保存,对相互链接的处于不同分区的顶点进行复制顶点处理;将预处理好的数据存入多个GPU中,以复制顶点为中心进行广度优先遍历并记录复制边信息;将复制边传回CPU,检测强连通图并标记属于同一个强连通图的顶点;将标记的顶点传回上述多个GPU中,进行强连通图检测。
技术领域
本发明涉及使用异构系统进行强连通图检测的方法,具体的说是一种基于多GPU的强连通图检测方法。
背景技术
图数据结构做为一类基础的数据结构,由于能够很好的表达出数据之间的关联性而得到了广泛的应用。随着人工智能、社交网络的发展,对大量图数据进行加速计算成为一个热门领域。而强连通图(Strongly Connected Components,SCC)是一种基础的图结构,如何快速地对图数据进行强连通图检测是很多图计算应用的基础问题,在社交网络分析、计算机辅助和模型计算等领域都有重要的应用。
强连通图检测是一个很早就开始的研究方向。在通用型的GPU被广泛使用之前,研究者普遍使用CPU进行强连通图检测并提出了很多优秀的算法,如Tarjan算法、Kosaraju算法、 Dijkstra算法等。在这些算法当中,由于Tarjan算法只需遍历每个强连通图的边一次就能完成最终的强连通图检测,因此成为了一种经典的串行强连通图检测算法。然而Tarjan算法是一种基于深度优先遍历(depth-first search,DFS)的方法,因此很难对其进行并行化从而无法进一步提高运行速度。为了能够加速强连通图检测,研究人员提出了一些并行的算法。经典的并行算法包括前后向遍历算法(Forward-Backward,FB)和对其进行改进得到的前后向遍历剪枝算法(Forward-Backward-Trim,FB-Trim)。此后,以这两种算法为基础又有很多算法被提出,它们大多都能充分利用GPU等特殊硬件的并行计算能力。利用GPU进行并行强连通图检测算法可以同时调用GPU中的大量线程进行检测,所以在规模较大的图数据上能表现出十几倍的加速效果。但是目前的服务器上一般都会装备多块GPU,或者像NVIDIA Tesla K80 这类显卡,每块显卡上就装备了两个GPU。然而基于GPU的强连通图检测方案都使用单个 GPU进行处理,无法充分利用设备上的所有GPU,或者利用已有的图计算系统进行强连通图检测,这会带来GPU之间大量的数据交互,最终影响算法的执行效率。因此,使用单个GPU 或使用图系统进行强连通图检测的并行方案限制了在大图上进行检测的效率和适用范围。
发明内容
本发明的目的是提出一种基于多GPU的强连通图检测方法,针对于设备上有多个GPU 或图的规模很大的情况进行设计,根据不同阶段的计算需求和不同硬件的特征使用不同的算法在CPU或多个GPU上进行处理,能充分利用多个GPU的并行计算能力,是一种融合了广度优先遍历、Tarjan算法、改进的FB-Trim算法的多GPU异构图处理算法,对于图数据能达到很好的强连通图检测效果。
为实现上述目的,本发明所采用的技术方案是:
一种基于多GPU的强连通图检测方法,包括以下步骤:
加载图数据并统一存储格式;
对图数据进行预处理,包括按照分区个数进行图分割并进行分区保存,对相互链接的处于不同分区的顶点进行复制顶点处理;
将预处理好的数据存入多个GPU中,以复制顶点为中心进行广度优先遍历并记录复制边信息;
将复制边传回CPU,检测强连通图并标记属于同一个强连通图的顶点;
将标记的顶点传回上述多个GPU中,进行强连通图检测。
进一步地,图数据包括的信息有顶点数、边数、每条边的头顶点和尾顶点的编号。
进一步地,将图数据以CSR格式进行统一存储,包括以下步骤:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院信息工程研究所,未经中国科学院信息工程研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910371236.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:训练数据处理方法及设备
- 下一篇:一种信息处理方法、终端和存储介质