CN111782376A - 一种面向动态部分可重构片上系统的列表式软硬件划分方法 - Google Patents

一种面向动态部分可重构片上系统的列表式软硬件划分方法 Download PDF

Info

Publication number
CN111782376A
CN111782376A CN202010711697.9A CN202010711697A CN111782376A CN 111782376 A CN111782376 A CN 111782376A CN 202010711697 A CN202010711697 A CN 202010711697A CN 111782376 A CN111782376 A CN 111782376A
Authority
CN
China
Prior art keywords
task
time
fpga
software
hardware
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
CN202010711697.9A
Other languages
English (en)
Other versions
CN111782376B (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.)
National University of Defense Technology
Original Assignee
National University of Defense 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 National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN202010711697.9A priority Critical patent/CN111782376B/zh
Publication of CN111782376A publication Critical patent/CN111782376A/zh
Application granted granted Critical
Publication of CN111782376B publication Critical patent/CN111782376B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7867Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
    • G06F15/7871Reconfiguration support, e.g. configuration loading, configuration switching, or hardware OS
    • 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/5044Allocation 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 hardware capabilities
    • 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/5055Allocation 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 software capabilities, i.e. software resources associated or available to the machine
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本发明涉及一种面向动态部分可重构片上系统的列表式软硬件划分方法,为解决现有技术时间复杂度高的问题。该方法通过对组成应用的任务节点进行调度和映射完成整个应用的软硬件划分与调度以及FPGA动态部分可重构区域的划分。本发明所提出的方法利用构建任务优先级列表、贪心策略、任务插入策略等优化策略,在提升求解性能的同时,求解时间复杂度上有较大优势。在5G技术、大数据、机器学习等工程实际应用中有更加实际的应用价值和应用前景。

Description

一种面向动态部分可重构片上系统的列表式软硬件划分方法
技术领域
本发明涉及面向动态部分可重构片上系统的软硬件划分方法,特别是一种面向动态部分可重构片上系统的列表式软硬件划分方法。
背景技术
近些年随着5G技术、机器学习、大数据、物联网的兴起,对硬件设备的算力提出了更高的要求,软件应用的低时延响应也需要高效的硬件设备提供可靠的算力支撑。目前世界上已有的计算设备可分为软件设备和硬件设备,其中软件设备以通用处理器(GeneralPurpose Processor,GPP)为代表,可加载操作系统,任务以串行方式执行;硬件设备以FPGA为代表,通过更改内部的逻辑单元配置来更改逻辑功能。两类计算设备各有特点,通用处理器的运算能力逊于FPGA,更适合控制与调度,而FPGA拥有更多的乘法器,在计算能力上更有优势。因此,软硬件的协同设计对于发挥设备的计算性能格外重要。
FPGA的重构方式可以分为静态重构和动态重构。静态重构时,FPGA需断开之前的运行状态与内部电路连接,通过下载新的配置文件来完成功能更新和切换;动态重构指FPGA在运行时进行动态配置,即改变电路状态的同时仍保持电路的工作状态。FPGA的动态部分可重构允许FPGA在运行过程中动态的更改部分逻辑单元的配置而不影响或者中止其它正在执行的逻辑单元,DPR FPGA重构粒度更小,FPGA的计算资源利用率更高。应用软件在DPR FPGA上部署时,可以并行执行,有效提升了软件的执行效率,减少了执行开销。软件应用在DPR FPGA与CPU组成的异构计算平台上执行时,其执行顺序和执行方式的不同会影响整个系统的性能,因此,软硬件划分是系统高性能的重要保障。
采用混合整数线性规划(Mix Integer Linear Programming,MILP)、整数线性规划(Integer Linear Programming,ILP)或者一些元启发式计算方法可以得到上述软硬件划分问题的最优解或者次优解,但随着应用规模的增大,求解一个中等应用需要数十小时,不符合实际情况需求。本发明提出一种可有效降低软硬件划分与调度时间复杂度的方法,可以在较短的时间内求解出问题的较优解使系统综合性能更加突出。
发明内容
为了克服采用ILP、MILP、元启发式方法求解大规模应用的软硬件划分与调度策略时存在的时间复杂度高的不足,本发明提出一种面向动态部分可重构片上系统的列表式软硬件划分方法。本方法通过求解任务权值并根据其大小建立单项排序的任务优先级列表,应用贪心策略和任务插入策略求解问题的最终解。本方法的时间复杂度较低,有效提升了软硬件划分与调度的效率。
本发明提出的软硬件划分方法针对采用有向无环图(Directed AcyclicGraphs,DAG)建模的应用。软硬件划分的流程包括任务调度、任务映射、FPGA可重构区域的划分三个方面,其中任务映射是确定任务的执行方式(任务在软件执行或在硬件执行),任务调度是确定任务的执行顺序和重构顺序(若在硬件执行),FPGA可重构区域的划分是确定FPGA可重构子区域的数量和大小。上述三个方面共同构成了软硬件划分的全部流程,只有使其相互之间协同设计才能获得更好的划分与调度结果。由于求解过程中使用贪心策略而非随机搜索策略故求解时间有大幅降低,且不会陷入局部最优解。
针对提高计算资源利用率的问题,本发明使用任务插入策略,复用时间空闲的计算资源并与上述任务调度、任务映射、FPGA可重构区域的划分相结合,提出了完整的软硬件划分与调度方案。
本发明所采用的技术方案是:通过计算任务的权值按照单向排序建立基于任务优先级的调度列表,使用贪心策略求解任务的最早结束时间,映射过程中完成FPGA的动态区域划分。本方法包括下述内容:
1.系统建模;
2.基于任务优先级的列表式软硬件划分方法。
本发明的有益效果:
本发明提出了一种面向动态部分可重构片上系统的列表式软硬件划分方法,应用于动态部分可重构片上系统中,通过一种基于任务优先级的列表计算方法可以将一个复杂应用的DAG模型建模为有序的任务列表。通过对列表中的任务逐个求解,完成其调度、映射以及FPGA的区域划分,最终完成整个DAG模型的软硬件的划分与调度。降低了问题的复杂度,能有效降低大中型规模应用的求解时间,具有广泛的应用基础和应用前景。
附图说明
图1为支持动态部分可重构的异构片上系统,
图2为应用的DAG模型,
图3为任务插入策略示意图,
图4为示例应用的调度结果。
具体实施方式
本发明基于动态部分可重构(Dynamic Partially Reconfigurable,DPR)可编程逻辑门阵列(Field Programmable Gate Array,FPGA)与CPU的异构系统上的软硬件的划分与调度。该方法使用基于任务优先级的列表式启发式算法设计,时间复杂度相较于同类问题的解决方法有显著降低,划分与调度结果也有较大优势。面临大规模应用时具有较大的灵活性和实际应用价值。本方法具体包括下述步骤:
1.系统建模
1.1计算平台模型
系统的硬件计算平台由一块微处理器和一块支持动态部分可重构功能的FPGA组成。
K=(P,H) (1)
其中P代表任务串行执行的CPU,H={PR0,PR1,......,PRk}代表组成FPGA的多个可重构区域的集合;
1.2应用建模
将应用建模为有向无环图DAG,一个DAG由T,E两部分组成,可表示为G=(T,E)。其中T={t0,t1,......,tn-1,tn},表示组成应用的任务节点集合,E={e0,e1,......,em-1,em}是任务节点之间相互依赖关系边的集合。每个任务节点ti∈T,有4个基本属性,ti=(hwt,swt,rct,clbnum),hwt为节点在硬件上的执行开销,swt为节点在软件上的执行开销,rct是节点在FPGA上的重构时间,其大小与重构的CLB资源数量成正比,clbnum为任务节点在FPGA上执行所需的CLB资源数量;每条边ei∈E,ei=(parentt,childt,costpc),parentt表示该依赖边指向的父任务节点,childt表示该依赖边指向的子任务节点,costpc是父任务与子任务之间的通信时间;
1.3约束条件
(1)任务在P上只能串行执行;
(2)任务在H上重构时,重构端口不能复用,同一时间段内只能重构一个任务;
(3)任务在PRj上执行时,PRj的资源数量大于任务执行所需的资源数量;
(4)任务映射时只能选择P或者H之一,且只能映射一次;
(5)具有数据依赖关系的任务,需要等所有父任务执行结束且通信完毕后才能执行;
(6)任务在H上执行时,需要重构完成后才能开始执行;
(7)同一时间H上执行的所有任务的资源总量小于FPGA的总的资源数量;
2.基于任务优先级的列表式软硬件划分方法
基于上述软件模型和硬件模型进行软硬件划分时,应在满足1.3节约束条件的基础上尽可能的减少总的调度长度和求解时间。本文提出的基于任务优先级的列表式软硬件划分方法步骤如下:
步骤1:建立基于任务优先级的单向排序调度列表
Figure BDA0002596774620000041
为任务ti的平均执行时间,costi为ti的父任务到ti的数据传输时延(通信时延),datai为传输的数据量,B表示传输速率;
Figure BDA0002596774620000042
Figure BDA0002596774620000043
Figure BDA0002596774620000044
blevel(i)为任务ti的权值,childs表示ti的子任务集合。exits表示DAG中没有子任务的节点集合,通过计算所有任务节点的blevel(i),并按照其值大小递减排序,得到待调度的任务拓扑排序列表;
步骤2:计算任务的数据准备时间
已知计算单元k,k∈P or k∈H,DRTi,k为任务在计算单元k上的数据准备时间也称为任务最早开始执行时间的理论值。DRTi,k的大小与任务的父任务结束时间和节点之间的通信时间有关。
Figure BDA0002596774620000051
tft(j)为任务的结束时间,parents(i)表示其所有父任务节点的集合,若其父任务映射在k,此时由于传输速率较大,costi可忽略不计。
步骤3:计算实际任务最早开始执行时间(Task Earliest Start Time,TEST)
TESTi,k=max(valid(k),DRTi,k) k∈P or k∈H (6)
valid(k)表示计算单元k最早有效可用时间。通过贪心策略计算任务在每个计算单元k上的TESTi,k,将任务映射到TESTi,k最小值所属的k上去执行;
步骤4:求解计算单元的可用时间与FPGA的区域划分
求解任务TESTi,k时,有一个重要参数,即valid(k),对于k∈P求解较简单,valid(k)为目前CPU上的最后一个执行任务的结束时间。当k∈H时,由于DPR FPGA支持并行计算即允许在当前已有任务执行的情况下,重构其它未使用区域。故涉及到DPR FPGA的划分问题,此时我们可以建立如下函数关系:
Figure BDA0002596774620000052
curclb为当前FPGA可用的CLB数量,profinishtime为当前FPGA正在执行任务的结束时间。通过公式(7)可以解决DPR FPGA的动态区域划分问题,实现了整个算法的闭环设计;
步骤5:基于任务插入的优化策略
计算任务的数据准备时间之后,遍历所有的计算单元上已部署的任务;
(1)对于CPU,若存在两个部署任务之间的时间间隔大于待部署任务的执行时间,则将任务插入到该时间段内执行;
(2)对于FPGA,若存在两个部署任务之间的时间间隔大于待部署任务的重构时间加执行时间,且满足硬件资源需求,则将任务插入到该时间段内执行;
步骤6:更新计算单元状态
完成步骤1-5后,更新计算单元状态,如FPGA资源使用情况、计算单元上已部署任务情况等;
任务的调度、映射、FPGA的区域划分需要协同设计,上述设计步骤将其进行结合。在满足1.3节约束条件的要求下,完成了软硬件的划分与调度,降低了时间复杂度。最后,使用任务插入策略进行优化,进一步提高了求解性能。
下面结合附图对本发明作进一步说明:
图1为支持动态部分可重构的异构片上系统,如图1所示,该动态可重构的片上系统平台由一块CPU和一块支持DPR的FPGA组成,其中FPGA可以划分为一块静态区域和两块动态部分重构区域,各可重构区域可根据实际需要通过ICAP端口从存储器下载不同的配置文件实现功能重构,FPGA与CPU之间通过共享内存进行通信;
图2为示例应用的DAG模型,如图2所示该示例应用由n0-n78个任务节点以及9条表示各任务之间的相互依赖关系的边组成;
图3为任务插入策略示意图待部署的任务的节点的DRT介于Task 1的结束时间与Task2的开始时间之间,若Task i的执行时间小于Task 1与Task 2之间的时间间隔且满足硬件资源需求(若为FPGA计算单元)则可插入到其中执行;
图4为示例应用的调度结果,如图4所示,所有任务节点按照本发明提出的面向动态部分可重构片上系统的列表式软硬件划分方法划分与调度到不同的计算单元(如CPU或者FPGA的动态部分重构区域)。红色区域表示在CPU计算单元上部署的任务,每一个蓝色区域标识一个FPGA的可重构子区域。在矩形区域中,圆形节点代表应用的任务节点ni,包括任务开始时间、执行时间、结束时间三个属性;灰色方形节点代表重构节点,分别代表同一重构区域相邻两个任务之间的重构开始时间、重构消耗时间、重构结束时间三个属性。
综上所述,本发明提出的一种面向动态部分可重构片上系统的列表式软硬件划分方法,有效提升了求解问题的时间复杂度,以较好的求解性能提升了硬件的资源利用率,显著提高了针对动态部分可重构异构系统中大规模应用的软硬件划分与调度效率。

Claims (7)

1.一种面向动态部分可重构片上系统的列表式软硬件划分方法,其特征在于,
对在动态部分可重构片上系统中执行的任务,利用基于任务列表优先级的方法,完成对DAG模型的划分与求解,得到综合应用的软硬件划分与调度的最优解,具体方法如下:
第1步 系统平台与应用建模
1.1计算平台模型
系统的硬件计算平台由一块微处理器和一块支持动态部分可重构功能的FPGA组成,
K=(P,H) (1)
其中P代表任务串行执行的CPU,H={PR0,PR1,......,PRk}代表组成FPGA的多个可重构区域的集合,
1.2应用建模
将应用建模为有向无环图DAG,DAG表示为G=(T,E),其中,
T={t0,t1,......,tn-1,tn}
表示组成应用的任务节点集合,E={e0,e1,......,em-1,em}是任务节点之间相互依赖关系边的集合,每个任务节点ti∈T,有4个基本属性,ti=(hwt,swt,rct,clbnum),hwt为节点在硬件上的执行开销,swt为节点在软件上的执行开销,rct是节点在FPGA上的重构时间,clbnum为任务节点在FPGA上执行所需的CLB资源数量;每条边ei∈E,ei=(parentt,childt,costpc),parentt表示该依赖边指向的父任务节点,childt表示该依赖边指向的子任务节点,costpc是父任务与子任务之间的通信时间,
1.3约束条件
(1)任务在P上只能串行执行;
(2)任务在H上重构时,重构端口不能复用,同一时间段内只能重构一个任务;
(3)任务在PRj上执行时,PRj的资源数量大于任务执行所需的资源数量;
(4)任务映射时只能选择P或者H之一,且只能映射一次;
(5)具有数据依赖关系的任务,需要等所有父任务执行结束且通信完毕后才能执行;
(6)任务在H上执行时,需要重构完成后才能开始执行;
(7)同一时间H上执行的所有任务的资源总量小于FPGA的总的资源数量;
第2步 基于任务优先级的列表式软硬件划分方法,包括以下步骤:
步骤2.1:建立基于任务优先级的单向排序调度列表,
步骤2.2:计算任务的数据准备时间,
步骤2.3:计算实际任务最早开始执行时间TEST,
步骤2.4:求解计算单元的可用时间与FPGA的区域划分,
步骤2.5:基于任务插入的优化策略。
2.根据权利要求1所述的一种面向动态部分可重构片上系统的列表式软硬件划分方法,其特征在于,所述步骤2.1具体为:
Figure FDA0002596774610000021
为任务ti的平均执行时间,costi为ti的父任务到ti的数据传输时延,datai为传输的数据量,B表示传输速率,
Figure FDA0002596774610000022
Figure FDA0002596774610000023
Figure FDA0002596774610000024
blevel(i)为任务ti的权值,childs表示ti的子任务集合,exits表示DAG中没有子任务的节点集合,通过计算所有任务节点的blevel(i),并按照其值大小递减排序,得到待调度的任务拓扑排序列表。
3.根据权利要求1所述的一种面向动态部分可重构片上系统的列表式软硬件划分方法,其特征在于,
所述步骤2.2具体为:
已知计算单元k,k∈P or k∈H,DRTi,k为任务在计算单元k上的数据准备时间也称为任务最早开始执行时间的理论值,
Figure FDA0002596774610000031
tft(j)为任务的结束时间,parents(i)表示其所有父任务节点的集合,若其父任务映射在k,由于传输速率较大,costi忽略不计。
4.根据权利要求1所述的一种面向动态部分可重构片上系统的列表式软硬件划分方法,其特征在于,
所述步骤2.3具体为:
TESTi,k=max(valid(k),DRTi,k) k∈P or k∈H (6)
valid(k)表示计算单元k最早有效可用时间,通过贪心策略计算任务在每个计算单元k上的TESTi,k,将任务映射到TESTi,k最小值所属的k上去执行。
5.根据权利要求1所述的一种面向动态部分可重构片上系统的列表式软硬件划分方法,其特征在于,
所述步骤2.4具体为:
求解任务TESTi,k时,建立如下函数关系:
Figure FDA0002596774610000032
curclb为当前FPGA可用的CLB数量,profinishtime为当前FPGA正在执行任务的结束时间,通过公式(7)可以解决DPR FPGA的动态区域划分问题,实现了整个算法的闭环设计。
6.根据权利要求1所述的一种面向动态部分可重构片上系统的列表式软硬件划分方法,其特征在于,
所述步骤2.5具体为:
计算任务的数据准备时间之后,遍历所有的计算单元上已部署的任务,
(1)对于CPU,若存在两个部署任务之间的时间间隔大于待部署任务的执行时间,则将任务插入到该时间段内执行,
(2)对于FPGA,若存在两个部署任务之间的时间间隔大于待部署任务的重构时间加执行时间,且满足硬件资源需求,则将任务插入到该时间段内执行。
7.根据权利要求1所述的一种面向动态部分可重构片上系统的列表式软硬件划分方法,其特征在于,
所述第2步最后一个步骤为:步骤2.6,更新计算单元状态。
CN202010711697.9A 2020-07-22 2020-07-22 一种面向动态部分可重构片上系统的列表式软硬件划分方法 Active CN111782376B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010711697.9A CN111782376B (zh) 2020-07-22 2020-07-22 一种面向动态部分可重构片上系统的列表式软硬件划分方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010711697.9A CN111782376B (zh) 2020-07-22 2020-07-22 一种面向动态部分可重构片上系统的列表式软硬件划分方法

Publications (2)

Publication Number Publication Date
CN111782376A true CN111782376A (zh) 2020-10-16
CN111782376B CN111782376B (zh) 2022-09-06

Family

ID=72763756

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010711697.9A Active CN111782376B (zh) 2020-07-22 2020-07-22 一种面向动态部分可重构片上系统的列表式软硬件划分方法

Country Status (1)

Country Link
CN (1) CN111782376B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101833368A (zh) * 2010-04-13 2010-09-15 杭州电子科技大学 一种软硬件协调处理的局部动态可重构系统能量管理方法
CN109656872A (zh) * 2018-12-24 2019-04-19 中国人民解放军国防科技大学 一种动态部分可重构片上系统软硬件划分方法
CN111090613A (zh) * 2019-11-25 2020-05-01 中国人民解放军国防科技大学 一种基于图分割的低复杂度软硬件划分与调度方法
CN111274016A (zh) * 2020-01-20 2020-06-12 中国人民解放军国防科技大学 基于模块融合的动态部分可重构系统应用划分与调度方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101833368A (zh) * 2010-04-13 2010-09-15 杭州电子科技大学 一种软硬件协调处理的局部动态可重构系统能量管理方法
CN109656872A (zh) * 2018-12-24 2019-04-19 中国人民解放军国防科技大学 一种动态部分可重构片上系统软硬件划分方法
CN111090613A (zh) * 2019-11-25 2020-05-01 中国人民解放军国防科技大学 一种基于图分割的低复杂度软硬件划分与调度方法
CN111274016A (zh) * 2020-01-20 2020-06-12 中国人民解放军国防科技大学 基于模块融合的动态部分可重构系统应用划分与调度方法

Also Published As

Publication number Publication date
CN111782376B (zh) 2022-09-06

Similar Documents

Publication Publication Date Title
CN115248728B (zh) 面向智能计算的分布式训练任务调度方法、系统和装置
Gu et al. Energy efficient scheduling of servers with multi-sleep modes for cloud data center
CN107038070A (zh) 一种云环境下执行可靠性感知的并行任务调度方法
CN114911612B (zh) 一种面向cpu-gpu异构资源的任务调度方法
Wang et al. An energy saving based on task migration for mobile edge computing
CN106445659A (zh) 一种空间飞行器周期性混成随机任务调度方法
CN114138488A (zh) 一种基于弹性高性能计算的云原生实现方法及系统
CN106293947A (zh) 虚拟化云环境下gpu‑cpu混合资源分配系统和方法
Shadi et al. Ready-time partitioning algorithm for computation offloading of workflow applications in mobile cloud computing
CN104102532B (zh) 一种异构集群中基于低能耗的科学工作流调度方法
Hosseini et al. Resource allocation optimization in cloud computing using the whale optimization algorithm
CN111090613B (zh) 一种基于图分割的低复杂度软硬件划分与调度方法
CN111782376B (zh) 一种面向动态部分可重构片上系统的列表式软硬件划分方法
Li et al. Cost-efficient scheduling of streaming applications in apache flink on cloud
CN114860417B (zh) 多核神经网络处理器及用于该处理器多任务分配调度方法
Goyal et al. A fault-tolerant energy-efficient computational offloading approach with minimal energy and response time in mobile cloud computing
Chen et al. Geo-distributed IoT data analytics with deadline constraints across network edge
Sun et al. HEFT-dynamic scheduling algorithm in workflow scheduling
CN104166593A (zh) 一种计算多应用功能异步并发调度方法
Fang et al. A Scheduling Strategy for Reduced Power Consumption in Mobile Edge Computing
Silberstein et al. An exact algorithm for energy-efficient acceleration of task trees on CPU/GPU architectures
Liu A Programming Model for the Cloud Platform
Yang et al. Resource reservation for graph-structured multimedia services in computing power network
Wang et al. Throughput optimization for lifetime budgeting in many-core systems
Liu et al. Novel critical-path based low-energy scheduling algorithms for heterogeneous multiprocessor real-time embedded systems

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