CN108319503A - 分布式异构计算方法及系统 - Google Patents
分布式异构计算方法及系统 Download PDFInfo
- Publication number
- CN108319503A CN108319503A CN201810163809.4A CN201810163809A CN108319503A CN 108319503 A CN108319503 A CN 108319503A CN 201810163809 A CN201810163809 A CN 201810163809A CN 108319503 A CN108319503 A CN 108319503A
- Authority
- CN
- China
- Prior art keywords
- task
- hardware equipment
- data
- isomerization hardware
- available
- 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
- 238000000205 computational method Methods 0.000 title claims abstract description 18
- 238000006317 isomerization reaction Methods 0.000 claims abstract description 157
- 238000012545 processing Methods 0.000 claims abstract description 64
- 238000000034 method Methods 0.000 abstract 1
- 238000004364 calculation method Methods 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5021—Priority
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Multi Processors (AREA)
Abstract
提供了一种分布式异构计算方法和系统,其中该方法包括:获取多个异构硬件设备的配置信息和每个异构硬件设备能够提供的数据处理服务;根据用户提交的计算作业的需求以及多个异构硬件设备中的可用异构硬件设备的配置信息和可用异构硬件设备的可用数据处理服务,生成任务执行序列,其中任务执行序列包括一系列任务,每个任务指示与该任务相对应的可用异构硬件设备和可用数据处理服务;以及多个可用异构硬件设备的可用数据处理服务根据任务执行序列依次执行计算作业,其中任务执行序列中前一任务指示的可用异构硬件设备的输出数据为任务执行序列中后一任务指示的可用异构硬件设备的输入数据。
Description
技术领域
本公开涉及分布式异构计算技术领域,具体涉及一种分布式异构计算方法及系统。
背景技术
现阶段异构硬件平台种类繁多,但大多数数据处理作业都基于单台主机的异构计算平台,或同种类型的异构计算平台构成的分布式计算环境,如安装有图形处理器(GPU)加速卡的工作站,或者GPU集群。然而,每种异构计算平台都有其特长,在复杂计算中,可能会利用到多种异构平台的混合使用,如GPU、现场可编程门阵列(FPGA)、数字信号处理器(DSP)和集成众核(MIC)。当分布式环境中各台主机的异构硬件配置各不相同,对于用户来说,配置执行管理一个作业就会十分不方便。
发明内容
在第一方面中,本公开提供了一种分布式异构计算方法,包括:
获取多个异构硬件设备的配置信息和每个异构硬件设备能够提供的数据处理服务;
根据用户提交的计算作业的需求以及多个异构硬件设备中的可用异构硬件设备的配置信息和可用异构硬件设备的可用数据处理服务,生成任务执行序列,其中任务执行序列包括一系列任务,每个任务指示与该任务相对应的可用异构硬件设备和可用数据处理服务;以及
多个可用异构硬件设备的可用数据处理服务根据任务执行序列依次执行计算作业,其中任务执行序列中前一任务指示的可用异构硬件设备的输出数据为任务执行序列中后一任务指示的可用异构硬件设备的输入数据。
在本公开的一些实施方式中,每个任务还指示数据输入源和数据输出地,其中,前一任务的数据输出地与后一任务的数据输入源相同、前一任务的数据输出地与后一任务的数据输入源之一相同、或前一任务的数据输出地之一与后一任务的数据输入源相同。
在本公开的一些实施方式中,可用构硬件设备的可用数据处理服务根据任务执行序列依次执行计算作业还包括:对于每个可用异构硬件设备,
对输入数据进行编码,以使得经过编码的输入数据适用于可用异构硬件设备;
可用异构硬件设备通过任务执行序列中的任务指示的可用数据处理服务对进过编码的输入数据进行处理;以及
对经过处理的输入数据进行解码,以得到输出数据。
在本公开的一些实施方式中,可用异构硬件设备通过总线或网络进行通信。
在本公开的一些实施方式中,该分布式异构计算方法还包括:
数据处理服务在执行计算作业的过程中上报执行状态,以及
在执行状态为失败时,重新生成任务执行序列;以及在执行状态改变时,重新配置任务执行序列。
在本公开的一些实施方式中,异构硬件设备包括以下中至少之一:中央处理器、图形处理器、现场可编程门阵列、数字信号处理器、集成众核以及专用集成电路。
在第二方面中,本公开还提供了一种分布式异构计算系统,包括:
多个异构硬件设备,用于处理数据;
全局状态存储模块,用于存储多个异构硬件设备的配置信息、每个异构硬件设备能够提供的数据处理服务以及数据处理服务的执行状态;
局部调度器模块,用于收集其所在计算节点的异构硬件设备的配置信息、每个异构硬件设备能够提供的数据处理服务,并用于对异构硬件设备的输入数据进行编码和对异构硬件设备的输出数据进行解码;以及
全局调度器模块,用于接收用户提交的计算作业,并用于根据计算作业的需求以及多个异构硬件设备中的可用异构硬件设备的配置信息和可用异构硬件设备的可用数据处理服务,生成任务执行序列以及将任务执行序列发送至各计算节点的局部调度器模块,以使得可用异构硬件设备的可用数据处理服务根据任务执行序列依次执行计算作业,其中任务执行序列中的每个任务指示与该任务相对应的可用异构硬件设备和可用数据处理服务。
在本公开的一些实施方式中,每个任务还指示数据输入源和数据输出地,其中,前一任务的数据输出地与后一任务的数据输入源相同、前一任务的数据输出地与后一任务的数据输入源之一相同、或前一任务的数据输出地之一与后一任务的数据输入源相同。
在本公开的一些实施方式中,可用异构硬件设备通过总线或网络进行通信。
在本公开的一些实施方式中,异构硬件设备包括以下中至少之一:中央处理器、图形处理器、现场可编程门阵列、数字信号处理器、集成众核以及专用集成电路。
附图说明
附图示出了本公开的示例性实施方式,并与其说明一起用于解释本公开的原理,其中包括了这些附图以提供对本公开的进一步理解,并且附图包括在本说明书中并构成本说明书的一部分。
图1示出了根据本公开实施方式的分布式异构计算方法的示意性流程图;
图2示出了根据本公开实施方式的分布式异构计算系统的示意性框图;以及
图3示出了根据本公开实施方式的分布式异构计算方法的具体实施。
具体实施方式
下面结合附图和实施方式对本公开作进一步的详细说明。可以理解的是,此处所描述的具体实施方式仅用于解释相关内容,而非对本公开的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本公开相关的部分。
需要说明的是,在不冲突的情况下,本公开中的实施方式及实施方式中的特征可以相互组合。下面将参考附图并结合实施方式来详细说明本公开。
图1示出了根据本公开实施方式的分布式异构计算方法的示意性流程图。如图1所示,根据本公开实施方式的分布式异构计算方法包括以下步骤:
S1,获取多个异构硬件设备的配置信息和每个异构硬件设备能够提供的数据处理服务;
S2,根据用户提交的计算作业的需求以及多个异构硬件设备中的可用异构硬件设备的配置信息和可用异构硬件设备的可用数据处理服务,生成任务执行序列;以及
S3,可用异构硬件设备的可用数据处理服务根据任务执行序列依次执行计算作业。
在步骤S1中,异构硬件设备的配置信息可包括异构硬件设备的类型。每个异构硬件设备能够提供一个或多个数据处理服务。步骤S1中提到的多个异构硬件设备可位于一个或多个主机上,本公开对此没有限制。
在步骤S2中生成的任务执行序列包括一系列任务,每个任务包括以下内容:数据输入源、数据输出地、执行任务的主机、执行任务的异构硬件设备、执行任务的数据处理服务等。每个任务的数据输出地为下一任务的输入源、前一任务的数据输出地与后一任务的数据输入源之一相同、或前一任务的数据输出地之一与后一任务的数据输入源相同。
计算作业可包括一系列子作业。每个子作业规定了可用于执行该子作业的异构硬件设备,以及可用于执行该子作业的数据处理服务。此外,每个子作业还可规定可同于执行该子作业的异构硬件设备的优先级。
在步骤S3中,先向任务执行序列中的第一个任务所指示的执行任务的异构硬件设备输入输入数据,该异构硬件设备调用该任务指示的数据处理服务;然后将经过处理的数据向任务执行序列中的下一任务发送。
在一些实施方式中,步骤S3还可包括:对于每个可用异构硬件设备,
对输入数据进行编码,以使得经过编码的输入数据适用于该可用异构硬件设备;
该可用异构硬件设备通过任务执行序列中的任务指示的可用数据处理服务对进过编码的输入数据进行处理;以及
对经过处理的输入数据进行解码,以得到输出数据。
通过对输入异构硬件设备的输入数据进行编码并在对该异构硬件设备输出的输出设备进行解码,使得数据在该分布式异构计算环境中进行传输的过程中具有相同的数据结构,从而实现了数据在各异构硬件设备之间的透明转换。
当下一任务指示的异构硬件设备与执行当前任务的异构硬件设备位于同一主机上时,执行当前任务的可用异构硬件设备与下一任务指示的可用异构硬件设备通过总线进行通信,其中上述的总线包括但不限于PCI、PCI-x、VME等总线。当下一任务指示的可用异构硬件设备与执行当前任务的可用异构硬件设备位于不同主机上时,执行当前任务的可用异构硬件设备与下一任务指示的可用异构硬件设备通过网络进行通信,其中上述的网络包括但不限于以太网、Infiniband等网络。
在一些实施方式中,数据处理服务在执行计算作业的过程中会上报执行状态,以及在执行状态为失败的情况下,会重新生成任务执行序列。在一些实施方式中,当执行状态改变时,实时动态改变当前任务执行的配置。
上述的异构硬件设备包括但不限于:中央处理器(CPU)、图形处理器(GPU)、现场可编程门阵列(FPGA)、数字信号处理器(DSP)、集成众核(MIC)以及专用集成电路(ASIC)。
此外,在根据本公开实施方式的分布式异构计算方法中,输入至异构硬件设备的输入数据可能是独立的数据,也可能是连续的数据流。当输入数据为独立的数据时,异构硬件设备在完成数据处理后将输出数据传送给任务执行序列中下一任务所指示的可用异构硬件设备,从而每个异构硬件设备每次处理的数据是有限的。当输入数据为连续的数据流时,异构硬件设备持续地对输入的数据流进行处理,并将输出数据持续地传送给任务执行序列中下一任务所指示的可用异构硬件设备,从而每个异构硬件设备均持续地处理数据。
通过根据本公开实施方式的分布式异构计算方法,实现了对多种异构硬件设备的使用,便于用户对作业进行配置管理,提高了数据处理能力并降低了功耗。
图2示出了根据本公开实施方式的分布式异构计算系统的示意性框图。如图2所示,根据本公开实施方式的分布式异构计算系统包括:全局状态存储模块201、局部调度器模块202、全局调度器模块203以及异构硬件设备204和异构硬件设备205。
虽然图2中示出了两个异构硬件设备204和205,然而本领域技术人员应理解,根据本公开实施方式的分布式异构计算系统还可包括更多或更少的异构硬件设备。异构硬件设备204和205可用于处理数据。异构硬件设备204和205可包括但不限于:中央处理器(CPU)、图形处理器(GPU)、现场可编程门阵列(FPGA)、数字信号处理器(DSP)、集成众核(MIC)以及专用集成电路(ASIC)等。
全局状态存储模块201用于存储异构硬件设备204和205的配置信息、异构硬件设备204和205能够提供的数据处理服务。此外,全局状态存储模块201还能够存储数据处理服务的执行状态。
局部调度器模块202用于收集其所在计算节点的异构硬件设备204和205的配置信息、异构硬件设备204和205能够提供的数据处理服务,并用于对异构硬件设备204和205的输入数据进行编码,以使得经过编码的输入数据适用于异构硬件设备204和205,以及对异构硬件设备204和205的输出数据进行解码,以使得经过解码的输出数据具有设定的数据结构。通过对输入异构硬件设备的输入数据进行编码并在对该异构硬件设备输出的输出设备进行解码,使得数据在该分布式异构计算环境中进行传输的过程中具有相同的数据结构,从而实现了数据在各异构硬件设备之间的透明转换。此外,局部调度器模块202还用于管理其所在计算节点的数据总线和网络的数据输入输出。局部调度器模块202还用于管理所属异构硬件设备的运行,调度所属异构硬件设备提供的数据处理服务的运行。
虽然在图2中示出了,异构硬件设备204和205对应于同一个局部调度器模块202,然而在另一些实施方式中,异构硬件设备204和205可对应于不同的局部调度器模块,本公开对此并没有限制。
全局调度器模块203用于接收计算作业,并用于根据计算作业的需求、异构硬件设备204和205中的可用异构硬件设备的配置信息以及可用异构硬件设备的可用数据处理服务,生成任务执行序列以及将任务执行序列发送至局部调度器模块202,以使得异构硬件设备204和205中的可用异构硬件设备的可用数据处理服务根据任务执行序列依次执行计算作业。任务执行序列中的每个任务指示与该任务相对应的可用异构硬件设备和可用数据处理服务。此外,每个任务还指示数据输入源、数据输出地、执行任务的主机等。每个任务的数据输出地为下一任务的输入源、前一任务的数据输出地与后一任务的数据输入源之一相同、或前一任务的数据输出地之一与后一任务的数据输入源相同。计算作业可包括一系列子作业。每个子作业规定了可用于执行该子作业的异构硬件设备,以及可用于执行该子作业的数据处理服务。此外,每个子作业还可规定可用于执行该子作业的异构硬件设备的优先级。
当下一任务指示的可用异构硬件设备与执行当前任务的可用异构硬件设备位于同一主机上时,执行当前任务的可用异构硬件设备与下一任务指示的可用异构硬件设备通过总线进行通信,其中上述的总线包括但不限于PCI、PCI-x、VME等总线。当下一任务指示的可用异构硬件设备与执行当前任务的可用异构硬件设备位于不同主机上时,执行当前任务的可用异构硬件设备与下一任务指示的可用异构硬件设备通过网络进行通信,其中上述的网络包括但不限于以太网、Infiniband等网络。
此外,在根据本公开实施方式的分布式异构计算系统中,输入至异构硬件设备的输入数据可能是独立的数据,也可能是连续的数据流。当输入数据为独立的数据时,异构硬件设备在完成数据处理后将输出数据传送给任务执行序列中下一任务所指示的可用异构硬件设备,从而每个异构硬件设备每次处理的数据是有限的。当输入数据为连续的数据流时,异构硬件设备持续地对输入的数据流进行处理,并将输出数据持续地传送给任务执行序列中下一任务所指示的可用异构硬件设备,从而每个异构硬件设备均持续地处理数据。
通过根据本公开实施方式的分布式异构计算系统,实现了对多种异构硬件设备的使用,便于用户对作业进行配置管理,提高了数据处理能力并降低了功耗。
下面将结合附图3对根据本公开的分布式异构计算方法的具体实施进行详细描述。
(1)主机A上的全局状态存储模块201启动;
(2)主机B上的局部调度器模块202启动,并向全局状态存储模块201注册;
(3)局部调度器模块202初始化位于主机B上的异构硬件设备204;
(4)异构硬件设备204通过局部调度器模块202向全局状态存储模块201注册;
(5)局部调度器模块202根据异构硬件设备204的特性,确定异构硬件设备204可以执行T.a.1、T.a.2……等一系列数据处理服务;
(6)局部调度器模块202向全局状态存储模块201注册异构硬件设备204可以提供的数据处理服务T.a.1、T.a.2……;
(7)按(2)-(4),还初始化了分布在主机B上异构硬件设备205,并向全局状态存储模块201注册;
(8)按(5)-(6),局部调度器模块202向全局状态存储模块201注册了异构硬件设备205可以提供的数据处理服务T.b.1、T.b.2……;
(9)主机C上运行着全局调度器模块203;
(10)用户向主机C.0上的全局调度器模块203提交计算作业T,T包括一系列子作业T.1、T.2……;
(11)子作业T.1规定了作业处理的可以分别在异构硬件设备204和205上执行,调用的数据处理服务分别为T.a.1和T.b.1,其中异构硬件设备204的优先级高于异构硬件设备205
(12)全局调度器模块203向全局状态存储模块201查询现阶段可用的异构硬件设备,获知现在异构加速硬件设备204和205都可用,并可用提供T.a.1/T.a.2……T.b.1/T.b.2……等数据处理服务;
(13)全局调度器模块203根据子作业T.1、T.2……中的规定,结合可用的异构硬件设备204和205,以及可提供的数据处理服务T.a.1、T.a.2……T.b.1、T.b.2……,生成任务执行序列。任务执行序列包含一系列任务I.1、I.2……,每个任务I包括如下内容:数据输入源(如主机C),数据输出地(如主机B),任务执行主机(如主机B),执行任务的异构硬件设备(如异构硬件设备204),执行任务的数据处理服务(如T.a.1)。每一个任务的数据输入源,是上一个任务的数据输出地;这样,基于子作业的序列T.1、T.2……生成了I(B,T.a.1)->I(B,T.b.2)->…这样一个任务序列;
(14)全局调度器模块203把任务I下发到具体的主机的局部调度器模块,如局部调度器模块202,除此之外,全局调度器模块203也可以通过远程调用对局部调度器模块202进行管理;
(15)主机的局部调度器模块(如局部调度器模块202)收到任务后,做好数据处理服务的运行准备,建立数据输入输出的通道;
(16)作业T开始执行时,全局调度器模块203向第一个子作业所在的局部调度器模块(如局部调度器模块202)设置输入数据,可能是一组数据文件,或者其他计算设备输出的数据流;
(17)当主机的局部调度器模块(如局部调度器模块202)收到输入数据后,按照目标硬件的要求,完成数据的编码,传输,调用目标硬件(如异构硬件设备204)执行数据处理服务(如T.a.1),传输,和解码。解码后的数据向下一个任务发送;
(18)局部调度器模块维护着一系列通用数据结构,这些通用数据结构可通过局部调度器模块完成各异构硬件设备之间的透明转换,用户数据是这些通用数据结构的组合;
(19)当下一个任务指示同一主机(如主机B)时,这时局部调度器模块(如局部调度器模块202)通过计算机总线(如PCI-e)向下一个执行任务的异构硬件设备输出数据;当下一任务指示于其他主机时,局部调度器模块通过网络向下一局部调度器模块发送数据。如果异构硬件设备包含网络接口功能,能够自行完成网络输入输出操作,局部调度器模块则通过异构硬件设备的驱动对网络接口进行输入输出配置;
(20)异构硬件设备(如异构硬件设备204)以及数据处理服务(如T.a.1)在执行过程中,向全局状态存储模块201报告自身的状态,同时局部调度器模块(如局部调度器模块202)也会把子作业(如T.1)的执行情况向全局状态存储模块201报告,全局调度器模块203根据全局状态存储模块201保存的状态,管理整个作业T的运行状况。当发现部分子作业运行失败后,全局调度器模块203重新部署作业的运行;以及全局调度器模块203也可以根据执行状态的改变,实时改变当前任务执行的配置,动态响应计算环境的变化;
(21)作业T执行完毕后,全局调度器模块203将最终的数据保存在指定位置或以数据流的形式向其他计算设备输出。
本领域技术人员应理解,图3中示出的主机和异构硬件设备的数量均是示例性的,在实际应用中,分布式异构计算系统还可包括更多或更少的主机和异构硬件设备,并且每个主机上可设置有一个或多个异构硬件设备。
本领域的技术人员应当理解,上述实施方式仅仅是为了清楚地说明本公开,而并非是对本公开的范围进行限定。对于所属领域的技术人员而言,在上述公开的基础上还可以做出其它变化或变型,并且这些变化或变型仍处于本公开的范围内。
Claims (10)
1.一种分布式异构计算方法,包括:
获取多个异构硬件设备的配置信息和每个所述异构硬件设备能够提供的数据处理服务;
根据用户提交的计算作业的需求、所述多个异构硬件设备中的可用异构硬件设备的配置信息和所述可用异构硬件设备的可用数据处理服务,生成任务执行序列,其中所述任务执行序列包括一系列任务,每个所述任务指示与该任务相对应的所述可用异构硬件设备和所述可用数据处理服务;以及
所述可用异构硬件设备的可用数据处理服务根据所述任务执行序列依次执行所述计算作业,其中所述任务执行序列中前一任务指示的可用异构硬件设备的输出数据为所述任务执行序列中后一任务指示的可用异构硬件设备的输入数据。
2.根据权利要求1所述的分布式异构计算方法,其特征在于,每个所述任务还指示数据输入源和数据输出地,其中,前一任务的数据输出地与后一任务的数据输入源相同、前一任务的数据输出地与后一任务的数据输入源之一相同、或前一任务的数据输出地之一与后一任务的数据输入源相同。
3.根据权利要求1所述的分布式异构计算方法,其特征在于,所述可用异构硬件设备的可用数据处理服务根据所述任务执行序列依次执行所述计算作业还包括:对于每个可用异构硬件设备,
对输入数据进行编码,以使得经过编码的所述输入数据适用于所述可用异构硬件设备;
所述可用异构硬件设备通过所述任务执行序列中的任务指示的可用数据处理服务对进过编码的所述输入数据进行处理;以及
对经过处理的所述输入数据进行解码,以得到输出数据。
4.根据权利要求3所述的分布式异构计算方法,其特征在于,所述可用异构硬件设备通过总线或网络进行通信。
5.根据权利要求1所述的分布式异构计算方法,还包括:
所述数据处理服务在执行所述计算作业的过程中上报执行状态,以及
在所述执行状态为失败时,重新生成任务执行序列,以及在所述执行状态改变时,重新配置任务执行序列。
6.根据权利要求1所述的分布式异构计算方法,其特征在于,所述异构硬件设备包括以下中至少之一:中央处理器、图形处理器、现场可编程门阵列、数字信号处理器、集成众核以及专用集成电路。
7.一种分布式异构计算系统,包括:
多个异构硬件设备,用于处理数据;
全局状态存储模块,用于存储所述多个异构硬件设备的配置信息、每个所述异构硬件设备能够提供的数据处理服务以及所述数据处理服务的执行状态;
局部调度器模块,用于收集其所在计算节点的异构硬件设备的配置信息、每个异构硬件设备能够提供的数据处理服务,并用于对异构硬件设备的输入数据进行编码和对异构硬件设备的输出数据进行解码;以及
全局调度器模块,用于接收用户提交的计算作业,并用于根据计算作业的需求以及所述多个异构硬件设备中的可用异构硬件设备的配置信息和所述可用异构硬件设备的可用数据处理服务,生成任务执行序列以及将所述任务执行序列发送至各计算节点的所述局部调度器模块,以使得所述可用异构硬件设备的可用数据处理服务根据所述任务执行序列依次执行所述计算作业,其中所述任务执行序列中的每个任务指示与该任务相对应的所述可用异构硬件设备和所述可用数据处理服务。
8.根据权利要求7所述的分布式异构计算系统,其特征在于,每个所述任务还指示数据输入源和数据输出地,其中,前一任务的数据输出地与后一任务的数据输入源相同、前一任务的数据输出地与后一任务的数据输入源之一相同、或前一任务的数据输出地之一与后一任务的数据输入源相同。
9.根据权利要求7所述的分布式异构计算系统,其特征在于,所述可用异构硬件设备通过总线或网络进行通信。
10.根据权利要求7所述的分布式异构计算系统,其特征在于,所述异构硬件设备包括以下中至少之一:中央处理器、图形处理器、现场可编程门阵列、数字信号处理器、集成众核以及专用集成电路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810163809.4A CN108319503B (zh) | 2018-02-27 | 分布式异构计算方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810163809.4A CN108319503B (zh) | 2018-02-27 | 分布式异构计算方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108319503A true CN108319503A (zh) | 2018-07-24 |
CN108319503B CN108319503B (zh) | 2024-06-11 |
Family
ID=
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112202679A (zh) * | 2020-11-17 | 2021-01-08 | 中国人民解放军战略支援部队信息工程大学 | 用于分层网络拓扑自动路由分发的硬件设备量化方法及系统 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101086706A (zh) * | 2006-06-09 | 2007-12-12 | 国际商业机器公司 | 用于选择随机处理器来启动多处理器系统的系统和方法 |
CN101582043A (zh) * | 2008-05-16 | 2009-11-18 | 华东师范大学 | 一种异构计算系统动态任务分配方法 |
CN102360309A (zh) * | 2011-09-29 | 2012-02-22 | 中国科学技术大学苏州研究院 | 片上多核异构系统的调度系统与调度执行方法 |
CN104035819A (zh) * | 2014-06-27 | 2014-09-10 | 清华大学深圳研究生院 | 科学工作流调度处理方法及装置 |
CN104125165A (zh) * | 2014-08-18 | 2014-10-29 | 浪潮电子信息产业股份有限公司 | 一种基于异构集群的作业调度系统及方法 |
US20150279092A1 (en) * | 2014-03-31 | 2015-10-01 | Per Ganestam | Bounding Volume Hierarchy Generation Using a Heterogeneous Architecture |
CN105022670A (zh) * | 2015-07-17 | 2015-11-04 | 中国海洋大学 | 一种云计算平台中的异构分布式任务处理系统及其处理方法 |
CN105808331A (zh) * | 2016-02-29 | 2016-07-27 | 湖南蚁坊软件有限公司 | 一种基于服务器特征的调度方法 |
CN105900064A (zh) * | 2014-11-19 | 2016-08-24 | 华为技术有限公司 | 调度数据流任务的方法和装置 |
CN106055379A (zh) * | 2015-04-09 | 2016-10-26 | 国际商业机器公司 | 用于调度计算任务的方法和系统 |
CN107291538A (zh) * | 2017-06-14 | 2017-10-24 | 中国人民解放军信息工程大学 | 面向任务的拟态云构建方法及基于拟态云的任务调度方法、装置、系统 |
CN107329828A (zh) * | 2017-06-26 | 2017-11-07 | 华中科技大学 | 一种面向cpu/gpu异构集群的数据流编程方法和系统 |
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101086706A (zh) * | 2006-06-09 | 2007-12-12 | 国际商业机器公司 | 用于选择随机处理器来启动多处理器系统的系统和方法 |
CN101582043A (zh) * | 2008-05-16 | 2009-11-18 | 华东师范大学 | 一种异构计算系统动态任务分配方法 |
CN102360309A (zh) * | 2011-09-29 | 2012-02-22 | 中国科学技术大学苏州研究院 | 片上多核异构系统的调度系统与调度执行方法 |
US20150279092A1 (en) * | 2014-03-31 | 2015-10-01 | Per Ganestam | Bounding Volume Hierarchy Generation Using a Heterogeneous Architecture |
CN104035819A (zh) * | 2014-06-27 | 2014-09-10 | 清华大学深圳研究生院 | 科学工作流调度处理方法及装置 |
CN104125165A (zh) * | 2014-08-18 | 2014-10-29 | 浪潮电子信息产业股份有限公司 | 一种基于异构集群的作业调度系统及方法 |
CN105900064A (zh) * | 2014-11-19 | 2016-08-24 | 华为技术有限公司 | 调度数据流任务的方法和装置 |
CN106055379A (zh) * | 2015-04-09 | 2016-10-26 | 国际商业机器公司 | 用于调度计算任务的方法和系统 |
CN105022670A (zh) * | 2015-07-17 | 2015-11-04 | 中国海洋大学 | 一种云计算平台中的异构分布式任务处理系统及其处理方法 |
CN105808331A (zh) * | 2016-02-29 | 2016-07-27 | 湖南蚁坊软件有限公司 | 一种基于服务器特征的调度方法 |
CN107291538A (zh) * | 2017-06-14 | 2017-10-24 | 中国人民解放军信息工程大学 | 面向任务的拟态云构建方法及基于拟态云的任务调度方法、装置、系统 |
CN107329828A (zh) * | 2017-06-26 | 2017-11-07 | 华中科技大学 | 一种面向cpu/gpu异构集群的数据流编程方法和系统 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112202679A (zh) * | 2020-11-17 | 2021-01-08 | 中国人民解放军战略支援部队信息工程大学 | 用于分层网络拓扑自动路由分发的硬件设备量化方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113098773B (zh) | 数据处理方法、装置及系统 | |
CN104428752A (zh) | 将虚拟机流卸载至物理队列 | |
CN113708972B (zh) | 一种服务功能链部署方法、装置、电子设备及存储介质 | |
CN107766148A (zh) | 一种异构集群及任务处理方法和装置 | |
TWI547817B (zh) | 叢集運算架構的資源規劃方法、系統及裝置 | |
CN108667657B (zh) | 一种面向sdn的基于局部特征信息的虚拟网络映射方法 | |
CN110275761A (zh) | 调度方法、装置和主节点 | |
CN104899085B (zh) | 一种数据处理方法和装置 | |
CN102334112A (zh) | 用于虚拟机网络的方法和系统 | |
WO2016168032A1 (en) | Systems and methods for executing software threads using soft processors | |
CN105989538A (zh) | 一种金融产品自动交易系统及自动交易方法 | |
CN102334104B (zh) | 一种基于多核系统的同步处理方法及装置 | |
CN115134371A (zh) | 包含边缘网络算力资源的调度方法、系统、设备及介质 | |
CN108028806A (zh) | 网络功能虚拟化nfv网络中分配虚拟资源的方法和装置 | |
CN107291638A (zh) | 并行处理装置和控制通信的方法 | |
CN110532060A (zh) | 一种混合网络环境数据采集方法及系统 | |
CN104270453B (zh) | 一种多级服务器间数据通信方法及服务器 | |
CN110958192B (zh) | 一种基于虚拟交换机的虚拟数据中心资源分配系统及方法 | |
CN103299298A (zh) | 处理业务的方法和系统 | |
CN108319503A (zh) | 分布式异构计算方法及系统 | |
CN115866066A (zh) | 数据发送方法及装置、非易失性存储介质、电子设备 | |
CN113553279B (zh) | 一种rdma通信加速集合通信的方法及系统 | |
CN106533720B (zh) | 网络服务请求的编译方法、编译装置和控制器 | |
CN109829004A (zh) | 基于无人车的数据处理方法、装置、设备以及存储介质 | |
CN114301907A (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 |