[发明专利]一种GPU上的基于warp重用与着色分区的强连通图检测方法有效
申请号: | 202010403115.0 | 申请日: | 2020-05-13 |
公开(公告)号: | CN111754383B | 公开(公告)日: | 2023-03-10 |
发明(设计)人: | 侯骏腾;吴广君;王树鹏;王振宇;贾思宇 | 申请(专利权)人: | 中国科学院信息工程研究所 |
主分类号: | G06T1/20 | 分类号: | G06T1/20;G06F9/48;G06F9/50 |
代理公司: | 北京君尚知识产权代理有限公司 11200 | 代理人: | 陈艳 |
地址: | 100093 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 gpu 基于 warp 重用 着色 分区 连通 检测 方法 | ||
本发明提出一种基于GPU加速的优化线程调度与分区的强连通图检测方法,为使用异构系统进行强连通图检测的方法,通过将每个warp分成多个虚拟warp并分配多个顶点任务、使用着色分区替换传统的WCC分区等方法平衡了线程分配、增加了每次迭代产生的强连通图数目,从而达到提升算法运行效率的目的。
技术领域
本发明涉及使用异构系统进行强连通图检测的方法,具体的说是一种GPU上的基于warp重用与着色分区的强连通图检测算法。
背景技术
图数据是数据处理中一类基础的数据结构,它能够很好地表达出数据之间的关联性,因此在生物、化学、人工智能、社交网络等多个领域得到广泛地应用。强连通图(Strongly Connected Components,SCC)是一种基础的图结构,是指有向图中所有顶点两两有向连接的最大子集。虽然强连通图检测是一个很早就开始研究的问题,并且已经有Tarjan算法、Kosaraju算法、Dijkstra算法等优秀的检测方法。但是,这些算法大多是基于深度优先遍历(depth-first search,DFS)的串行算法,其运行时间随着图数据规模的扩大而急剧增加,并且很难并行化。随着通用型的GPU等并行计算设备被广泛应用到高性能计算的应用中,研究人员提出了一些基于GPU的并行强连通图检测算法,这些算法大多基于对中心点的前向遍历与后向遍历所形成区域求交集的方法,并通过分区来增加每次迭代检测的并行性。然而在遍历的过程中,这些算法会为所有未完成检测的顶点中每个顶点分配一个线程或一个warp(包括32个线程的线程组),这些顶点中很多顶点不需要被处理,则分配的线程直接被释放掉,而其他顶点的邻接顶点数目相差很大,导致不同的线程或线程组间严重地负载不均衡。另外,现有的分区方法只是将和其它顶点没有任何连接的顶点分到同一个分区当中,产生的分区数目不是很多。每次迭代检测之后,所有未完成检测的顶点状态全部归零,使得每次检测后的计算结果不能被充分利用。因此,对于当前基于GPU的并行强连通图检测算法中的线程任务分配与分区方法进行优化改进是提升并行强连通图检测算法效率的关键。
发明内容
本发明提出一种基于GPU加速的优化线程调度与分区的强连通图检测方法,通过将每个warp分成多个虚拟warp并分配多个顶点任务、使用着色分区替换传统的WCC分区等方法平衡了线程分配、增加了每次迭代产生的强连通图数目,从而达到提升算法运行效率的目的。
本发明的技术方案如下:
一种GPU上的基于warp重用与着色分区的强连通图检测方法,包括以下步骤:
加载图数据并统一存储格式;
对图数据进行第一类剪枝操作,检测出只由一个顶点组成的强连通图1-SCC;
进行第一类中心点选取操作,使用入度和出度的积最大的顶点做为中心点;
使用warp重用方法从中心点开始并行地前向和后向遍历,得到强连通图和三个分区,其中强连通图为前向和后向均遍历到的顶点与中心点形成的连通图,三个分区为前向遍历到后向未遍历到的顶点,前向未遍历到后向遍历到的顶点,以及前向和后向均未遍历到的顶点所形成的分区;
判断是否需要进行第二类剪枝操作,若需要,则进行第二类剪枝操作,检测出由一个顶点组成的强连通图1-SCC和由两个顶点组成的强连通图2-SCC;
使用着色分区方法对所述三个分区进行进一步分区,得到更多更小的分区;
在所形成的小分区中进行第二类中心点选取操作,选取每个分区中初始颜色值与分区颜色值相同的顶点做为中心点,从中心点开始前向遍历,将遍历到的顶点与中心点组成一个强连通图,未被遍历到的顶点形成新的分区;
进行第三类中心点选取操作,直接在每个分区中随机选取一个顶点做为中心点,从中心点开始并行地前向和后向遍历;
再次进行第一类剪枝操作,并更新强连通图和分区;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院信息工程研究所,未经中国科学院信息工程研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010403115.0/2.html,转载请声明来源钻瓜专利网。