CN113434548B - 一种基于Spark的大规模数据流分析方法及系统 - Google Patents

一种基于Spark的大规模数据流分析方法及系统 Download PDF

Info

Publication number
CN113434548B
CN113434548B CN202110711332.0A CN202110711332A CN113434548B CN 113434548 B CN113434548 B CN 113434548B CN 202110711332 A CN202110711332 A CN 202110711332A CN 113434548 B CN113434548 B CN 113434548B
Authority
CN
China
Prior art keywords
distributed
data
computing
analysis
spark
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
Application number
CN202110711332.0A
Other languages
English (en)
Other versions
CN113434548A (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.)
Beijing Institute of Technology BIT
Original Assignee
Beijing Institute of Technology BIT
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 Beijing Institute of Technology BIT filed Critical Beijing Institute of Technology BIT
Priority to CN202110711332.0A priority Critical patent/CN113434548B/zh
Publication of CN113434548A publication Critical patent/CN113434548A/zh
Application granted granted Critical
Publication of CN113434548B publication Critical patent/CN113434548B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24568Data stream processing; Continuous queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2471Distributed queries
    • 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/542Event management; Broadcasting; Multicasting; Notifications

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Multimedia (AREA)
  • Multi Processors (AREA)

Abstract

本发明公开一种基于Spark的大规模数据流分析方法及系统,方法包括,基于Spark构建分布式计算框架,通过分布式计算框架对目标代码进行分布式数据流分析,其中,分布式数据流分析,包括,过程内预处理阶段,分布式过程间数据整合阶段;系统包括,数据采集模块,数据处理模块,数据分析模块,数据存储模块,数据显示模块;本发明采取两级并行策略,多入口地进行并行计算,具有高度的可扩展性,同时考虑了分布式计算的负载均衡问题,能够充分利用分布式集群算力优势,加速静态数据流分析。

Description

一种基于Spark的大规模数据流分析方法及系统
技术领域
本发明涉及代码数据流分析领域,具体涉及一种基于Spark的大规模数据流分析方法及系统。
背景技术
随着软件不断发展迭代,软件规模也在飞速增长,随之而来的问题就是软件漏洞也逐渐增多。大规模(百万行)的程序中由于存在复杂的过程间调用,大大增加了整体分析的时间和难度。而且过程间数据流分析需要通过上下文敏感来保证分析的有效性,因此需要产生和保留许多不同的调用上下文。然而随着程序规模的不断增加,使得分析时计算和内存资源吃紧。因此大规模程序的静态分析尤其是数据流分析当前仍然是一个很有挑战性的问题。针对这种现状,急需一种分布式大规模代码数据流分析算法,满足上述的技术需求。
发明内容
本发明的目的在于在当前的软件规模日渐增大的环境下,充分利用分布式的计算资源,准确而又快速的完成对于百万行甚至是千万行级别代码量的程序的分析。
根据上述技术目的,本发明提供了一种基于Spark的大规模数据流分析方法,包括以下步骤:
基于Spark构建分布式计算框架,通过分布式计算框架对目标代码进行分布式数据流分析,其中,
分布式数据流分析,包括,
分布式过程内预处理阶段:将分布式数据集在计算节点的任务执行器中并行地进行所有函数的过程内数据流计算;
分布式过程间数据整合阶段:利用过程间调用信息迭代地更新过程内现有的数据流状态。当数据流状态稳定时停止迭代。
优选地,Master节点对目标代码进行单机分析,创建过程间调用图和过程内控制流图。
优选地,在对目标代码进行单机分析后,基于分布式数据流分析任务集合,通过对分布式过程的函数级别进行任务划分,构建分布式数据集。
将所述分布式数据集分发到若干个所述计算节点,并通过广播方式,传输函数控制流图集合到若干个所述计算节点的所述任务执行器中并行计算;其中,在广播的过程中,对分布式数据集进行裁剪,舍弃与计算无关的部分。
优选地,在基于Spark构建分布式计算框架的过程中,基于函数任务集合构建Spark的RDD。
优选地,在分布式过程间数据整合阶段中,Master节点将计算任务委派给分布式计算框架的Slaves集群,分布式计算框架的Redis集群通过与Slaves集群进行数据交互,获得集群计算结果,其中,Master节点用于对分布式计算框架进行全局控制,Slaves集群用于任务计算与结果返回,Redis集群用于通过在分布式环境中实现内存的共享,实现整个计算集群的状态一致。
优选地,在分布式环境中,对于中间数据流边保存,使用基于内存的分布式数据库Redis作为缓存,分布式计算框架生成的数据流边存储到分布式数据库Redis中。
一种基于Spark的大规模数据流分析系统,包括,
数据采集模块,用于获得目标代码;
数据处理模块,用于通过构建分布式计算框架,根据目标代码获得分布式数据集;
数据分析模块,用于根据分布式数据集进行并行分布式计算,获得目标代码的数据流分析结果;
数据存储模块,用于存储中间数据流分析结果;
数据显示模块,用于显示数据流分析结果以及分布式计算进度,其中,分布式计算进度用于表示在分布式过程中,分布式数据集进行分布计算的计算进度。
优选地,数据处理模块包括,
第一数据生成单元,用于获得过程间调用图;
第二数据生成单元,用于获得过程内控制流图;
函数分割单元,用于基于过程间调用图、过程内控制流图,通过对分布式过程中的函数级别进行任务划分,构建分布式数据集;
广播单元,用于将分布式过程内控制流图集合通过广播方式进行数据传输。
优选地,数据分析模块包括,
Master节点单元,用于对分布式计算框架进行全局控制,
Slaves集群单元,用于分布式计算框架的任务计算与结果返回,
Redis集群单元,用于通过在分布式环境中实现内存的共享,实现整个计算集群的状态一致。
本发明公开了以下技术效果:
本发明提供的方法采取两级并行策略,多入口地进行并行计算,具有高度的可扩展性,同时考虑了分布式计算的负载均衡问题,能够充分利用分布式集群算力优势,加速静态数据流分析。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还根据这些附图获得其他的附图。
图1为本发明实施例所述的函数级别划分图;
图2为本发明实施例所述的高复杂度函数分解图;
图3为本发明实施例所述的分布式算法流程图;
图4为本发明实施例所述的分布式算法实现框架图;
图5为本发明所述的系统框架图;
图6为本发明所述的方法流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1-6所示,本发明提供了一种基于Spark的大规模数据流分析方法,包括以下步骤:
基于Spark构建分布式计算框架,通过分布式计算框架对目标代码进行分布式数据流分析,其中,
分布式数据流分析,包括,
分布式过程内预处理阶段:将分布式数据集在计算节点的任务执行器中并行地进行所有函数的过程内数据流计算,忽略过程间数据流分析;
分布式过程间数据整合阶段:用过程间调用信息迭代地更新现有的过程内数据流数据,当数据流状态稳定时停止迭代。
基于Master节点,对目标代码进行单机分析,创建过程内的控制流图以及的过程间调用图。
在对目标代码进行单机分析后,基于分布式过程的函数级别进行任务划分,构建分布式数据集。
将所述分布式数据集分发到若干个所述计算节点,并通过广播方式,传输函数控制流图集合到若干个所述计算节点的所述任务执行器中并行计算;其中,在广播的过程中,对分布式数据集进行裁剪,舍弃与计算无关的部分。
在基于Spark构建分布式计算框架的过程中,基于函数任务集合构建Spark的RDD。
在分布式过程间数据整合阶段中,Master节点将计算任务委派给分布式计算框架的Slaves集群,分布式计算框架的Redis集群通过与Slaves集群进行数据交互,获得集群计算结果,其中,Master节点用于对分布式计算框架进行全局控制,Slaves集群用于任务计算与结果返回,Redis集群用于通过在分布式环境中实现内存的共享,实现整个计算集群的状态一致。
在分布式环境中,对于中间数据流边保存,使用基于内存的分布式数据库Redis作为缓存,分布式计算框架生成的数据流边存储到分布式数据库Redis中。
一种基于Spark的大规模数据流分析系统,包括,
数据采集模块,用于获得目标代码;
数据处理模块,用于通过构建分布式计算框架,根据目标代码获得分布式数据集;
数据分析模块,用于根据分布式数据集进行并行分布式计算,获得目标代码的数据流分析结果;
数据存储模块,用于存储中间数据流分析结果;
数据显示模块,用于显示数据流分析结果以及分布式计算进度,其中,分布式计算进度用于表示在分布式过程中,分布式数据集进行分布计算的计算进度。
数据处理模块包括,第一数据生成单元,用于获得过程间调用图;第二数据生成单元,用于获得过程内控制流图;函数分割单元,用于基于过程间调用图、过程内控制流图,通过对分布式过程中的函数级别进行任务划分,构建分布式数据集;广播单元,用于将分布式过程内控制流图集合通过广播方式进行数据传输。
数据分析模块包括,Master节点单元,用于对分布式计算框架进行全局控制;Slaves集群单元,用于分布式计算框架的任务计算与结果返回;Redis集群单元,用于通过在分布式环境中实现内存的共享,实现整个计算集群的状态一致。
实施例1:本发明设计了一种能够快速分析大规模程序的分布式大规模数据流分析算法。该算法主要包含两个阶段并分别采用不同级别并行策略:使用函数级并行的过程内预处理阶段和使用边级并行的过程间数据流整合阶段。在过程内预处理阶段,不再采用单入口分析的形式,而是对所有函数进行分布式并行的过程内分析,暂时忽略过程间调用对数据流分析的影响。待检测程序中所有函数被分发到不同的计算节点上进行分布式的计算。函数级预处理示意图如图1所示。由主节点将函数任务集合分发到不同的计算节点上,每一个计算节点并行地处理任务集中的函数。在任务分发前,对于内部复杂度较高的函数,将其按照变量划分成多个复杂程度(函数复杂度=函数语句数*基本块数)低函数,用划分后的函数代替原先的函数,解决计算节点负载不均衡的问题。高复杂度函数分解示意图如图2所示。
在过程间数据流整合阶段利用过程间调用信息迭代地更新过程内现有的数据流状态,这个过程中将计算出的数据流退出边集合作为任务集returnFunc,进行边级的分布式并行计算,当生成新的数据流边时,会传递到程序的退出结点,因此可以用新的退出边生成作为迭代停止的标志。没有新的退出边生成是,即全局数据流处于稳定状态。
分布式算法整体流程图如图3所示。分布式大规模数据流分析算法能够在保证分析结果正确的情况下,利用分布式计算资源实现对数据流分析的加速。
分布式算法需要使用分布式集群环境实现。分布式的环境经常需要考虑的三个方面分别是:分布式计算、节点通信和共享存储。应该选择何种计算框架,如何在节点之间传播数据,如何让节点之间能够保持全局的信息一致性是本文需要研究解决的。首先,使用Spark作为分布式计算框架,Spark内存计算特性是它具有极高的执行效率。用函数任务集合构建Spark的RDD,利用分布式计算框架的任务调度器分发到各个节点上的任务执行器进行分布式计算。其次,数据流计算需要某些基础信息,例如函数控制流图。对于这些计算的基础信息,如果每一个节点需要使用时动态生成,则会消耗很多时间,因此使用广播的方式将这些信息由主节点广播到各个计算节点的任务执行器中,以这种方式在节点之间传递信息,减少不必要的时间消耗。同时在广播的过程中对分发的基础数据进行裁剪,舍弃与计算无关的部分,减少通信的成本。最后,传统的算法中需要使用全局变量来保存中间数据流边结果(函数内某变量当前的数据流状态)。在分布式环境中,对于中间数据流边保存,使用基于内存的分布式数据库Redis作为缓存,所有生成的数据流边都存储到Redis中,计算节点需要使用或更新数据流边时也可以实时查询、修改,从而保证全局数据流状态的一致性。
我们提出了一种分布式架构方案来实现提出的分布式大规模数据流算法,架构图如图4所示。
Master节点首先单机分析传入的目标代码,创建过程内的控制流图和过程间调用图,在函数中添加过程内控制信息。其次,对大函数划分,保证负载平衡,再按照函数级别做任务划分。同时,对函数内部一些不需要的属性进行剪枝,将函数集合通过广播的方式到Slaves的节点上。最后,Master接收集群计算的结果,即所有节点、变量的数据流状态。Master节点并不直接访问Redis集群,而是将计算任务委派给Slaves集群,两个集群之间进行交互,Master只作为全局的控制器,掌握任务进程。Slaves集群都是计算节点,主要功能是任务计算与结果返回。Redis集群主要功能就是在分布式环境中实现内存的共享,实现整个计算集群的状态一致。
针对传统基于WorkList的图可达数据流算法所存在的缺陷:只能单入口顺序执行并且由于共享变量的同步操作造成大量时间消耗,提出分布式大规模数据流分析算法。该算法采取两级并行策略,多入口地进行并行计算。新的算法具有高度的可扩展性,同时考虑了分布式计算的负载均衡问题,能够充分利用分布式集群算力优势,加速静态数据流分析。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (4)

1.一种基于Spark的大规模数据流分析方法,其特征在于,包括以下步骤:
基于Spark构建分布式计算框架,通过所述分布式计算框架对目标代码进行分布式数据流分析,Master节点对所述目标代码进行单机分析,创建过程间调用图和过程内控制流图,其中,
所述分布式数据流分析,包括,
分布式过程内预处理阶段:将分布式数据集在计算节点的任务执行器中并行地进行所有函数的过程内数据流计算;
分布式过程间数据整合阶段:利用过程间调用信息迭代地更新过程内现有的数据流状态,当数据流状态稳定时停止迭代;
将所述分布式数据集分发到若干个所述计算节点,并通过广播方式,传输函数控制流图集合到若干个所述计算节点的所述任务执行器中并行计算;其中,在广播的过程中,对所述分布式数据集进行裁剪,舍弃与计算无关的部分;
在基于所述Spark构建所述分布式计算框架的过程中,基于函数任务集合,构建Spark的RDD;
在所述分布式过程间数据整合阶段中,所述Master节点将计算任务委派给所述分布式计算框架的Slaves集群,所述分布式计算框架的Redis集群通过与所述Slaves集群进行数据交互,获得所述集群计算结果,其中,所述Master节点用于对所述分布式计算框架进行全局控制,所述Slaves集群用于任务计算与结果返回,所述Redis集群用于通过在分布式环境中实现内存的共享,实现整个计算集群的状态一致。
2.根据权利要求1所述的一种基于Spark的大规模数据流分析方法,其特征在于,
在对所述目标代码进行单机分析后,基于所述分布式数据流分析任务集合,通过对所述分布式过程的函数级别进行任务划分,构建所述分布式数据集。
3.根据权利要求1所述的一种基于Spark的大规模数据流分析方法,其特征在于,
在所述分布式环境中,对于中间数据流边保存,使用基于内存的分布式数据库Redis作为缓存,所述分布式计算框架生成的数据流边存储到所述分布式数据库Redis中。
4.一种基于Spark的大规模数据流分析系统,其特征在于,包括,
数据采集模块,用于获得目标代码;通过Master节点单元对所述目标代码进行单机分析,创建过程间调用图和过程内控制流图;
数据处理模块,用于通过构建分布式计算框架,根据所述目标代码获得分布式数据集;在构建所述分布式计算框架的过程中,基于函数任务集合,构建Spark的RDD;
所述数据处理模块包括,
第一数据生成单元,用于获得过程间调用图;
第二数据生成单元,用于获得过程内控制流图;
函数分割单元,用于基于所述过程间调用图、所述过程内控制流图,通过对所述分布式过程中的函数级别进行任务划分,构建所述分布式数据集;
广播单元,用于将分布式过程内控制流图集合通过广播方式进行数据传输;
数据分析模块,用于根据所述分布式数据集进行并行分布式计算,获得所述目标代码的数据流分析结果;所述分布式计算的过程包括:将所述分布式数据集分发到若干个计算节点,并通过广播方式,传输函数控制流图集合到若干个所述计算节点的所述任务执行器中并行计算;其中,在广播的过程中,对所述分布式数据集进行裁剪,舍弃与计算无关的部分;
所述数据分析模块包括,
Master节点单元,用于对所述分布式计算框架进行全局控制,
Slaves集群单元,用于所述分布式计算框架的任务计算与结果返回,
Redis集群单元,用于通过在分布式环境中实现内存的共享,实现整个计算集群的状态一致;
所述Master节点单元将计算任务委派给所述分布式计算框架的Slaves集群单元,所述分布式计算框架的Redis集群单元通过与所述Slaves集群单元进行数据交互,获得集群计算结果;
数据存储模块,用于存储中间数据流分析结果;
数据显示模块,用于显示所述数据流分析结果以及所述分布式计算进度,其中,所述分布式计算进度用于表示在分布式过程中,所述分布式数据集进行分布计算的计算进度。
CN202110711332.0A 2021-06-25 2021-06-25 一种基于Spark的大规模数据流分析方法及系统 Active CN113434548B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110711332.0A CN113434548B (zh) 2021-06-25 2021-06-25 一种基于Spark的大规模数据流分析方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110711332.0A CN113434548B (zh) 2021-06-25 2021-06-25 一种基于Spark的大规模数据流分析方法及系统

Publications (2)

Publication Number Publication Date
CN113434548A CN113434548A (zh) 2021-09-24
CN113434548B true CN113434548B (zh) 2022-06-17

Family

ID=77754449

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110711332.0A Active CN113434548B (zh) 2021-06-25 2021-06-25 一种基于Spark的大规模数据流分析方法及系统

Country Status (1)

Country Link
CN (1) CN113434548B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114579183B (zh) * 2022-04-29 2022-10-18 之江实验室 一种用于分布式计算的作业分解处理方法
US11907693B2 (en) 2022-04-29 2024-02-20 Zhejiang Lab Job decomposition processing method for distributed computing
CN115455036B (zh) * 2022-11-14 2023-01-10 腾讯科技(深圳)有限公司 联合语句的处理方法、装置、设备和介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101667135A (zh) * 2009-09-30 2010-03-10 浙江大学 一种交互式并行化编译系统及其编译方法
CN107329982A (zh) * 2017-06-01 2017-11-07 华南理工大学 一种基于分布式列式存储的大数据并行计算方法及系统
CN107766214A (zh) * 2017-10-12 2018-03-06 南京熊猫电子股份有限公司 基于spark技术的移动终端数据流处理方法及系统
US9996662B1 (en) * 2015-04-06 2018-06-12 EMC IP Holding Company LLC Metagenomics-based characterization using genomic and epidemiological comparisons
CN112800425A (zh) * 2021-02-03 2021-05-14 南京大学 一种基于图计算的代码分析的方法和装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109408389B (zh) * 2018-10-30 2020-10-16 北京理工大学 一种基于深度学习的代码缺陷检测方法及装置
CN110134714B (zh) * 2019-05-22 2021-04-20 东北大学 适用于大数据迭代计算的分布式计算框架缓存索引方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101667135A (zh) * 2009-09-30 2010-03-10 浙江大学 一种交互式并行化编译系统及其编译方法
US9996662B1 (en) * 2015-04-06 2018-06-12 EMC IP Holding Company LLC Metagenomics-based characterization using genomic and epidemiological comparisons
CN107329982A (zh) * 2017-06-01 2017-11-07 华南理工大学 一种基于分布式列式存储的大数据并行计算方法及系统
CN107766214A (zh) * 2017-10-12 2018-03-06 南京熊猫电子股份有限公司 基于spark技术的移动终端数据流处理方法及系统
CN112800425A (zh) * 2021-02-03 2021-05-14 南京大学 一种基于图计算的代码分析的方法和装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
BigSpa: An Efficient Interprocedural Static Analysis;Zhiqiang Zuo;《2019 IEEE International Parallel and Distributed Processing Symposium (IPDPS)》;20190531;全文 *
静态程序分析并行;左志强;《软件学报》;20200407;全文 *

Also Published As

Publication number Publication date
CN113434548A (zh) 2021-09-24

Similar Documents

Publication Publication Date Title
CN113434548B (zh) 一种基于Spark的大规模数据流分析方法及系统
Zheng et al. Distdgl: distributed graph neural network training for billion-scale graphs
US8209703B2 (en) Apparatus and method for dataflow execution in a distributed environment using directed acyclic graph and prioritization of sub-dataflow tasks
Kruatrachue et al. Grain size determination for parallel processing
Elser et al. An evaluation study of bigdata frameworks for graph processing
Shetti et al. Optimization of the HEFT algorithm for a CPU-GPU environment
Kamthe et al. A stochastic approach to estimating earliest start times of nodes for scheduling DAGs on heterogeneous distributed computing systems
CN110705716A (zh) 一种多模型并行训练方法
Li et al. Breaking (global) barriers in parallel stochastic optimization with wait-avoiding group averaging
CN103810041A (zh) 一种支持动态伸缩的并行计算的方法
CN112051981B (zh) 一种数据流水线计算路径结构及单线程数据流水线系统
Zafari et al. Programming models based on data versioning for dependency-aware task-based parallelisation
CN113407333B (zh) Warp级别调度的任务调度方法、系统、GPU及设备
Giri et al. HyPR: hybrid page ranking on evolving graphs
Lienen et al. Task mapping for hardware-accelerated robotics applications using reconros
CN113076190A (zh) 一种基于cpu与gpu协作的计算方法
Baer et al. Parallel minimum spanning forest computation using sparse matrix kernels
Mateeva et al. Android content providers in mobile distributed computing
Searles et al. Creating a portable, high-level graph analytics paradigm for compute and data-intensive applications
Hosseinzadeh et al. An effective duplication-based task-scheduling algorithm for heterogeneous systems
Wang et al. DPX10: An efficient X10 framework for dynamic programming applications
Wu et al. Multiple two-phase data processing with mapreduce
CN113918211B (zh) 一种工业设备对象数据模型的执行方法、装置及设备
Pogrebnoy Constructing graph models for software system development and analysis
Chantamas et al. A multiple associative model to support branches in data parallel applications using the manager-worker paradigm

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