异构多核可重构计算平台上任务调度的方法和装置的制造方法
【技术领域】
[0001] 本发明涉及计算机领域,并且更具体地,涉及异构多核可重构计算平台上任务调 度的方法和装置。
【背景技术】
[0002] 计算任务现在具有两种表现形式:在通用处理器(General Purpose Processor, 简称为"GPP")上,任务通常以软件代码的形式呈现,称为软件任务;而在专用集成电路上, 任务通常以专用的硬件电路的形式呈现,称为硬件任务。其中,软件任务的具有灵活性好、 易于修改与调试的优点,其缺点是计算速度不理想;而硬件任务具有速度快的优点,其缺点 是不够灵活,也不易于调试。异构多核可重构计算平台是权衡通用处理器与专用集成电路 的有效手段,异构多核可重构计算平台既可以使用可重构逻辑器件来获得很高的加速比, 又可以使用可重构技术或者添加通用处理器使得其具有很好的灵活性。此外,异构多核可 重构计算平台能够克服专用集成电路因为前期设计制造的复杂过程而带来的高代价和不 可重用等缺陷。
[0003] 异构多核可重构计算平台中的可重构资源(即硬件逻辑资源)通常非常有限,需 要对可重构资源进行重构,来实现任务的硬件执行。异构多核可重构计算平台上的硬件资 源重构根据其重构特性可以分为静态重构和动态重构。静态重构是指系统的硬件逻辑资源 静态重构,即在系统空闲期间通过各种方式进行在线编程,以对可重构硬件逻辑器件的逻 辑功能进行配置。动态重构是指在系统实时运行期间对可重构逻辑器件的逻辑功能实时地 进行动态配置,例如,能够只对系统内部需要修改的逻辑单元(即可重构资源)进行重新配 置,而不影响没有被修改的逻辑单元的正常工作。相对于静态重构,动态重构缩短了重构的 时间,一方面减少了系统的开销,另一方面提高了系统运行的效率。为了提高资源利用率, 当前技术中,异构多核可重构计算平台一般采用动态重构。
[0004] 目前,异构多核可重构计算平台一般采用基于窗口(Window)的任务迀移方法进 行重构。其中,窗口定义为从一次重构到下一次重构之间的时间间隔,一个窗口的组成包含 硬件执行(Hardware Execution)时间、调度(Scheduling)时间和重构(Reconfiguration) 时间三个阶段,其中,调度时间被隐藏在硬件执行时间中。当前技术中,重建窗口的大小是 固定的,则窗口的大小会对系统的性能产生影响,例如,窗口过大会导致可重构资源长时间 处于空闲状态,会降低资源利用率和系统性能;而窗口过小会导致系统重构过于频繁,从而 引入额外的重构开销,会降低系统的性能。
【发明内容】
[0005] 本发明实施例提供一种异构多核可重构计算平台上任务调度的方法和装置,根据 任务的执行情况和计算平台的可重构资源的使用情况,来确定任务的执行方式,能够有效 提高异构多核可重构计算平台上可重构资源的利用率。
[0006] 第一方面,提供了一种异构多核可重构计算平台上任务调度的方法,该方法包 括:
[0007] 根据待执行的目标任务的热度和该异构多核可重构计算平台的可重构资源的使 用率,确定该目标任务的执行方式,该执行方式包括硬件方式或软件方式,该目标任务在该 异构多核可重构计算平台没有对应的用于执行该目标任务的目标知识产权IP核,该目标 任务的热度用于指示该目标任务对中央处理器CPU的占用率,该可重构资源的使用率用于 指示该可重构资源的使用情况;
[0008] 根据确定的执行方式,执行该目标任务。
[0009] 结合第一方面,在第一方面的第一种可能的实现方式中,根据该目标任务的热度 和该异构多核可重构计算平台的可重构资源的使用率,确定该目标任务的执行方式,包 括:
[0010] 根据该目标任务的热度,确定该目标任务的加权热度cw,且Cw= C · S,其中,C为 该目标任务的热度,且C = N1 · T/?γ,IY为当前时刻与该可重构资源上次发生重构的时刻 之间的时间长度,&为该目标任务在?\内以软件方式执行的次数,T i为该目标任务单次以 软件方式执行所需的时间长度,S为该目标任务的硬件加速比,该硬件加速比S用于指示该 目标任务以硬件方式执行所对应的执行速度与该目标任务以软件方式执行所对应的执行 速度之间的比值;
[0011] 根据如下公式确定该异构多核可重构计算平台的可重构资源的使用率E_:
【主权项】
1. 一种异构多核可重构计算平台上任务调度的方法,其特征在于,所述方法包括: 根据待执行的目标任务的热度和所述异构多核可重构计算平台的可重构资源的使用 率,确定所述目标任务的执行方式,所述执行方式包括硬件方式或软件方式,所述目标任 务在所述异构多核可重构计算平台没有对应的用于执行所述目标任务的目标知识产权IP 核,所述目标任务的热度用于指示所述目标任务对中央处理器CPU的占用率,所述可重构 资源的使用率用于指示所述可重构资源的使用情况; 根据确定的执行方式,执行所述目标任务。
2. 根据权利要求1所述的方法,其特征在于,所述根据所述目标任务的热度和所述异 构多核可重构计算平台的可重构资源的使用率,确定所述目标任务的执行方式,包括: 根据所述目标任务的热度,确定所述目标任务的加权热度Cw,且Cw=C?S,其中,C为 所述目标任务的热度,且C=Ni?T/IY,IY为当前时刻与所述可重构资源上次发生重构的 时刻之间的时间长度,Ni为所述目标任务在内以软件方式执行的次数,为所述目标任 务单次以软件方式执行所需的时间长度,S为所述目标任务的硬件加速比,所述硬件加速比 S用于指示所述目标任务以硬件方式执行所对应的执行速度与所述目标任务以软件方式执 行所对应的执行速度之间的比值; 根据如下公式确定所述异构多核可重构计算平台的可重构资源的使用率E_:
其中,M为所述异构多核可重构计算平台上布局的IP核的数量,Ei为所述异构多核可 重构计算平台上布局的M个IP核中的第i个IP核的IP核使用率,IY为当前时刻与所述可 重构资源上次发生重构的时刻之间的时间长度,M为所述第i个IP核在所述时间长度IY内执行所述第i个IP核的对应任务的次数,g.为所述第i个IP核执行一次所述对应任务 所需的时间长度; 根据所述目标任务的加权热度Cw和所述可重构资源的使用率E_,确定所述目标任务 的执行方式。
3. 根据权利要求2所述的方法,其特征在于,所述根据所述目标任务的加权热度C,和 所述可重构资源的使用率E_,确定所述目标任务的执行方式,包括: 当确定所述目标任务的加权热度Cw大于或等于E_与k的乘积时,确定所述目标任务 的