基于认知无线终端重构系统的资源调度方法

文档序号:7887031
专利名称:基于认知无线终端重构系统的资源调度方法
技术领域
本发明属于通信技术领域,涉及认知无线电资源调度,可用于在认知无线网络环境下终端重构的资源调度效率的提升。
背景技术
认知无线电技术是目前提高现有无线频谱效率最关键的技术之一,这种技术使无线电系统能够根据周围环境变化来进行环境感知、历史经验学习和智能结果的判决以适应系统传输参数的变化。认知无线电系统的资源管理包括无线资源管理,计算资源管理以及应用资源管理等。认知无线终端CRT的重构主要涉及对计算资源和应用资源的重新分配,它实质上是一个异构计算平台上的任务调度过程。由于CRT设备与现有的通用计算设备之间具有很大的相似性,因此,适用于异构处理器平台的映射和调度算法都可用于CRT平台的重构。调度算法的研究已经有较长的历史。目前,研究人员中提出的调度算法大多数都是以减少执行时间为目标的,一是性能有效调度方法;二是动态级调度方法;三是任务聚类方法。性能有效调度方法该方法通过三个阶段进行调度,先将任务进行分组,然后按分组次序每个任务分配优先级,最后按优先顺序计算任务在所有处理器上的最早完成时间, 选取最优处理器完成调度,该方法能够在异构处理器系统中有效完成资源调度,但每一阶段都包含大量计算,计算复杂度过高,不适于实际应用;动态级调度方法该方法通过计算各任务在所有处理器上的优先级完成调度,可以使任务在各处理器上的分配比较均衡,但该算法没有全面考虑任务之间的数据传递情况;任务聚类方法该方法提出了一种新的度量标准来进行任务的分类,考虑了任务的执行成本以及任务之间通信的代价,但该方法仅限于无优先级约束的任务调度,不适用于CRT终端的重构。

发明内容
本文发明的目的在于针对上述已有技术的各种不足,结合已有算法各自的优点, 提出一种基于认知无线终端重构系统的资源调度方法,以降低计算复杂度,有效地进行时间编辑,提高多处理器任务调度的效率,进而有效地减少CRT重构时间。实现本发明目的的技术方案是根据认知无线电的系统特征,对现有的任务聚类方法进行改进,并与动态级调度方法相结合,进行资源调度,其具体步骤包括如下(1)设认知无线终端重构系统有M个信号处理模块,根据信号处理模块执行的先后关系,将第i个执行的信号处理模块用表示,将第j个执行的信号处理模块用f」表示, 得到模块集合 F = {f1; . . . . . . f」,...fM},1 彡 i < j 彡 M ;(2)将信号处理模块&向信号处理模块fj发送的数据量用Clij表示,Clij彡0,根据有向无环图DAG理论,以du> O对应的&和。为节点构成一条有向边A,表示为乂i^/;.,
即A向。发送数据量为屯的数据,将所有的有向边构成有向边集合(3)根据计算机数据结构中的有向无环图理 论,由模块集合F和有向边集合E建立 DAG 模型为G(F,E);(4)根据DAG理论中的层数概念,将模块集合F中在DAG模型中所处的层数定义为fi的阶段值,得到阶段值向量S = [S1,. . . Si,. . . sM],其中Si表示fi的阶段值1 < i < M ;(5)将系统中N个不同类型的相互连接的处理器用集合P= {pj来表示, l^x^ N,其中第χ个处理器用px表示,由已知的各信号模块在各处理器上的执行时间得到系统的开销矩阵E (fi; px) = (eix)MXN,其中eix表示信号处理模块&在处理器px上的执行时间;(6)将系统中所有处理器之间的带宽数值归一化为1,使&向fj发送数据的传输时间、在数值上等于du,在已知开销矩阵E(fi; px)和数据的传输时间的情况下,采用聚类理论中的时间开销度量方法,计算模块之间的聚类增益α…Ciu表示模块&和模块fj 之间的聚类增益;(7)根据已有的聚类理论,选择聚类增益α u的最大值,将集合F分解为几个子集合;(8)依据各模块与其前驱和后继是否处于同一子集,通过动态级调度方法计算处理器的优先级,依次为各阶段的模块分配处理器(8a)计算阶段值为1的模块^在所有处理器上的优先级,将模块分配给优先级最大的处理器;(8b)按以下三种情况计算其他阶段值的模块&在处理器上的优先级,并将模块分配给优先级最大的处理器当&单独在一个子集里时,则计算&在所有处理器上的优先级;当&与它的前驱在一个子集里,则只计算&在前驱分配的处理器的优先级;若&与它的后继在一个子集里,则只计算除&的前驱所分配的处理器以外的其它处理器的优先级。本发明与现有技术相比,具有如下优点1)本发明根据各模块之间的数据传递情况将模块集合分为几个子集,因此可以有效地进行时间编辑,提高了多处理器资源调度的效率,进而有效地减少认知无线终端的重构时间;2)本发明为信号处理模块定义阶段值,使阶段值不为1的模块依据该模块与其前驱和后继所处子集的情况,只需要计算它在部分处理器上的优先级,从而降低计算的复杂度。


图1是本发明的流程示意图;图2是本发明方法与现有调度方法的平均时间长度比的对比图3是本发明方法与现有调度方法的效率对比图。
具体实施例方式以下参照附图对本发明的技术方案作进一步详细描述。参照图1,本发明方法的资源调度步骤如下步骤1,用集合表示系统信号处理模块。设认知无线终端重构系统有M个信号处理模块,根据信号处理模块执行的先后关系,将第i个执行的信号处理模块用表示,将第j个执行的信号处理模块用f」表示,得到模块集合 F = {f\,. . . fp . . . fj,. . . fM},1 彡 i < j 彡 M。步骤2,根据有向无环图理论,构造描述各模块发送数据情况的有向边集合。将信号处理模块&向信号处理模块fj发送的数据量用Clij表示,Clij彡0,根据有向无环图DAG理论,以> 0对应的&和。为节点构成一条有向边A,表示为乂,
即A向。发送数据量为屯的数据,将所有的有向边构成有向边集合五=|(/^^/,)1。步骤3,根据数据结构中的有向无环图论,将模块集合F中的元素作为有向无环图的节点,有向边集合E中的边作为有向无环图的有向边,建立有向无环图DAG模型为G(F, Ε)。步骤4,根据DAG模型,定义模块集合中每个模块的阶段值,得到阶段值向量。根据理论中的层数概念,将模块集合F中&在DAG模型中所处的层数定义为f^的阶段值,如果模块fi的阶段值为λ,λ >1上,则它的前驱的阶段值为λ-1,由此得到阶段值向量s = [Sl,...Si,...SJ,其中Si表示&的阶段值,1 < i <M。步骤5,构造描述系统处理器的集合以及开销矩阵。将系统中N个不同类型的相互连接的处理器用集合P= {pj来表示,KxSN, 其中第X个处理器用Px表示,由已知的各信号模块在各处理器上的执行时间得到系统的开销矩阵E(fi,px) = (eix)MXN,其中eix表示信号处理模块&在处理器Px上的执行时间。步骤6,采用聚类理论中的时间开销度量方法,计算各模块之间的聚类增益。将系统中所有处理器之间的带宽数值归一化为1,使&向。发送数据的传输时间在数值上等于du,在已知开销矩阵E(fi; px)和数据的传输时间的情况下,计算模块
fi和模块。之间的聚类增益α 计算步骤如下(6a)将第i个执行的模块&和第j个执行的模块fj分配给不同的处理器,计算它们在处理器上占用的最短时间t1: =+其中为&向f^发送数据的传输时间,Px表示第X个处理器,P表示处理器集合,E (fi; px)和E (fj; px)分别表示所述模块&和f」在处理器Px上的执行时间;(6b)将f i和。分配给相同的处理器,计算它们在处理器上占用的最短时间 tI · ^2 =min+;(6c)将(6a)和(6b)中的、和t2两式相减,得到聚类增益α α = tl_t2。步骤7,根据已有的聚类理论,用选择聚类增益值最大的方法,将模块集合分解为几个子集合,分解过程为(7a)将F中每个模块单独构成一个子集;

(7b)从集合F中选下标最小的模块并从所有模块中选择与&之间聚类增益 α ,j最大且大于0所对应的模块。,将。所在的子集与&所在的子集合并,更新F为从集合F中删除&和。后得到的集合;(7c)重复步骤(7b),直到集合F为空集;(7d)根据DAG理论,若(Iij > 0,则f^为f」的前驱,fj为f^的后继,将子集再次进行如下分解当同一子集中,&和&都是&的后继,则比较Ciik与Ciil的大小,将其中较小的对应模块从该子集中删除并单独构成一个子集;当同一子集中,&和&都是&的前驱,则比较Ciki与Cili的大小,将其中较小的对应的模块从该子集中删除并单独构成一个子集,其中fk为第k个模块,为第1个模块,α ik和α ki表示&与fk的聚类增益,α α 和α 表示&与&的聚类增益。步骤8,对阶段值为1的模块,通过动态级调度方法中优先级的计算公式计算所有处理器的优先级,并将该模块分配给优先级最大的处理器,优先级计算公式为DL(fi ρχ, Σ ) = SL*(fi)-max[DA(fi,px, Σ ),TF(px,E )] + Δ (fijPx),其中=DUfyPx, Σ )表示在Σ下将模块&分配给处理器Px的优先级,该值越大,表明优先级越高;Σ表示模块在处理器上的分配情况;SLlfi)是模块&的静态级,即DAG图中路径上所有模块执行时间平均值的总和;DA(fi,px,Σ )表示在Σ状态下在处理器ρχ上模块&所需要的数据全部到达的最早时间;TF(px,E )表示在Σ状态下处理器px上分配的最后一个模块完成执行的时间;Δ ( ·”ρχ)=帽端也),式中帽代表模块&在不同的处理器上的处理时间的平均值,E (fi; px)表示模块&在处理器px上的执行时间。步骤9,对于阶段值大于1的模块fj,分以下三种情况将为模块分配处理器(9a)当f」单独在一个子集里,计算f」在所有处理器上的优先级,然后将模块分配给优先级最大的处理器,计算公式为DL (fj, ρχ, Σ ) = SL*(fj)-max[DA(fj, ρχ,Σ ),TF (ρχ,Σ ) ] + Δ (f』,ρχ),其中=DUf^px, Σ )表示在Σ下将模块fj分配给处理器ρχ的优先级,该值越大,表明优先级越高;Σ表示模块在处理器上的分配情况;是模块。的静态级,即DAG图中路径上所有模块执行时间平均值的总和;0Α( ^ρχ,Σ )表示在Σ状态下在处理器ρχ上模块t所需要的数据全部到达的最早时间;TF (ρχ, Σ )表示在Σ状态下所有处理器Px上分配的最后一个模块完成执行的时间;Δ (fj, px) =ρχ),式中Elfj)代表模块f」在不同的处理器上的处理时间的平均值,E(fj,px)表示模块fj在处理器px上的执行时间;(9b)当f」与它的前驱在一个子集里,计算f」在前驱分配的处理器上的优先级,然后将模块分配给优先级最大的处理器,计算公式为DL(fj, ρζ, Σ ) = SL*(fj)-max[DA(fj, ρζ,Σ ),TF(ρζ,Σ )] + Δ (f』,ρζ),
其中巩表示从?!£中选取模块。的前驱所分配的处理器;01^的,?2,乙)表示在Σ 下将模块t分配处理器Pz的优先级,该值越大,表明优先级越高;DA(fp ρζ,Σ )表示在Σ 状态下处理器Pz上模块fj所需要的数据全部到达的最早时间;TF (ρζ, Σ )表示在Σ状态下在前驱所分配的处理器?2上的最后一个模块完成执行的时间;Δ (fj, pz) =Ρζ),式中Elfj)代表模块f」在不同的处理器上的处理时间的平均值,E(fj;pz)表示模块fj在前驱所分配的处理器Pz上的执行时间;(9c)当f^与它的后继在一个子集里,计算除fj的前驱所分配的处理器以外的其它处理器的优先级,然后将模块分配给优先级最大的处理器,计算公式为DLpw, Σ )= SL* (fj) -max [DA (fj; pw,Σ ),TF (pw,Σ ) ] + Δ (f』,pw),其中pw表示从Px中除Pz外,选模块f^的前驱所分配的处理器以外的其他处理器;DL(fj; pw, Σ )表示在Σ下将模块fj分配给处理器Pw的优先级,该值越大,表明优先级越高;DA(fj;pw,Σ )表示在Σ状态下在除模块fj的前驱分配的处理器以外的其他处理器Pw 上,该模块所需要的数据全部到达的最早时间;TF(pw, Σ )表示在Σ状态下在除模块fj的前驱所分配的处理器以外的其他处理器 Pw上的最后一个模块完成执行的时间;Δ (fj, pw) =pw),式中Elfj)代表模块f」在不同的处理器上的处理时间的平均值,E (fj; pw)表示模块f」在除该模块前驱所分配的处理器以外的其他处理器Pw 上的执行时间;本发明的效果可以通过以下仿真结果进一步说明1.仿真条件用DAG模型来模拟认知无线终端重构系统,采用随机任务产生器来产生300个不同参数的DAG模型,参数设置范围如下表所示
权利要求
1.一种基于认知无线终端重构系统的资源调度方法,包括如下步骤(1)设认知无线终端重构系统有M个信号处理模块,根据信号处理模块执行的先后关系,将第i个执行的信号处理模块用A表示,将第j个执行的信号处理模块用f」表示,得到模块集合 F = {f\,. . . fp . . . fj,. . . fM},1 彡 i < j 彡 M ;(2)将信号处理模块&向信号处理模块fj发送的数据量用Clij表示,Clij彡0,根据有向无环图DAG理论,以> 0对应的&和。为节点构成一条有向边A,表示为乂 j^/;.,即fi向。发送数据量为知的数据,将所有的有向边构成有向边集合(3)根据计算机数据结构中的有向无环图理论,由模块集合F和有向边集合E建立DAG 模型为G(F,E);(4)根据DAG理论中的层数概念,将模块集合F中&在DAG模型中所处的层数定义为 fi的阶段值,得到阶段值向量s = [S1,.. .Si,... sM],其中Si表示&的阶段值1 < i < M ;(5)将系统中N个不同类型的相互连接的处理器用集合P={pj来表示,Kx <N, 其中第χ个处理器用Px表示,由已知的各信号模块在各处理器上的执行时间得到系统的开销矩阵E(fi,px) = (eix)MXN,其中eix表示信号处理模块&在处理器Px上的执行时间;(6)将系统中所有处理器之间的带宽数值归一化为1,使&向fj发送数据的传输时间在数值上等于du,在已知开销矩阵E(fi; px)和数据的传输时间的情况下,采用聚类理论中的时间开销度量方法,计算模块之间的聚类增益au,α u表示模块&和模块fj之间的聚类增益;(7)根据已有的聚类理论,选择聚类增益αu的最大值,将集合F分解为几个子集合;(8)依据各模块与其前驱和后继是否处于同一子集,通过动态级调度方法计算处理器的优先级,依次为各阶段的模块分配处理器(8a)计算阶段值为1的模块&在所有处理器上的优先级,将模块分配给优先级最大的处理器;(8b)按以下三种情况计算其他阶段值的模块fi在处理器上的优先级,并将模块分配给优先级最大的处理器当&单独在一个子集里时,则计算&在所有处理器上的优先级; 当&与它的前驱在一个子集里,则只计算&在前驱分配的处理器的优先级; 若fi与它的后继在一个子集里,则只计算除fi的前驱所分配的处理器以外的其它处理器的优先级。
2.根据权利要求书1所述的基于认知无线终端重构系统的资源调度方法,其中步骤 (6)所述的采用聚类理论中的时间开销度量方法,计算模块之间的聚类增益α…按如下步骤进行(6a)将第i个执行的模块&和第j个执行的模块fj分配给不同的处理器,计算它们在处理器上占用的最短时间、·λ =+其中、为&向f^发送数据的传输时间,Px表示第χ个处理器,P表示处理器集合, E (fi; px)和E (fj; px)分别表示所述模块A和f」在处理器Px上的执行时间;(6b)将&和fj分配给相同的处理器,计算它们在处理器上占用的最短时间t2
3.根据权利要求书1所述的基于认知无线终端重构系统的资源调度方法,其中步骤(7)所述的选择聚类增益αu的最大值,将集合F分解为几个子集合,按如下步骤进行 (7a)将F中每个模块单独构成一个子集;(7b)从集合F中选下标最小的模块并从所有模块中选择与&之间聚类增益Ciij最大且大于O所对应的模块。,将。所在的子集与&所在的子集合并,更新F为从集合F中删除&和。后得到的集合;(7c)重复步骤(7b),直到集合F为空集;(7d)根据DAG理论,若> 0,则&为。的前驱,f,为。的后继,将子集再次进行如下分解当同一子集中,fk和都是&的后继,则比较aik与α η的大小,将其中较小的对应模块从该子集中删除并单独构成一个子集;当同一子集中,fk和都是&的前驱,则比较0^与a u的大小,将其中较小的对应的模块从该子集中删除并单独构成一个子集,其中fk为第k个模块,fx为第1个模块,a ik禾Π a ki表示fi与fk的聚类增益,a a和 aXi表示的聚类增益。
4.根据权利要求书1所述的基于认知无线终端重构系统的资源调度方法,其中步骤(8)所涉及的述的通过动态级调度方法计算处理器的优先级,按如下公式进行 DL(fi;px,E ) = SL*(fi)-max[DA(fi,px,E ), TF(px, Σ )] + Δ (Lpx)其中DL(fi,ρχ,Σ )表示在Σ下将模块&分配给处理器ρχ的优先级,该值越大,表明优先级越高;Σ表示模块在处理器上的分配情况;SLlfi)是模块&的静态级,即DAG图中路径上所有模块执行时间平均值的总和; DA(fi;Px,E )表示在Σ状态下在处理器px上模块&所需要的数据全部到达的最早时间;TF(px,E )表示在Σ状态下处理器px上分配的最后一个模块完成执行的时间; Δ忧,px) =E*(fi)-E(fi,px),式中Elfi)代表模块&在不同的处理器上的处理时间的平均值,E (fi; px)表示模块&在处理器px上的执行时间。
全文摘要
本发明公开了一种基于认知无线终端重构系统的资源调度方法,主要解决现有技术计算复杂度过高,资源调度效率低的缺陷。其实现过程为(1)构造系统的信号处理模块集合和描述模块之间数据传输情况的有向边集合;(2)由模块集合和有向边集合构造系统的DAG模型;(3)根据DAG模型,为模块定义阶段值;(4)由系统参数得到开销矩阵,并根据开销矩阵及模块之间的数据发送量计算各模块之间的聚类增益;(5)根据聚类增益将模块集合分为几个子集合;(6)依据各模块与其前驱和后继所处子集的情况,通过计算处理器的优先级,依次为各阶段的模块分配处理器。本发明能够提高资源调度的效率,减少认知无线终端的重构时间。
文档编号H04W72/12GK102438325SQ20121000781
公开日2012年5月2日 申请日期2012年1月11日 优先权日2012年1月11日
发明者侯丽俊, 冯成晓, 刘玉琦, 张文柱, 王红香, 郑晶晶, 郭翠, 银幸元 申请人:西安电子科技大学
再多了解一些
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1