CN109741421A - 一种基于gpu的动态图着色方法 - Google Patents
一种基于gpu的动态图着色方法 Download PDFInfo
- Publication number
- CN109741421A CN109741421A CN201910062804.7A CN201910062804A CN109741421A CN 109741421 A CN109741421 A CN 109741421A CN 201910062804 A CN201910062804 A CN 201910062804A CN 109741421 A CN109741421 A CN 109741421A
- Authority
- CN
- China
- Prior art keywords
- node
- gpu
- subregion
- array
- color
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Image Generation (AREA)
Abstract
本发明提出一种基于GPU的动态图着色方法,步骤为:将原始无向图转化成定向图;批量进行删除、插入操作进行后批量合并更新定向图;用压缩稀疏行CSR方式存储定向图的外邻信息,压缩稀疏列CSC方式存储定向图的内邻信息,并将外邻信息与内邻信息分别传输到GPU全局内存上;判断队列是否为空或低于阈值,若否,则利用贪婪着色方法对待更新结点构成的子图进行分区,把分区结果传输至GPU端;若是,则交由CPU端处理;根据分区结果并行地对每个区内的结点进行RC‑Hybrid着色;本发明方法可以充分利用GPU并行的处理能力、对待结点进行混合分块设计提高了并发性并保证着色结果的正确性与一致性。
Description
技术领域
本发明属于大图数据处理领域,尤其涉及一种基于GPU的动态图着色方法。
背景技术
图着色问题是图论中的一个经典问题。图着色的现实意义是为具有某种特定关系的两个事物标记不同的颜色,在图中则表示为任意具有公共边的结点都具有不同的颜色。图着色是许多图应用中的重要组成部分,并且已被广泛用于图分割和计算调度应用中。许多图形应用程序的第一步就是通过图形着色来获得用于后续并行计算的独立顶点集合。图着色问题同时还是一个重要的组合优化问题,广泛存在于管理科学、计算机科学、分子物理学、生物学等各个领域。因此,探究图着色问题对解决各种实际问题有着重要意义。
目前在动态图下图着色方法大致可以有两种RC_Local与RC_Orient。RC_Local方法可以以增量形式实现动态图着色,无需在图动态更新时,重复进行整个图的着色计算,可以得到较好的着色效率,但该方法是从局部考虑结点的颜色变化的,这会存在两个缺点:一是着色质量较差,即着色结果会包括更多的颜色;二是着色结果不一致性,对于同样的一批更新,当图的更新顺序发生变化时,会得到不同的着色结果。而RC_Orient通过定义有向图的方法,从全局角度实现了动态图的着色更新,有效的解决了RC_Local的两个缺点,但RC_Orient的串行化执行使着色效率不稳定,收敛速度较慢。不论是RC-Local还是RC-Orient都没有兼顾着色质量和着色速度,本专利这种先分区再利用GPU并行计算性能的方法可以在保证正确性和着色质量的前提下提高着色速度,通常可以较容易的适用于动态图着色的计算中。
现实世界的很多图形是高度动态变化的,图着色的静态处理已经无法完全满足实际应用中的需要,近年来,动态图着色可应用的场景越来越广泛。图着色问题是图论中一个经典的NP-完全问题,即多项式复杂程度的非确定性问题。所有的图着色问题均可以等价于图顶点着色问题来解决,求解图顶点着色问题的算法主要有精确算法和近似算法两种类型。完全算法是基于严格的数学方法搜索问题的整个解空间,求解问题的算法时间复杂度比较大,在问题规模比较大时很难在一个满意的时间内求出结果,因此完全算法常用来求解问题规模比较小的图的着色问题。常用的完全算法有穷举法、回溯法等。
通常认为动态图着色是给定一个图G,当图G随着边、点的插入或删除而发生更新时,动态计算图的近似最优着色。在动态图模型下,动态图着色问题在现实中也有着非常广泛的应用,例如利用图着色设计频谱分配方案,提高频谱利用效率;结合图着色技术来计算面向对象程序的动态切片;将动态约束匹配融入基于顶点的图着色方法求解大学课程时间表问题等,由此动态图着色问题将带来新的挑战。
现有的图着色方法在动态图下不能很好的解决问题主要是由于三点原因。第一点原因是目前大部分的图着色方法都是基于静态图模型着色的。在频繁更新的动态图中,当对图进行更新(结点的增删或边的插入与删除)时,原始图的着色结果很有可能已经不满足着色算法的要求,这就引出了动态图着色问题。解决该问题最朴素的方法是对更新后的图进行重新着色,很显然,相对于更新,重着色的时间代价过大,我们需要提出更简便的方法。第二点原因是由于图更新是一个无限的、不断接收的序列,而目前基于图着色的方法是根据待处理队列的顺序依次做计算,因此并行地计算频繁的更新,影响着色的效率;第三点原因传统的RC_Local是通过访问结点的两层邻居来减少整个图更新的颜色的增加,时间复杂度为O(dmax2),拥有高效率和良好的着色质量,然而该方法还存在着一定的缺点,主要有两方面:(1)在插入或删除边时,只考虑了结点的邻居,即局部颜色状态,没有从全局角度(整个图)进行考虑,在降低色数方面还有提高的可能;(2)着色结果的不一致性。对于同样的批量更新,如果边的插入或删除顺序不同,得到的着色结果是不同的,算法缺乏健壮性;(3)不适用于并行性计算。结点的重着色过程中,在对结点邻居的访问中,除了读操作,还有写操作,若两个线程的结点存在相同的邻居,就有可能出现对同一个邻居的冲突访问问题,即两个线程对同一个邻居结点进行更改,顺序不同,结果不同,正确性得不到保障。虽然由于图的稀疏性,在动态图着色中需要的颜色数被证明并不会这么大,但是对于在目前的效率较高基于结点饱和度的着色更新,或者是基于全局结构的着色更新算法来说如何能够快速处理图更新和保证图着色质量也将是一个非常大的挑战。总的来说,目前基于动态图着色的方法无法快速高质量的解决动态图上的频繁更新,这就迫切的需要用新的方法与技术来迎接动态图着色问题的挑战。
发明内容
为了克服现有技术的不足,本发明提供了一种基于GPU的动态图着色方法。具体包括以下步骤:
步骤1:将原始无向图G有向化,转化成定向图G*;
首先为每个结点的邻居结点定义顺序,将度数大于该结点的邻居置于它的左侧,称为内邻,度数小于该结点的邻居置于它的右侧,称为外邻,度数相同时,结点id小的置于左侧。定义符号‘≮’表示该关系,定义为,内邻结点≮该结点≮外邻结点,内邻结点用集合nbr-()表示,外邻结点用nbr+()表示。
步骤2:将多次删除、插入操作进行批量合并后更新定向图G*。图的更新有四种方式:增加结点、删除结点、增加边、删除边,把增删结点问题转化为增删边的问题进行处理。对批量的更新进行整合;
步骤3:利用压缩稀疏行CSR方式存储定向图的外邻信息,压缩稀疏列CSC方式存储定向图的内邻信息,并将外邻信息与内邻信息分别传输到GPU全局内存上;
步骤4:判断队列是否低于阈值,若否,则利用贪婪着色方法对待更新结点构成的子图进行分区,把分区结果传输至GPU端;若是,则交由CPU端处理;
步骤4.1:利用贪婪着色方法在CPU端对待处理队列中的结点进行分区,划分为N个分块,前(N-1)个分区内部的结点互不相邻,第N个分区内允许存在相邻的结点;
步骤4.2:将步骤4.1中的前(N-1)个分区结点分别传输到GPU全局内存上,第N个分区保存在CPU端。
步骤5:根据步骤4的分区结果并行地对每个区内的结点进行RC-Hybrid(ReColor-Hybrid)着色。
步骤5.1:GPU每个线程处理当前分区的一个结点,设立长度为该结点入度值加一的数组,利用CSC矩阵收集对应结点的内邻颜色,如果颜色不大于当前结点的入度值,则把颜色值在数组中的对应位置置为1。
步骤5.2:根据步骤5.1中的数组,从数组的起始位置开始递增地找第一个为0的位置,该位置所对应的数组下标即为当前结点所需分配的颜色。
步骤5.3:设立一个长度为待处理结点数量的数组作为下轮待处理结点队列,GPU线程利用CSR矩阵把当前结点所有外邻在数组中的对应位置置为1,当GPU上的前(N-1)个分区处理完成后,同时作为多个结点外邻的某一结点只需下次被重新着色一次,达到去重的目的,再把这个数组最后传回CPU,和CPU端第N个分区合并,作为下轮待更新队列,重复步骤4,直到队列低于阈值后,交由CPU端处理。
有益技术效果:
1)传统的图着色解决方案都是基于静态图的,近年来逐渐出现了对动态图着色问题的增量处理方法,而本专利第一次提出了基于GPU的动态图着色问题,并且针对这个问题给出了一定的解决方案,通过对图的动态更新进行批量处理来充分利用GPU并行处理能力;
2)为适应GPU的高并发性且保证着色结果的正确性,应用了混合分区思想,在CPU端对待处理结点进行混合分块设计,在GPU端实现块内并行、块间串行的高效计算。
3)设计基于CPU-GPU异构的动态着色方法,应用全局思想在动态图着色计算的同时保证着色结果的一致性,并从并行性设计、内核融合、数据放置等方面对算法进行优化;
附图说明
图1为本发明实施例的图着色示意图;
图2为本发明实施例的无向图(a)、无向图邻接矩阵(b)及无向图CSR存储格式(c);
图3为本发明实施例的数据传输示意图;
图4为本发明实施例的GPU处理前的数据准备示意图。
图5为本发明实施例的(a)原无向图;(b)转化后的定向图;
图6为本发明实施例的批量处理示意图;
图7为本发明实施例的CSR存储结构;
图8为本发明实施例的GPU端分区间串行、分区内并行示意图;
图9为本发明实施例的异构动态图着色流程图;
图10为本发明实施例的顶点重着色和向外邻传播;
图11为本发明实施例的队列未分区前的串行化执行过程图;
图中Thread为线程,P1-Pn-1为分区,v0-v11为图形顶点数量;
具体实施方式
下面结合附图和具体实施实例对发明做进一步说明:
如图1所示,为利用本发明方法的着色示意图;
步骤1:首先为每个结点的邻居结点定义顺序,将度数大于该结点的邻居置于它的左侧,称为内邻,度数小于该结点的邻居置于它的右侧,称为外邻,度数相同时,结点id小的置于左侧。定义符号‘≮’表示该关系,定义为,内邻结点≮该结点≮外邻结点,内邻结点用集合nbr-()表示,外邻结点用nbr+(),如图4中的预处理过程与如图5所示为原始无向图G有向化,转化成定向图G*。
步骤2:如图4中批量更新过程和图6所示,其中qx(x=1、2、3...)代表更新操作,△t为自定义长度的一段时间,将一系列删除、插入操作进行批量合并后更新定向图G*。图的更新有四种方式:增加结点、删除结点、增加边、删除边,把增删结点问题转化为增删边的问题进行处理。对图的更新进行批量处理时,可以根据图的不同更新情况设置不同的限定阈值的标志,如果图的更新较频繁、更新量较大,在1s内可能有几千或是几万条边的更新,此时可以将时间设置为批量处理的划分标志,若图的更新较缓慢、更新量较小,此时为了充分利用GPU的计算能力,可以将更新数量作为批量处理的控制标志。基于GPU的动态图着色,优势是利用GPU强大的计算能力,所以我们把研究重点放在更新较频繁、更新量较大的动态图上。批量处理的另一个优势是可以对批量的更新进行整合,会减少重复性更新,也可以避免不必要更新,比如第i个更新是插入<u,v>,第j个更新是删除<u,v>,经过批量处理的整合后无需处理<u,v>边。
步骤3:如图2所示,本发明选择压缩稀疏行CSR方式存储定向图的外邻信息,压缩稀疏列CSC方式存储定向图的内邻信息,并分别传输到GPU全局内存上。
利用CSR方式对图进行存储既可以满足良好的空间占用率,又便于着色计算时对邻居结点的访问。该存储格式将原始矩阵转化为三个数组,如图2(c)所示,第一个val数组,数组中元素个数为储存定向图的矩阵中非零元素的个数(用m表示),用来保存矩阵A的非零元素。第二个col_ind数组,数组中元素个数为矩阵A的非零元素的个数(仍为m),保存val数组中元素的列索引。第三个row_ptr数组,数组中元素个数为矩阵A的行数,表示为(n+1),保存矩阵A的每行第一个非零元素在val中的索引,该存储格式可以节省大量空间,只需要存储(2m+n+1)个存储单元,在稀疏图中可以普遍达到较好的压缩率。对于结点邻居的访问方式,以图2的无向图为例,图2(b)为其邻接矩阵,转化为压缩存储行(CSR)的格式如图2(c)所示。若要找到结点2的邻居结点,row_ptr[2]<=k<row_ptr[3]-1,k为2结点的邻居在col_ind[]中的位置,根据图2(c)可知5<=k<7,col_ind[k]={0,4},即2结点的邻居为0和4结点。
步骤4:如图9异构动态图着色流程图所示,判断队列是否为空或低于阈值,若否,则利用贪婪着色方法对待更新结点构成的子图进行分区,把分区结果传输至GPU端;若是,则交由CPU端处理,处理过程包括两个部分:
步骤4.1:在CPU端实现对结点的分区设计,假设定义将q队列中的结点划分为N个分块,那么前(N-1)个分块,每个分区内部的结点互不相邻,整个分区可以在GPU上并行处理不发生冲突,第N个分区内允许存在相邻的结点。在大多数图中,80%的结点需要20%的着色数量,剩余的20%结点需要80%的着色数量。基于这个理论,我们可以设计令前(N-1)个分区拥有大量可以并行的结点,最后一个包含相邻结点的分区通过顺序执行或其他方法进行计算。基于贪婪思想的混合分区方法的设计思路如下:定义N个分区,第一步,将q队列中的结点按照度的大小递减排序,第二步,将第一个结点放入第一个分区,按照排序顺序,依次遍历结点,将与分区内结点不相邻的队列中的结点加入该分区,第三步,重复第二步操作,直至前(N-1)个分区结束,最后将剩余q队列中的结点放入第N个分区。基于贪婪思想的分区方法的时间复杂度为O(n2),由于我们是对q队列分区,相当于是对于子图分区,贪婪算法在实现上更有优势,并且可以保证尽可能多的结点落在前面的分区,增强并行性,因此本专利采用基于贪婪的混合分区方法。
首先将所有结点颜色初始化为0,定义数组flag,用来为每个结点的邻居结点的颜色做标记,便于计算每个结点不被允许着的最小颜色。算法详细描述了顺序贪婪算法的过程,首先循环处理每个结点(line 1),对于每个结点v,遍历其邻居(line 2),为flag中的v的邻居颜色做标记,也就是在flag中的邻居结点的颜色所在位置赋值v,表示v结点不可以被着以这个颜色(line 3),之后读取flag数组,为v结点选择与邻居结点的颜色不同的最小颜色进行着色(line 5-6)。顺序执行方法需要调用双重循环,外循环是对于n个结点的处理,内循环是对每个结点的邻居的处理,因此所需时间复杂度为O(n2)。
贪婪算法的具体过程如下:
步骤4.2:如图3中的step3,步骤4-1中的前(N-1)个分区结点分别传输到GPU全局内存上,第N个分区保存在CPU端。
步骤5:根据分区结果并行地对每个区内的结点进行RC-Hybrid着色。计算方法包括三个部分:
步骤5.1:如图8所示GPU每个线程处理当前分区的一个结点u,设立长度为该结点入度值加一的数组,利用CSC矩阵收集对应结点的内邻颜色,如果颜色不大于当前结点u的度值,则把颜色值在数组中的对应位置置为1。
步骤5.2:根据步骤5.1中所述的数组,从数组起始位置开始递增地找第一个值为0的位置,该位置所对应的数组下标即为当前结点所需分配的颜色。
步骤5.3设立一个长度为顶点数量的数组Node作为下轮待处理结点队列,如图7所示GPU线程利用CSR矩阵把当前结点u所有外邻v在数组Node中的对应位置Node[v]置为1,如图10所示,当GPU上的前(N-1)个分区处理完成后,作为多个结点外邻的某一结点只需下次被重新着色一次,达到去重的目的,再把这个Node数组最后传回CPU,将CPU端第N个分区中的结点插入到Node数组中,更新后的Node数组作为下轮待更新队列,重复步骤4,直到队列为空或低于阈值后,阈值根据环境因素设定,当前批次的处理结束或由于队列中结点数量较少而交由CPU端处理。如图3中的step4所示,最后将剩余待处理结点队列和GPU端保存的着色结果传回到CPU端。如图11所示,待处理队列q中的结点个数逐渐减少,直到队列空后结束。
Claims (3)
1.一种基于GPU的动态图着色方法,其特征在于:包括以下步骤:
步骤1:将原始无向图G有向化,转化成定向图G*;
首先为每个结点的邻居结点定义顺序,将度数大于该结点的邻居置于它的左侧,称为内邻,度数小于该结点的邻居置于它的右侧,称为外邻,度数相同时,结点id小的置于左侧;定义符号‘≮’表示该关系,定义为,内邻结点≮该结点≮外邻结点,内邻结点用集合nbr-()表示,外邻结点用nbr+()表示;
步骤2:将多次删除、插入操作进行批量合并后更新定向图G*;
图的更新有四种方式:增加结点、删除结点、增加边、删除边,把增删结点问题转化为增删边的问题进行处理,对批量的更新进行整合;
步骤3:利用压缩稀疏行CSR方式存储定向图的外邻信息,压缩稀疏列CSC方式存储定向图的内邻信息,并将外邻信息与内邻信息分别传输到GPU全局内存上;
步骤4:判断队列是否低于阈值,若否,则利用贪婪着色方法对待更新结点构成的子图进行分区,把分区结果传输至GPU端;若是,则交由CPU端处理;
步骤5:根据步骤4的分区结果并行地对每个区内的结点进行RC-Hybrid着色。
2.根据权利要求1所述一种基于GPU的动态图着色方法,其特征在于,所述步骤4的具体步骤包括:
步骤4.1:利用贪婪着色方法在CPU端对待处理队列中的结点进行分区,划分为N个分块,前(N-1)个分区内部的结点互不相邻,第N个分区内允许存在相邻的结点;
步骤4.2:将步骤4.1中的前(N-1)个分区结点分别传输到GPU全局内存上,第N个分区保存在CPU端。
3.根据权利要求1所述一种基于GPU的动态图着色方法,其特征在于,所述步骤5的具体步骤包括:
步骤5.1:GPU每个线程处理当前分区的一个结点,设立长度为该结点入度值加一的数组,利用CSC矩阵收集对应结点的内邻颜色,如果颜色不大于当前结点的入度值,则把颜色值在数组中的对应位置置为1;
步骤5.2:根据步骤5.1中的数组,从数组的起始位置开始递增地找第一个为0的位置,该位置所对应的数组下标即为当前结点所需分配的颜色;
步骤5.3:设立一个长度为待处理结点数量的数组作为下轮待处理结点队列,GPU线程利用CSR矩阵把当前结点所有外邻在数组中的对应位置置为1,当GPU上的前(N-1)个分区处理完成后,同时作为多个结点外邻的某一结点只需下次被重新着色一次,达到去重的目的,再把这个数组最后传回CPU,和CPU端第N个分区合并,作为下轮待更新队列,重复步骤4,直到队列低于阈值后,交由CPU端处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910062804.7A CN109741421B (zh) | 2019-01-23 | 2019-01-23 | 一种基于gpu的动态图着色方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910062804.7A CN109741421B (zh) | 2019-01-23 | 2019-01-23 | 一种基于gpu的动态图着色方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109741421A true CN109741421A (zh) | 2019-05-10 |
CN109741421B CN109741421B (zh) | 2023-04-14 |
Family
ID=66365739
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910062804.7A Active CN109741421B (zh) | 2019-01-23 | 2019-01-23 | 一种基于gpu的动态图着色方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109741421B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110415162A (zh) * | 2019-07-22 | 2019-11-05 | 中国人民大学 | 大数据中面向异构融合处理器的自适应图划分方法 |
CN110533742A (zh) * | 2019-09-03 | 2019-12-03 | 广州视源电子科技股份有限公司 | 一种图像填色方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100091018A1 (en) * | 2008-07-11 | 2010-04-15 | Advanced Micro Devices, Inc. | Rendering Detailed Animated Three Dimensional Characters with Coarse Mesh Instancing and Determining Tesselation Levels for Varying Character Crowd Density |
CN104657097A (zh) * | 2013-11-25 | 2015-05-27 | 中国移动通信集团公司 | 一种波浪型动态图像的显示方法和设备 |
CN105701759A (zh) * | 2016-01-11 | 2016-06-22 | 南京师范大学 | 基于gpu的地图矢量线要素拐角合理性绘制方法 |
CN105917383A (zh) * | 2014-01-21 | 2016-08-31 | 三菱电机株式会社 | 动态图像再现装置 |
CN107992572A (zh) * | 2017-11-30 | 2018-05-04 | 天津大学 | 一种基于Pregel的分布式图着色算法 |
-
2019
- 2019-01-23 CN CN201910062804.7A patent/CN109741421B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100091018A1 (en) * | 2008-07-11 | 2010-04-15 | Advanced Micro Devices, Inc. | Rendering Detailed Animated Three Dimensional Characters with Coarse Mesh Instancing and Determining Tesselation Levels for Varying Character Crowd Density |
CN104657097A (zh) * | 2013-11-25 | 2015-05-27 | 中国移动通信集团公司 | 一种波浪型动态图像的显示方法和设备 |
CN105917383A (zh) * | 2014-01-21 | 2016-08-31 | 三菱电机株式会社 | 动态图像再现装置 |
CN105701759A (zh) * | 2016-01-11 | 2016-06-22 | 南京师范大学 | 基于gpu的地图矢量线要素拐角合理性绘制方法 |
CN107992572A (zh) * | 2017-11-30 | 2018-05-04 | 天津大学 | 一种基于Pregel的分布式图着色算法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110415162A (zh) * | 2019-07-22 | 2019-11-05 | 中国人民大学 | 大数据中面向异构融合处理器的自适应图划分方法 |
CN110415162B (zh) * | 2019-07-22 | 2020-03-31 | 中国人民大学 | 大数据中面向异构融合处理器的自适应图划分方法 |
CN110533742A (zh) * | 2019-09-03 | 2019-12-03 | 广州视源电子科技股份有限公司 | 一种图像填色方法、装置、设备及存储介质 |
CN110533742B (zh) * | 2019-09-03 | 2021-05-11 | 广州视源电子科技股份有限公司 | 一种图像填色方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109741421B (zh) | 2023-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107688999A (zh) | 一种基于区块链的并行交易执行方法 | |
CN108304918A (zh) | 一种数据并行的深度学习的参数交换方法和系统 | |
CN106709503B (zh) | 一种基于密度的大型空间数据聚类算法k-dbscan | |
CN109741421A (zh) | 一种基于gpu的动态图着色方法 | |
CN113297429B (zh) | 一种基于神经网络架构搜索的社交网络链路预测方法 | |
CN105739951A (zh) | 一种基于gpu的l1最小化问题快速求解方法 | |
CN110674326A (zh) | 一种基于多项式分布学习的神经网络结构检索方法 | |
CN109508389B (zh) | 一种人员社会关系图谱可视化加速方法 | |
CN107360031A (zh) | 一种基于优化开销收益比的虚拟网络映射方法 | |
CN106802787A (zh) | 基于GPU排序的MapReduce优化方法 | |
CN116938323B (zh) | 一种基于强化学习的卫星转发器资源分配方法 | |
Cortese et al. | On embedding a cycle in a plane graph | |
CN107908696A (zh) | 一种并行高效的基于网格与密度的多维空间数据聚类算法griden | |
US9594786B2 (en) | Append-only b-tree cursor | |
CN115688906A (zh) | 一种面向超参训练的数据自动编排加载方法和系统 | |
CN112950451B (zh) | 一种基于GPU的极大k-truss发现算法 | |
Langguth et al. | Incremental clustering algorithms for massive dynamic graphs | |
Cai et al. | Completely random measures for modeling power laws in sparse graphs | |
CN109063222B (zh) | 一种基于大数据的自适应数据搜索方法 | |
CN114490799A (zh) | 单个图的频繁子图挖掘方法及装置 | |
CN113065035A (zh) | 一种单机核外属性图计算方法 | |
Geetha et al. | Implementation and performance analysis of dynamic partitioning of graphs in Apache Spark | |
CN113434540B (zh) | 支持左外连接的应用驱动数据生成中依赖关系生成方法及系统 | |
CN109816093A (zh) | 一种单路式卷积实现方法 | |
Georgopoulos et al. | Enhancing multi-threaded sparse matrix multiplication for knowledge graph oriented algorithms and analytics |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |