CN104835110B - 一种基于gpu的异步图数据处理系统 - Google Patents
一种基于gpu的异步图数据处理系统 Download PDFInfo
- Publication number
- CN104835110B CN104835110B CN201510176312.2A CN201510176312A CN104835110B CN 104835110 B CN104835110 B CN 104835110B CN 201510176312 A CN201510176312 A CN 201510176312A CN 104835110 B CN104835110 B CN 104835110B
- Authority
- CN
- China
- Prior art keywords
- data
- gpu
- asynchronous
- module
- algorithm
- 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.)
- Active
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种基于GPU的异步图数据处理系统,包括:实现一个混合着色的算法:将原有的单一、启发式着色算法改为混合着色算法;数据预处理策略:将原有的基于顶点度数的预处理分割方法改为基于顶点着色分布的方式;异步处理执行引擎:将处理引擎的执行方式由同步BSP方式改为异步处理的方式,结合混合着色算法模块,实现GPU上的无锁异步编程;在异步处理执行引擎内部,实现迭代处理模块、数据流执行模块,对CPU和GPU的带宽、计算能力等资源进行统一管理和使用。本发明实现了一个基于GPU的图数据处理系统,异步执行引擎能够极大地加速图算法收敛速度,解决GPU上的同步等待开销、异步编程锁开销等问题,进而提升GPU对图数据的处理能力。
Description
技术领域
本发明属于图数据处理和高性能计算领域,更具体地,涉及一种基于GPU的异步图数据处理系统。
背景技术
大规模的图数据处理,被越来越多的应用所涉及。传统的单机图处理系统,对大规模的图数据进行划分、之后依序对数据块进行处理,相比较于分布式系统编程的繁琐,简洁的单机系统得到了越来越多的关注。单机系统的关键,也就是解决由于图数据划分而带来的磁盘访问性能差、任务并发度低、设备内存带宽利用率低等问题,在学术界,针对此类问题已经进行了一些积极探索和尝试。
GraphChi系统采用了新设计的滑动窗口PSW(Parallel Sliding Window)算法,将磁盘数据分块引入内存进行处理,流动地顺序访问磁盘数据,解决了由大量随机磁盘访问带来的IO开销。但是这种数据划分策略,将导致每次执行的数据中存在有大量的数据访问冲突,从而只会有很少的一部分进行并行处理,执行效率很低。
TurboGraph系统,在GraphChi系统的基础之上,尝试解决任务并行度低下的问题,采用pin-and-slide编程模型,将部分数据固定在内存中,加快访问效率,同时覆盖了一部分IO过程和CPU处理过程,提高并行度。但此系统受到内存容量限制,处理能力有限,很难高效地解决数据并发的问题。
随着GPGPU技术的成熟,GPU被用来加速普通的计算任务成为一种趋势。由于图数据的顶点多、边数多、数据依赖关系复杂等因素,多数的图顶点处理任务十分适合使用GPU进行加速。在这方面,学术界也已经进行了一些研究工作。
Medusa系统是近期开源的一个GPU架构的图数据处理系统,该系统设计了一套API接口,用户可以方便地使用GPU来加速图处理。但是该系统并没有考虑数据划分策略,更没有尝试解决GPU中任务并发度低的问题。
GraphLab系统引入锁机制来解决数据访问冲突和资源竞争等问题,但由于GPU自身结构特性,引入锁机制反而会带来更大的开销,很难用来解决并发问题。
发明内容
针对当前单机图处理系统的数据划分策略效率低下,图顶点处理任务并发度差的情况,本发明提出了一种基于GPU的异步图处理系统,兼顾GPU设备内存和主机内存之间的数据交换开销问题,采用基于混合图着色算法的数据划分策略,提高数据并发度,充分利用GPU强大的并行处理能力,大幅提升单机图处理性能。
为实现上述目的,本发明提供了一种基于GPU的异步图处理系统,包括数据预处理模块、数据流管理模块、异步执行模块和迭代处理模块,其中:
所述数据预处理模块,用于对原始图数据进行预处理,采用混合着色算法,将原始图数据划分为一定数目的子数据,并保证每一个子数据中的顶点被分配得到的颜色相同,该模块在CPU中执行完成;
所述数据流管理模块,用于管理CPU和GPU之间的数据交换,通过CUDA语言的支持,在CPU memory和GPU设备内存进行数据交换时,采用数据预取、多管道数据拷贝的方式,利用PCI-E的带宽,并减少数据交换开销;
所述异步执行模块,用于对拷贝到GPU设备内存中的数据进行异步执行,将数据通过PCI-E输送到GPU设备内存中,根据不同的算法需求,在保证数据一致性的同时,由GPU对数据执行更新函数;
所述迭代处理模块,用于根据图算法迭代执行的特征,在GPU执行完成当前轮次的更新任务后,判断是否达到算法要求的收敛条件,如果达到,则终止所有的更新任务;如果没有达到收敛要求,则继续由GPU对数据进行异步处理。
在本发明的一个实施例中,所述数据预处理模块采用的混合着色算法具体为:采用N种颜色对原始图数据进行着色,每个颜色包含的顶点数目分别为P1、P2、P3、…、Pn,根据Px(x=1,2,3…n)值的大小,将最小的M种颜色混合在一起,从而形成(N-M+1)个着色单元,其中(N-M)个着色单元的所有顶点具有同一种颜色,另一个为混合着色单元。
在本发明的一个实施例中,所述数据预处理具体执行过程为:根据混合着色算法的结果,将N-M+1个着色单元中的顶点分别划分为独立的N-M+1个数据块,数据块顶点所涉及的数据边也整合在一个集合中;从而将原有图数据划分为N-M+1个具有独立顶点和数据边的子图,其中N-M个子图中,所有顶点均不会共享数据边,另一个则为混合着色单元,不保证其中的部分顶点互相为邻接点、共享数据边。
在本发明的一个实施例中,所述数据流管理模块包括数据预取模块和多管道数据拷贝模块,所述数据预取模块用于在GPU kernel执行更新任务时,对数据进行预取,提前准备GPU kernel所需要的数据,做到在kernel计算的同时进行数据传送;所述多管道数据拷贝模块用于根据不同着色单元对数据的需求不同,采用CUDA Stream的方式,在多管道中同时对数据进行拷贝,从而减少数据拷贝的开销。
在本发明的一个实施例中,所述异步执行模块的异步执行具体为:在执行处理任务时,各个顶点不需要进行全局同步,直接将更新值推送给邻接顶点,或者由邻接顶点主动获取最近的更新值,使得所有顶点都能够在第一时间得到所需顶点和数据边的最新值,从而保证每次更新都基于最新值,在保证计算过程中数据一致性的前提下,可以加快整个算法的收敛速度。
在本发明的一个实施例中,所述数据一致性是指在更新数据时,保证其他任一顶点在本顶点获取到的值是最新的、统一的,避免由于值的差异导致计算无法收敛、甚至计算结果错误问题。
在本发明的一个实施例中,所述迭代处理模块具体用于,在对图算法进行迭代处理的过程中,通过设置迭代阈值的方式,来监测每次迭代过程是否达到算法的收敛条件,如果前后两次迭代计算的结果差异超过了迭代阈值,则继续进行迭代计算;而如果前后两次迭代计算的结果差异小于迭代阈值,则表明迭代计算已经没有必要继续进行下去,终止计算过程。
在本发明的一个实施例中,所述迭代处理模块在监测迭代过程是否达到算法收敛条件的策略,分为两种:一是设定全局阈值,计算上一迭代轮次和当前迭代轮次各个顶点值之间的差异,当所有顶点的差异值均小于所设定的全局阈值时,则认为计算达到了收敛条件;二是设定阈值范围,当图数据中有一定数量的顶点达到了阈值即认为计算达到了收敛条件,而不一定保证所有的顶点都满足了阈值要求。
与现有技术相比,本方法具有以下的有益效果:
(1)优化的数据划分策略
基于混合图着色算法的数据划分策略,将大规模的图数据,分割成多个数据块,每一次只针对其中的一个子块进行处理,可以有效解决了由于图数据的规模过大、GPU内存有限,而不能直接进行处理的问题。同时,被分割到同一数据块中的图顶点,大多是不相邻的弱关联数据,可以同时被并发执行,大幅提高任务并发力度。
(2)高效的任务执行效率
GPU被用来加速需要高并发处理的那部分任务。采用本发明的策略,在每一个子数据块中,大多数的图顶点可以被直接并发执行,GPU的高并发能力得到发挥,可以高效地完成数据处理任务。当然,对于数据块中存有的少量强关联数据,可以交给CPU进行处理,这样就实现了CPU和GPU的协同工作,CPU负责顺序执行那些不易被并行执行的数据,GPU则负责执行并发度高的那部分图数据,混合协作、高效地完成整个图处理任务。
(3)提高设备内存带宽利用率
本系统采用基于混合图着色算法的数据划分策略,在进行数据划分时,不仅考虑到任务并发问题,还不得不将一些只有少量顶点的分块合并到其他分块中,以此来减少数据置换次数,提高设备内存带宽利用率,避免由于数据划分策略本身带来的额外系统开销。
(4)加快算法的迭代收敛速度
本系统采用异步编程模型对图算法进行处理,由于此类算法本身具有迭代处理的特征,相比较于传统的同步BSP模型中“计算-通信-等待”的三步处理过程,异步编程可以避免等待开销,将最新的顶点值在计算完成的第一时间传递给邻接点,结合系统中迭代处理模块,极大地加快算法的迭代收敛速度。
(5)方便普通用户使用的GPU系统框架
本系统基于混合图着色算法的的数据划分策略,采用异步编程模型,实现了一个CPU和GPU混合架构的单机图处理系统,该系统将本着方便普通用户使用的目标,在用户只有少量GPU编程基础和经验的情况下,依然能够满足通过使用本系统框架,利用GPU来完成加速图处理过程的目标。
附图说明
图1是GPU异步图数据处理方法执行流程;
图2是混合着色算法和预处理模块执行流程示意图;
图3是GPU异步处理的执行流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明采用基于混合图着色算法的数据划分策略,解决了图数据处理的数据访问冲突和GPU高并发性能之间的矛盾问题,高效地利用GPU的并行计算优势来加速图数据处理过程。如图1所示,本发明基于GPU的异步图处理方法执行流程如下:
(1)数据预处理模块,用于对原始图数据进行预处理,采用混合着色算法,将原始图数据划分为一定数目的子数据,并保证每一个子数据中的顶点被分配得到的颜色相同,该模块在CPU中执行完成;
其中所述数据预处理模块采用的混合着色算法具体为:采用N种颜色对原始图数据进行着色,每个颜色包含的顶点数目分别为P1、P2、P3、…、Pn,根据Px(x=1,2,3…n)值的大小,将最小的M种颜色混合在一起,从而形成(N-M+1)个着色单元,其中(N-M)个着色单元的所有顶点具有同一种颜色,另一个为混合着色单元。
所述数据预处理具体执行过程为:根据混合着色算法的结果,将N-M+1个着色单元中的顶点分别划分为独立的N-M+1个数据块,数据块顶点所涉及的数据边也整合在一个集合中;从而将原有图数据划分为N-M+1个具有独立顶点和数据边的子图,其中N-M个子图中,所有顶点均不会共享数据边,另一个则为混合着色单元,不保证其中的部分顶点互相为邻接点、共享数据边。
具体地,基于混合图着色算法的数据预处理策略如下图2示例所示,对原始图数据首先进行着色处理,然后将具有同一颜色的顶点被划分在同一数据块中(着色分块),同时为了减少分割后的数据块数目,避免额外的数据交换开销,采用混合着色处理,允许某些数据块中有一些其他颜色的顶点存在,即混合着色处理。在图2中的例子,顶点3、4、9在P1块,顶点2、5、8在P2块,顶点1、6、7在P3块。与传统的数据处理策略不同,本发明处理所得数据块中,顶点更新引起的冲突数目大量减少,这样就能够更好地进行并发执行,有利于使用GPU进行高并发处理,从而加速整个图数据处理过程;
(2)数据流管理模块:用于管理CPU和GPU之间的数据交换,通过CUDA语言的支持,在CPU memory和GPU设备内存进行数据交换时,采用数据预取、多管道数据拷贝的方式,利用PCI-E的带宽,并减少数据交换开销。
具体地,所述数据流管理模块包括数据预取模块和多管道数据拷贝模块,所述数据预取模块用于在GPU kernel执行更新任务时,对数据进行预取,提前准备GPU kernel所需要的数据,做到在kernel计算的同时进行数据传送,使得计算和I/O资源在同一时段内都没有空闲,从而合理利用计算和/IO资源;所述多管道数据拷贝模块用于根据不同着色单元对数据的需求不同,采用CUDA Stream的方式,在多管道中同时对数据进行拷贝,从而减少数据拷贝的开销。
(3)异步执行模块,对拷贝到GPU设备内存中的数据进行异步执行,将数据通过PCI-E输送到GPU设备内存中,根据不同的算法需求,在保证数据一致性的同时,由GPU对数据执行更新函数;
具体地,所述异步执行模块的异步执行具体为:在执行处理任务时,各个顶点不需要进行全局同步,直接将更新值推送给邻接顶点,或者由邻接顶点主动获取最近的更新值,使得所有顶点都能够在第一时间得到所需顶点和数据边的最新值,从而保证每次更新都基于最新值,在保证计算过程中数据一致性的前提下,加快整个算法的收敛速度。
具体地,所述数据一致性是指在更新数据时,保证其他任一顶点在本顶点获取到的值是最新的、统一的,避免由于值的差异导致计算无法收敛、甚至计算结果错误问题。
(4)迭代处理模块,根据图算法迭代执行的特征,在GPU执行完成当前轮次的更新任务后,判断是否达到算法要求的收敛条件,如果达到,则终止所有的更新任务;如果没有达到收敛要求,则继续由GPU对数据进行异步处理。
具体地,所述迭代处理模块具体用于:在对图算法进行迭代处理的过程中,通过设置迭代阈值的方式,来监测每次迭代过程是否达到算法的收敛条件,如果前后两次迭代计算的结果差异超过了迭代阈值,则继续进行迭代计算;而如果前后两次迭代计算的结果差异小于迭代阈值,则表明迭代计算已经没有必要继续进行下去,终止计算过程。
其中,所述迭代处理模块在监测迭代过程是否达到算法收敛条件的策略,分为两种:一是设定全局阈值,计算上一迭代轮次和当前迭代轮次各个顶点值之间的差异,当所有顶点的差异值均小于所设定的全局阈值时,则认为计算达到了收敛条件;二是设定阈值范围,当图数据中有一定数量的顶点达到了阈值即认为计算达到了收敛条件,而不一定保证所有的顶点都满足了阈值要求。
GPU迭代处理算法的过程如图3所示,该示例描述了算法被GPU处理执行的一个迭代过程,迭代处理模块负责监测算法是否达到收敛条件;每个迭代过程根据预处理模块的结果,被分为迭代子步骤1、迭代子步骤2和迭代子步骤3三个子步骤。在各个子步骤中,GPUkernel分别执行处理不同的顶点。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种基于GPU的异步图数据处理系统,其特征在于,所述系统包括数据预处理模块、数据流管理模块、异步执行模块和迭代处理模块,其中:
所述数据预处理模块,用于对原始图数据进行预处理,采用混合着色算法,将原始图数据划分为一定数目的子数据,并保证每一个子数据中的顶点被分配得到的颜色相同,该模块在CPU中执行完成;
所述数据流管理模块,用于管理CPU和GPU之间的数据交换,通过CUDA语言的支持,在CPU memory和GPU设备内存进行数据交换时,采用数据预取、多管道数据拷贝的方式,利用PCI-E的带宽,并减少数据交换开销;
所述异步执行模块,用于对拷贝到GPU设备内存中的数据进行异步执行,将数据通过PCI-E输送到GPU设备内存中,根据不同的算法需求,在保证数据一致性的同时,由GPU对数据执行更新函数;
所述迭代处理模块,用于根据图算法迭代执行的特征,在GPU执行完成当前轮次的更新任务后,判断是否达到算法要求的收敛条件,如果达到,则终止所有的更新任务;如果没有达到收敛要求,则继续由GPU对数据进行异步处理;
所述数据预处理模块采用的混合着色算法具体为:采用N种颜色对原始图数据进行着色,每个颜色包含的顶点数目分别为P1、P2、P3、…、Pn,根据Px值的大小,其中,x=1,2,3…n,将最小的M种颜色混合在一起,从而形成N-M+1个着色单元,其中N-M个着色单元的所有顶点具有同一种颜色,另一个为混合着色单元。
2.根据权利要求1所述的基于GPU的异步图数据处理系统,其特征在于,其中,所述数据预处理具体执行过程为:根据混合着色算法的结果,将N-M+1个着色单元中的顶点分别划分为独立的N-M+1个数据块,数据块顶点所涉及的数据边也整合在一个集合中;从而将原有图数据划分为N-M+1个具有独立顶点和数据边的子图,其中N-M个子图中,所有顶点均不会共享数据边,另一个则为混合着色单元,不保证其中的部分顶点互相为邻接点、共享数据边。
3.根据权利要求1或2所述的基于GPU的异步图数据处理系统,其特征在于,所述数据流管理模块包括数据预取模块和多管道数据拷贝模块,所述数据预取模块用于在GPU kernel执行更新任务时,对数据进行预取,提前准备GPU kernel所需要的数据,做到在kernel计算的同时进行数据传送;所述多管道数据拷贝模块用于根据不同着色单元对数据的需求不同,采用CUDA Stream的方式,在多管道中同时对数据进行拷贝,从而减少数据拷贝的开销。
4.根据权利要求1或2所述的基于GPU的异步图数据处理系统,其特征在于,所述异步执行模块的异步执行具体为:在执行处理任务时,各个顶点不需要进行全局同步,直接将更新值推送给邻接顶点,或者由邻接顶点主动获取最近的更新值,使得所有顶点都能够在第一时间得到所需顶点和数据边的最新值,从而保证每次更新都基于最新值,在保证计算过程中数据一致性的前提下,加快整个算法的收敛速度。
5.根据权利要求1或2所述的基于GPU的异步图数据处理系统,其特征在于,所述数据一致性是指在更新数据时,保证其他任一顶点在本顶点获取到的值是最新的、统一的,避免由于值的差异导致计算无法收敛、甚至计算结果错误问题。
6.根据权利要求1或2所述的基于GPU的异步图数据处理系统,其特征在于,所述迭代处理模块具体用于:在对图算法进行迭代处理的过程中,通过设置迭代阈值的方式,来监测每次迭代过程是否达到算法的收敛条件,如果前后两次迭代计算的结果差异超过了迭代阈值,则继续进行迭代计算;而如果前后两次迭代计算的结果差异小于迭代阈值,则表明迭代计算已经没有必要继续进行下去,终止计算过程。
7.根据权利要求6所述的基于GPU的异步图数据处理系统,其特征在于,所述迭代处理模块在监测迭代过程是否达到算法收敛条件的策略,分为两种:一是设定全局阈值,计算上一迭代轮次和当前迭代轮次各个顶点值之间的差异,当所有顶点的差异值均小于所设定的全局阈值时,则认为计算达到了收敛条件;二是设定阈值范围,当图数据中有一定数量的顶点达到了阈值即认为计算达到了收敛条件,而不一定保证所有的顶点都满足了阈值要求。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510176312.2A CN104835110B (zh) | 2015-04-15 | 2015-04-15 | 一种基于gpu的异步图数据处理系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510176312.2A CN104835110B (zh) | 2015-04-15 | 2015-04-15 | 一种基于gpu的异步图数据处理系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104835110A CN104835110A (zh) | 2015-08-12 |
CN104835110B true CN104835110B (zh) | 2017-12-22 |
Family
ID=53812980
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510176312.2A Active CN104835110B (zh) | 2015-04-15 | 2015-04-15 | 一种基于gpu的异步图数据处理系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104835110B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106919534A (zh) * | 2015-12-25 | 2017-07-04 | 中移(杭州)信息技术有限公司 | 中央处理器-图形处理器异构的标签传播实现方法、装置 |
CN107025099B (zh) * | 2016-02-01 | 2019-12-27 | 北京大学 | 一种基于双队列模型的异步图计算实现方法及系统 |
CN106445688A (zh) * | 2016-09-30 | 2017-02-22 | 电子科技大学 | 一种基于mic计算平台的nlm并行图像增强方法 |
CN108364327B (zh) * | 2017-01-26 | 2021-09-17 | 华为技术有限公司 | 一种图数据处理的方法及装置 |
CN107122244B (zh) * | 2017-04-25 | 2020-02-14 | 华中科技大学 | 一种基于多gpu的图数据处理系统及方法 |
CN107861815B (zh) * | 2017-10-31 | 2020-05-19 | 华中科技大学 | 一种多gpu环境下的数据通信性能优化方法 |
CN108876874A (zh) * | 2018-06-11 | 2018-11-23 | 成都大学 | 图顶点着色方法、处理设备和存储介质 |
CN109976903B (zh) * | 2019-02-22 | 2021-06-29 | 华中科技大学 | 一种基于层宽内存分配的深度学习异构计算方法和系统 |
CN110187968B (zh) * | 2019-05-22 | 2023-03-14 | 上海交通大学 | 异构计算环境下的图数据处理加速方法 |
CN110704360B (zh) * | 2019-09-29 | 2022-03-18 | 华中科技大学 | 一种基于异构fpga数据流的图计算优化方法 |
CN110780947B (zh) * | 2019-10-21 | 2023-10-13 | 深圳大学 | 用于社交图数据的PageRank并行计算加速方法 |
CN111292223B (zh) | 2020-01-22 | 2023-07-25 | 北京百度网讯科技有限公司 | 图计算的处理方法、装置、电子设备及存储介质 |
US11593157B2 (en) | 2020-02-05 | 2023-02-28 | Nec Corporation | Full asynchronous execution queue for accelerator hardware |
CN112346869B (zh) * | 2020-11-10 | 2021-07-13 | 上海交通大学 | 自适应的面向大图的统一内存管理方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102651142A (zh) * | 2012-04-16 | 2012-08-29 | 深圳超多维光电子有限公司 | 图像渲染方法和装置 |
CN103679789A (zh) * | 2013-12-09 | 2014-03-26 | 北京大学 | 基于数据流图的并行绘制与可视化方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090189896A1 (en) * | 2008-01-25 | 2009-07-30 | Via Technologies, Inc. | Graphics Processor having Unified Shader Unit |
US8675000B2 (en) * | 2008-11-07 | 2014-03-18 | Google, Inc. | Command buffers for web-based graphics rendering |
-
2015
- 2015-04-15 CN CN201510176312.2A patent/CN104835110B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102651142A (zh) * | 2012-04-16 | 2012-08-29 | 深圳超多维光电子有限公司 | 图像渲染方法和装置 |
CN103679789A (zh) * | 2013-12-09 | 2014-03-26 | 北京大学 | 基于数据流图的并行绘制与可视化方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104835110A (zh) | 2015-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104835110B (zh) | 一种基于gpu的异步图数据处理系统 | |
JP6479966B2 (ja) | ユーザインタラクションを通じたグラフに基づくプログラム内の構成要素のサブセットの視覚的な規定 | |
Li et al. | Quantum supremacy circuit simulation on Sunway TaihuLight | |
CN106991011B (zh) | 基于cpu多线程与gpu多粒度并行及协同优化的方法 | |
DE102020110688A1 (de) | Hardware-agnostischer compiler für tiefgehende neuronale netze | |
US10067768B2 (en) | Execution of divergent threads using a convergence barrier | |
US9152601B2 (en) | Power-efficient nested map-reduce execution on a cloud of heterogeneous accelerated processing units | |
Nah et al. | T&I engine: Traversal and intersection engine for hardware accelerated ray tracing | |
CN103049241A (zh) | 一种提高cpu+gpu异构装置计算性能的方法 | |
CN107122244A (zh) | 一种基于多gpu的图数据处理系统及方法 | |
CN105718998A (zh) | 一种基于移动终端gpu运行的粒子群优化方法和系统 | |
Wu et al. | A new approach to compute cnns for extremely large images | |
JP6551751B2 (ja) | マルチプロセッサ装置 | |
Gurumani et al. | High-level synthesis of multiple dependent CUDA kernels on FPGA | |
US9262139B2 (en) | Layered programming for heterogeneous devices | |
Vo et al. | HyperFlow: A Heterogeneous Dataflow Architecture. | |
Sha et al. | Self-adaptive graph traversal on gpus | |
Fu et al. | A CPU-GPU data transfer optimization approach based on code migration and merging | |
CN110069243A (zh) | 一种java程序线程优化方法 | |
Liu et al. | Accelerating large-scale DEVS-based simulation on the cell processor | |
CN105487915B (zh) | 一种基于延迟发送机制的gpu虚拟化性能提升的方法 | |
Gutierrez et al. | A fast level-set segmentation algorithm for image processing designed for parallel architectures | |
Zhu et al. | Implementation of 3D SRAD algorithm on CUDA | |
CN105138289A (zh) | 计算组件的存储管理方法和装置 | |
Guo et al. | A gpu memory efficient speed-up scheme for training ultra-deep neural networks: poster |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |