CN107122244A - 一种基于多gpu的图数据处理系统及方法 - Google Patents

一种基于多gpu的图数据处理系统及方法 Download PDF

Info

Publication number
CN107122244A
CN107122244A CN201710276951.5A CN201710276951A CN107122244A CN 107122244 A CN107122244 A CN 107122244A CN 201710276951 A CN201710276951 A CN 201710276951A CN 107122244 A CN107122244 A CN 107122244A
Authority
CN
China
Prior art keywords
task
gpu
module
data
cpu
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
Application number
CN201710276951.5A
Other languages
English (en)
Other versions
CN107122244B (zh
Inventor
石宣化
金海�
罗璇
赵鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huazhong University of Science and Technology
Original Assignee
Huazhong University of Science and Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huazhong University of Science and Technology filed Critical Huazhong University of Science and Technology
Priority to CN201710276951.5A priority Critical patent/CN107122244B/zh
Publication of CN107122244A publication Critical patent/CN107122244A/zh
Application granted granted Critical
Publication of CN107122244B publication Critical patent/CN107122244B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Generation (AREA)

Abstract

本发明公开了一种基于多GPU的图数据处理系统及方法,首先通过数据划分模块对输入的原始图数据进行划分,并将划分后的数据分配到各个GPU设备中;然后通过任务管理模块对每个GPU设备上的顶点按照计算属性分配不同的计算任务,并管理各种任务的执行顺序;接着通过执行模块在保证数据一致性的同时,完成各个GPU设备上并行计算任务的执行;最后通过数据收集模块在计算完成以后,完成数据收集的过程。本发明提出新的任务分配和管理机制,最大化并行效率,利用计算掩盖通信,解决目前基于GPU的图处理系统存在GPU‑CPU通信开销大以及能够处理图数据的规模有限的问题,从而提高了在GPU上处理大规模图数据的效率。

Description

一种基于多GPU的图数据处理系统及方法
技术领域
本发明属于图数据处理和高性能计算技术领域,更具体地,涉及一种基于多GPU的图数据处理系统及方法。
背景技术
目前,许多现实应用都涉及到图数据的处理,传统的单机图系统主要通过数据划分,优化访存效率和减少磁盘I/O开销等手段提高大规模图数据处理的效率,但仍存在着并行计算效率低,磁盘带宽利用率不足和访存效率低等问题。
GraphChi系统将大规模图数据划分成小的数据块,提出了Shards的概念和并行滑动窗口的机制,在提高内存数据访问连续性的同时,按需调入Shard块,减少了磁盘的随机访问,但是由于不同shard块之间存在碎片访问以及块内数据关联性高,因此造成磁盘的带宽利用率不足和并行计算效率低。
X-stream系统提出了以边为中心的图处理模型,采用流划分的方式,划分后按照边随机存储,避免了排序带来的开销,同时由于相对于以顶点为中心的访问方式,以边的访问方式是连续的,可以提高磁盘访问的带宽。但是由于缺乏合理调度数据块的机制,使得访存命中率不高。
近几年,通用计算图形处理器(General-Purpose computation on GraphicsProcessing Units,GPGPU)技术越来越成熟。GPU具有强大的并行能力和高带宽等特点,而图计算需要满足高性能及实时性等需求,因此利用GPU来加速图计算的研究得到越来越多的关注。基于GPU的图处理系统关键在于解决图计算局部性差、任务并行度低和GPU-CPU之间通信开销大等问题。
Cusha系统针对传统的图数据表达方法CSR(Compressed Sparse Row)结构存在不规则访存和GPU利用率不足等缺点,引入了单机图系统GraphChi提出的Shards的概念,提出了新的基于GPU图处理的数据表达方式G-Shards和CW(Concatenated Windows),起到提高空间局部性的作用,达到加速图计算的目的。但Cusha系统设计的前提是假设GPU的显存是可以放下所有的图数据的,而实际上,目前GPU的显存大小是远远满足不了当前大规模图计算需求的。
Medusa系统利用消息传递的方式,实现了多GPU环境下的图处理。同时,Medusa系统为用户提供应用程序接口(Application Programming Interface,API)方便用户在GPU上进行图处理的编程。同时,采用多跳副本机制,达到减少GPU和CPU之间通信开销的目的。但Medusa系统没有尝试解决GPU中图计算任务并行度低的问题,而且多跳副本的机制虽然减少了GPU-CPU之间消息通信的次数,但是增加了数据存储的空间,且每次通信的数据量仍然很大。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种基于多GPU的图数据处理系统及方法,根据图数据划分后顶点计算特征,对任务进行分类处理,最大化并行效率,同时结合GPU异步流的技术,协调不同任务的执行,利用计算掩盖通信,达到加速图计算的目的。由此解决现有技术中基于GPU的图系统存在GPU-CPU之间通信开销大、任务并行度低和可以处理图数据的规模有限的技术问题。
为实现上述目的,按照本发明的一个方面,提供了一种基于多GPU的图数据处理系统,包括:数据划分模块、任务管理模块、执行模块以及数据收集模块;
所述数据划分模块,用于对原始图数据进行划分,并将划分后的数据分配到各个GPU设备中;
所述任务管理模块,用于对每个GPU设备中的顶点按照计算属性分配不同的计算任务,并管理GPU上不同粒度的计算任务、GPU与CPU之间的消息通信任务以及CPU上消息聚合任务的执行顺序;
所述执行模块,用于在保证数据一致性的同时,完成各个GPU设备中并行计算任务的执行;
所述数据收集模块,用于在计算任务完成以后,将计算结果从所有GPU设备中传输到CPU中,完成数据收集。
优选地,所述数据划分模块包括:顶点划分模块、边分配模块以及存储模块;
所述顶点划分模块,用于将原始图数据中的所有顶点按照顶点的度数大小分配到不同的数据块;
所述边分配模块,用于根据预设约束条件依次将原始图数据中的边分配到不同的数据块中,其中,预设约束条件表示最大化保证每个数据块中的边的个数一致;
所述存储模块,用于将各数据块中的划分结果按照顶点编号的顺序,依次存储在内存单元中。
优选地,所述任务管理模块包括任务分配模块以及任务流管理模块;
所述任务分配模块,用于根据预设分类方法将每个GPU设备上的所有顶点根据计算属性分为Outer点和Inner点,利用CUDA Stream方式,为Outer点和Inner点分配不同的计算任务;
所述任务流管理模块,用于协调GPU上不同粒度的计算任务、GPU与CPU之间的消息通信任务以及CPU上消息聚合任务之间的执行顺序,利用计算时间掩盖通信时间,使得CPU和GPU的资源充分利用。
优选地,所述预设分类方法为:将在其他GPU设备上存在副本的顶点作为Outer点,将在其他GPU设备上不存在副本的顶点作为Inner点。
优选地,所述任务流管理模块包括优先级确定模块以及任务流管理子模块;
所述优先级确定模块,用于将Outer点所在的计算任务设置高优先级,将Inner点所在的计算任务设置低优先级以确定各GPU设备中的任务执行顺序;
所述任务流管理子模块,用于通过控制Outer点和Inner点的计算任务,GPU与CPU之间的通信任务以及CPU上消息聚合任务的执行顺序,使得在执行计算任务的同时进行通信任务,互不干扰且保证各设备资源的充分利用。
优选地,其特征在于,所述任务流管理子模块,具体用于在GPU设备中若CUDAstream 1开始执行通信任务,则CUDA stream 2开始执行Inner点的计算任务,从而每个GPU设备的资源都得到充分利用,当GPU上执行Inner点的计算任务时,由于Inner点不需要完成消息通信和消息聚合任务,因此在CPU中执行CPU消息聚合任务,从而避免了在GPU与CPU进行通信时,CPU和GPU的计算资源浪费。
优选地,所述执行模块,具体用于在计算任务执行的过程中利用整体同步并行计算模型BSP和原子操作保证数据的一致性,且在BSP模型的计算过程中,根据不同的应用需求从预设应用程序编程接口API中选取目标应用程序编程接口API完成并行计算任务的执行。
优选地,所述预设应用程序编程接口API包括:以顶点为中心的编程方法,提供API为Vertex Map,以及以边为中心的编程方法,提供API为Edge Map。
优选地,所述数据收集模块,具体用于将所有GPU设备中得到的计算结果传输到CPU上,获取Inner点的最新计算结果,并获取所有Outer点及其副本的最新计算结果,从而得到最终结果。
按照本发明的另一方面,提供了一种基于多GPU的图数据处理方法,包括:
对原始图数据进行划分,并将划分后的数据分配到各个GPU设备中;
对每个GPU设备中的顶点按照计算属性分配不同的计算任务,并管理GPU上不同粒度的计算任务、GPU与CPU之间的消息通信任务以及CPU上消息聚合任务的执行顺序;
在保证数据一致性的同时,完成各个GPU设备中并行计算任务的执行;
在计算任务完成以后,将计算结果从所有GPU设备中传输到CPU中,完成数据收集。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
(1)充分利用GPU-CPU的计算资源:本发明保证每个GPU设备通信任务和部分点的计算任务同时执行,从而避免了在进行通信任务时GPU的计算资源的浪费。当CPU执行消息聚合任务的同时,GPU仍在进行部分顶点的计算任务,避免GPU和CPU设备因为某个设备的任务执行而造成另外一个设备的资源浪费。
(2)GPU-CPU额外通信开销减少,系统性能得到提升:本发明在执行计算任务的同时,完成通信的过程。因此,系统中部分通信的时间被计算时间隐藏了,减少了因为通信引入的同步等待的开销。
(3)为用户提供高效编程框架:本发明为用户提供API,方便普通用户利用图计算框架进行编程,同时隐藏了GPU复杂的编程细节,在执行模型过程中,为了避免不同编程方法带来性能差异和满足不同用户的计算需求,提供了两种高效的API。
附图说明
图1为本发明实施例公开的一种基于多GPU的图数据处理系统的结构示意图;
图2为本发明实施例公开的一种数据划分和任务分配的实例图;
图3为本发明实施例公开的一种任务管理模块中任务执行顺序的流程示意图;
图4为本发明实施例公开的一种基于多GPU的图数据处理方法的执行流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
本发明采用基于利用计算时间掩盖通信时间的思想,解决了目前基于GPU图系统存在着CPU-GPU之间通信开销大和可以处理图数据的规模有限的问题,充分利用GPU的并行计算能力和CPU计算能力来加速图数据在多个GPU环境下处理的过程。如图1所示为本发明实施例公开的一种基于多GPU的图数据处理系统的结构示意图,在图1所示的系统中包括:数据划分模块、任务管理模块、执行模块以及数据收集模块;
上述数据划分模块,用于对原始图数据进行划分,并将划分后的数据分配到各个GPU设备中。
具体地,数据划分模块包括:顶点划分模块、边分配模块以及存储模块;
顶点划分模块,用于将原始图数据中的所有顶点按照顶点的度数大小分配到不同的数据块;
边分配模块,用于根据预设约束条件依次将原始图数据中的边分配到不同的数据块中,其中,预设约束条件表示最大化保证每个数据块中的边的个数一致;
存储模块,用于将各数据块中的划分结果按照顶点编号的顺序,依次存储在内存单元中,采用该操作的目的是为了提高在GPU上进行图计算的时间空间局部性。
上述任务管理模块,用于对每个GPU设备中的顶点按照计算属性分配不同的计算任务,并管理GPU上不同粒度的计算任务、GPU与CPU之间的消息通信任务以及CPU上消息聚合任务的执行顺序。
具体地,任务管理模块包括任务分配模块以及任务流管理模块;
任务分配模块,用于根据预设分类方法将每个GPU设备上的所有顶点根据计算属性分为Outer点和Inner点,利用CUDA Stream方式,为Outer点和Inner点分配不同的计算任务;
其中,预设分类方法为:将在其他GPU设备上存在副本的顶点作为Outer点,将在其他GPU设备上不存在副本的顶点作为Inner点。如图2中的例子所示,顶点2和4为Outer点,其他顶点为Inner点。
任务流管理模块,用于协调GPU上不同粒度的计算任务、GPU与CPU之间的消息通信任务以及CPU上消息聚合任务之间的执行顺序,利用计算时间掩盖通信时间,使得CPU和GPU的资源充分利用。
其中,任务流管理模块包括优先级确定模块以及任务流管理子模块;
优先级确定模块,用于将Outer点所在的计算任务设置高优先级,将Inner点所在的计算任务设置低优先级以确定各GPU设备中的任务执行顺序;例如,如图2所示,因为4为Outer点,所以GPU0设备上边(9,4)的计算任务优先于边(9,1)。
任务流管理子模块,用于通过控制Outer点和Inner点的计算任务,GPU与CPU之间的通信任务以及CPU上消息聚合任务的执行顺序,使得在执行计算任务的同时进行通信任务,互不干扰且保证各设备资源的充分利用。
如图3所示,任务流管理子模块,具体用于在GPU设备中若CUDA stream 1开始执行通信任务,则CUDA stream 2开始执行Inner点的计算任务,从而每个GPU设备的资源都得到充分利用,当GPU上执行Inner点的计算任务时,由于Inner点不需要完成消息通信和消息聚合任务,因此在CPU中执行CPU消息聚合任务,从而避免了在GPU与CPU进行通信时,CPU和GPU的计算资源浪费。
上述执行模块,用于在保证数据一致性的同时,完成各个GPU设备中并行计算任务的执行。
具体地,执行模块,具体用于在计算任务执行的过程中利用整体同步并行计算模型(Bulk Synchronous Parallel,BSP)和原子操作保证数据的一致性,避免了GPU上多线程同时的读写导致错误结果,且在BSP模型的计算过程中,根据不同的应用需求从预设应用程序编程接口API中选取目标应用程序编程接口API完成并行计算任务的执行。
其中,为满足用户需求和提高并行效率,系统为用户编写图算法提供两种应用程序编程接口(Application Programming Interface,API),分别用两种方式实现:一个是以顶点为中心的编程方法,提供API为Vertex Map,另一种以边为中心的编程方法,提供API为Edge Map。并且为两种方法还提供相应的负载均衡的优化策略。因为两种方法针对不同算法和数据会造成较大的性能差异,因此用户可以按需选择合适的API,从而加速图数据的处理。
上述数据收集模块,用于在计算任务完成以后,将计算结果通过GPU和CPU的PCIe总线传输到CPU中,完成数据收集。
具体地,数据收集模块,具体用于将所有GPU设备中得到的计算结果传输到CPU上,获取Inner点的最新计算结果,并获取所有Outer点及其副本的最新计算结果,从而得到最终结果。
如图4所示为本发明实施例公开的一种基于多GPU的图数据处理方法的执行流程示意图,具体包括以下步骤:
对原始图数据进行划分,并将划分后的数据分配到各个GPU设备中;
对每个GPU设备中的顶点按照计算属性分配不同的计算任务,并管理GPU上不同粒度的计算任务、GPU与CPU之间的消息通信任务以及CPU上消息聚合任务的执行顺序;
在保证数据一致性的同时,完成各个GPU设备中并行计算任务的执行;
在计算任务完成以后,将计算结果从所有GPU设备中传输到CPU中,完成数据收集。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种基于多GPU的图数据处理系统,其特征在于,包括:数据划分模块、任务管理模块、执行模块以及数据收集模块;
所述数据划分模块,用于对原始图数据进行划分,并将划分后的数据分配到各个GPU设备中;
所述任务管理模块,用于对每个GPU设备中的顶点按照计算属性分配不同的计算任务,并管理GPU上不同粒度的计算任务、GPU与CPU之间的消息通信任务以及CPU上消息聚合任务的执行顺序;
所述执行模块,用于在保证数据一致性的同时,完成各个GPU设备中并行计算任务的执行;
所述数据收集模块,用于在计算任务完成以后,将计算结果从所有GPU设备中传输到CPU中,完成数据收集。
2.根据权利要求1所述的系统,其特征在于,所述数据划分模块包括:顶点划分模块、边分配模块以及存储模块;
所述顶点划分模块,用于将原始图数据中的所有顶点按照顶点的度数大小分配到不同的数据块;
所述边分配模块,用于根据预设约束条件依次将原始图数据中的边分配到不同的数据块中,其中,预设约束条件表示最大化保证每个数据块中的边的个数一致;
所述存储模块,用于将各数据块中的划分结果按照顶点编号的顺序,依次存储在内存单元中。
3.根据权利要求2所述的系统,其特征在于,所述任务管理模块包括任务分配模块以及任务流管理模块;
所述任务分配模块,用于根据预设分类方法将每个GPU设备上的所有顶点根据计算属性分为Outer点和Inner点,利用CUDA Stream方式,为Outer点和Inner点分配不同的计算任务;
所述任务流管理模块,用于协调GPU上不同粒度的计算任务、GPU与CPU之间的消息通信任务以及CPU上消息聚合任务之间的执行顺序,利用计算时间掩盖通信时间,使得CPU和GPU的资源充分利用。
4.根据权利要求3所述的系统,其特征在于,所述预设分类方法为:将在其他GPU设备上存在副本的顶点作为Outer点,将在其他GPU设备上不存在副本的顶点作为Inner点。
5.根据权利要求4所述的系统,其特征在于,所述任务流管理模块包括优先级确定模块以及任务流管理子模块;
所述优先级确定模块,用于将Outer点所在的计算任务设置高优先级,将Inner点所在的计算任务设置低优先级以确定各GPU设备中的任务执行顺序;
所述任务流管理子模块,用于通过控制Outer点和Inner点的计算任务,GPU与CPU之间的通信任务以及CPU上消息聚合任务的执行顺序,使得在执行计算任务的同时进行通信任务,互不干扰且保证各设备资源的充分利用。
6.根据权利要求5所述的系统,其特征在于,所述任务流管理子模块,具体用于在GPU设备中若CUDA stream 1开始执行通信任务,则CUDA stream 2开始执行Inner点的计算任务,从而每个GPU设备的资源都得到充分利用,当GPU上执行Inner点的计算任务时,由于Inner点不需要完成消息通信和消息聚合任务,因此在CPU中执行CPU消息聚合任务,从而避免了在GPU与CPU进行通信时,CPU和GPU的计算资源浪费。
7.根据权利要求1至6任意一项所述的系统,其特征在于,所述执行模块,具体用于在计算任务执行的过程中利用整体同步并行计算模型BSP和原子操作保证数据的一致性,且在BSP模型的计算过程中,根据不同的应用需求从预设应用程序编程接口API中选取目标应用程序编程接口API完成并行计算任务的执行。
8.根据权利要求7所述的系统,其特征在于,所述预设应用程序编程接口API包括:以顶点为中心的编程方法,提供API为Vertex Map,以及以边为中心的编程方法,提供API为EdgeMap。
9.根据权利要求8所述的系统,其特征在于,所述数据收集模块,具体用于将所有GPU设备中得到的计算结果传输到CPU上,获取Inner点的最新计算结果,并获取所有Outer点及其副本的最新计算结果,从而得到最终结果。
10.一种基于多GPU的图数据处理方法,其特征在于,包括:
对原始图数据进行划分,并将划分后的数据分配到各个GPU设备中;
对每个GPU设备中的顶点按照计算属性分配不同的计算任务,并管理GPU上不同粒度的计算任务、GPU与CPU之间的消息通信任务以及CPU上消息聚合任务的执行顺序;
在保证数据一致性的同时,完成各个GPU设备中并行计算任务的执行;
在计算任务完成以后,将计算结果从所有GPU设备中传输到CPU中,完成数据收集。
CN201710276951.5A 2017-04-25 2017-04-25 一种基于多gpu的图数据处理系统及方法 Active CN107122244B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710276951.5A CN107122244B (zh) 2017-04-25 2017-04-25 一种基于多gpu的图数据处理系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710276951.5A CN107122244B (zh) 2017-04-25 2017-04-25 一种基于多gpu的图数据处理系统及方法

Publications (2)

Publication Number Publication Date
CN107122244A true CN107122244A (zh) 2017-09-01
CN107122244B CN107122244B (zh) 2020-02-14

Family

ID=59725894

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710276951.5A Active CN107122244B (zh) 2017-04-25 2017-04-25 一种基于多gpu的图数据处理系统及方法

Country Status (1)

Country Link
CN (1) CN107122244B (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107861815A (zh) * 2017-10-31 2018-03-30 华中科技大学 一种多gpu环境下的数据通信性能优化方法
CN109471721A (zh) * 2018-10-19 2019-03-15 珠海金山网络游戏科技有限公司 一种对象添加方法、装置及设备
CN109542596A (zh) * 2018-10-22 2019-03-29 西安交通大学 一种基于OpenCL内核任务的调度框架
CN109976903A (zh) * 2019-02-22 2019-07-05 华中科技大学 一种基于层宽内存分配的深度学习异构计算方法和系统
CN110275771A (zh) * 2018-03-15 2019-09-24 中国移动通信集团有限公司 一种业务处理方法、物联网计费基础设施系统及存储介质
CN110659278A (zh) * 2018-06-12 2020-01-07 上海郑明现代物流有限公司 基于cpu-gpu异构架构的图数据分布式处理系统
WO2020019315A1 (zh) * 2018-07-27 2020-01-30 浙江天猫技术有限公司 一种基于图数据的计算运行调度方法、系统、计算机可读介质及设备
CN110928697A (zh) * 2020-02-13 2020-03-27 北京一流科技有限公司 拓扑图转换系统及其方法
WO2020257976A1 (en) * 2019-06-24 2020-12-30 Intel Corporation Apparatus and method for scheduling graphics processing resources
CN112328532A (zh) * 2020-11-02 2021-02-05 长沙景嘉微电子股份有限公司 多gpu通信的方法及装置、存储介质、电子装置
CN112988064A (zh) * 2021-02-09 2021-06-18 华中科技大学 一种面向并发多任务的磁盘图处理方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103021175A (zh) * 2012-11-12 2013-04-03 上海经达实业发展有限公司 基于达芬奇架构的行人闯红灯视频检测方法及装置
CN103425523A (zh) * 2013-06-20 2013-12-04 国家电网公司 一种pmu在线应用系统的并行计算系统及其方法
CN104835110A (zh) * 2015-04-15 2015-08-12 华中科技大学 一种基于gpu的异步图数据处理系统
CN105095831A (zh) * 2014-05-04 2015-11-25 深圳市贝尔信智能系统有限公司 一种人脸识别的方法、装置及系统
CN105550974A (zh) * 2015-12-13 2016-05-04 复旦大学 基于gpu的图像特征提取算法的加速方法
CN106358003A (zh) * 2016-08-31 2017-01-25 华中科技大学 一种基于线程级流水线的视频分析加速方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103021175A (zh) * 2012-11-12 2013-04-03 上海经达实业发展有限公司 基于达芬奇架构的行人闯红灯视频检测方法及装置
CN103425523A (zh) * 2013-06-20 2013-12-04 国家电网公司 一种pmu在线应用系统的并行计算系统及其方法
CN105095831A (zh) * 2014-05-04 2015-11-25 深圳市贝尔信智能系统有限公司 一种人脸识别的方法、装置及系统
CN104835110A (zh) * 2015-04-15 2015-08-12 华中科技大学 一种基于gpu的异步图数据处理系统
CN105550974A (zh) * 2015-12-13 2016-05-04 复旦大学 基于gpu的图像特征提取算法的加速方法
CN106358003A (zh) * 2016-08-31 2017-01-25 华中科技大学 一种基于线程级流水线的视频分析加速方法

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107861815A (zh) * 2017-10-31 2018-03-30 华中科技大学 一种多gpu环境下的数据通信性能优化方法
CN107861815B (zh) * 2017-10-31 2020-05-19 华中科技大学 一种多gpu环境下的数据通信性能优化方法
CN110275771A (zh) * 2018-03-15 2019-09-24 中国移动通信集团有限公司 一种业务处理方法、物联网计费基础设施系统及存储介质
CN110275771B (zh) * 2018-03-15 2021-12-14 中国移动通信集团有限公司 一种业务处理方法、物联网计费基础设施系统及存储介质
CN110659278A (zh) * 2018-06-12 2020-01-07 上海郑明现代物流有限公司 基于cpu-gpu异构架构的图数据分布式处理系统
WO2020019315A1 (zh) * 2018-07-27 2020-01-30 浙江天猫技术有限公司 一种基于图数据的计算运行调度方法、系统、计算机可读介质及设备
CN112912849B (zh) * 2018-07-27 2024-08-13 浙江天猫技术有限公司 一种基于图数据的计算运行调度方法、系统、计算机可读介质及设备
CN112912849A (zh) * 2018-07-27 2021-06-04 浙江天猫技术有限公司 一种基于图数据的计算运行调度方法、系统、计算机可读介质及设备
CN109471721A (zh) * 2018-10-19 2019-03-15 珠海金山网络游戏科技有限公司 一种对象添加方法、装置及设备
CN109542596A (zh) * 2018-10-22 2019-03-29 西安交通大学 一种基于OpenCL内核任务的调度框架
CN109542596B (zh) * 2018-10-22 2023-09-12 西安交通大学 一种基于OpenCL内核任务的调度方法
CN109976903A (zh) * 2019-02-22 2019-07-05 华中科技大学 一种基于层宽内存分配的深度学习异构计算方法和系统
US11568268B2 (en) 2019-02-22 2023-01-31 Huazhong University Of Science And Technology Deep learning heterogeneous computing method based on layer-wide memory allocation and system thereof
WO2020257976A1 (en) * 2019-06-24 2020-12-30 Intel Corporation Apparatus and method for scheduling graphics processing resources
CN110928697A (zh) * 2020-02-13 2020-03-27 北京一流科技有限公司 拓扑图转换系统及其方法
CN112328532A (zh) * 2020-11-02 2021-02-05 长沙景嘉微电子股份有限公司 多gpu通信的方法及装置、存储介质、电子装置
CN112328532B (zh) * 2020-11-02 2024-02-09 长沙景嘉微电子股份有限公司 多gpu通信的方法及装置、存储介质、电子装置
CN112988064A (zh) * 2021-02-09 2021-06-18 华中科技大学 一种面向并发多任务的磁盘图处理方法

Also Published As

Publication number Publication date
CN107122244B (zh) 2020-02-14

Similar Documents

Publication Publication Date Title
CN107122244A (zh) 一种基于多gpu的图数据处理系统及方法
CN113950066B (zh) 移动边缘环境下单服务器部分计算卸载方法、系统、设备
CN108563808B (zh) 基于fpga的异构可重构图计算加速器系统的设计方法
CN107704922A (zh) 人工神经网络处理装置
CN107679620A (zh) 人工神经网络处理装置
CN109918199B (zh) 基于gpu的分布式图处理系统
CN103049241B (zh) 一种提高cpu+gpu异构装置计算性能的方法
CN106503791A (zh) 用于有效神经网络部署的系统和方法
CN106951926A (zh) 一种混合架构的深度学习系统方法及装置
CN105190543A (zh) 针对循环数据流的基于可到达性的协调
JP6834097B1 (ja) 推論のニューラルネットワークアクセラレータのハードウェア固有分割
CN104375882B (zh) 匹配于高性能计算机结构的多级嵌套数据驱动计算方法
CN108418858B (zh) 一种面向Geo-distributed云存储的数据副本放置方法
CN109800092A (zh) 一种共享数据的处理方法、装置及服务器
CN111352727A (zh) 一种应用于图像混合集群处理系统的图像处理方法
JP7492555B2 (ja) 複数の入力データセットのための処理
EP3983950A1 (en) Neural network training in a distributed system
CN114424174A (zh) 用于神经网络加速器的参数高速缓存
CN115086249B (zh) 一种基于深度强化学习的云数据中心资源分配方法
CN103679564A (zh) 一种用于配电网拓扑分析分布式计算的任务分配方法
WO2021115082A1 (zh) 作业调度方法以及作业调度装置
CN111653317B (zh) 基因比对加速装置、方法及系统
CN111680791A (zh) 适用于异构环境中的通信方法、装置、系统
CN108228323A (zh) 基于数据本地性的Hadoop任务调度方法及装置
WO2023087227A1 (zh) 数据处理装置及方法

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