本发明专利技术公开了一种低功耗的片上网络任务映射方法,包括如下步骤:S10:建立片上网络拓扑模型;S11:建立多任务模型;S12:确定约束条件;S13:建立映射集合;S14:进行任务与片上网络之间的映射。本发明专利技术一种低功耗的片上网络任务映射方法针对片上网络中多任务建立模型,分析多任务之间的关系,然后将任务在通信延迟和能耗的双重约束下进行映射,从而提高映射效率,降低映射功耗。
【技术实现步骤摘要】
一种低功耗的片上网络任务映射方法
本专利技术属于片上网络
,涉及一种低功耗的片上网络任务映射方法。
技术介绍
随着通用处理器的主频突破4GHz,人们发现单一提升主频的做法已经不能再有效地提高性能,反而却带来了功耗的急剧上涨,高频率的道路逐渐走到了尽头。于是对于计算机处理器的研究开始转向多处理核心的方向。早期的对称多处理器(SMP)多是采用在同一计算机上汇集一组CPU的方式,它们之间共享内存子系统以及总线结构。之后,由于纳米级制造工艺的引入,SMP开始转变为单芯片多处理器(ChipMultiprocessor,CMP),即在同一芯片上集成多个处理核心,形成了现在我们所说的多核处理器。处理器本身的结构关系到整个芯片的面积、功耗和性能。如何继承和发展传统处理器的成果直接影响到多核处理器的性能和实现周期。多核处理器的各处理核执行的程序之间有时需要进行数据共享与同步,因此其硬件结构必须支持核间通信。高效的通信机制是多核处理器高性能的重要保障。目前片上高效通信机制通常有两种:基于共享总线的cache结构,基于片上网络的互连结构。基于共享总线的cache结构是指每个处理核拥有共享的二级或三级cache,用于保存比较常用的数据,并通过总线进行通信。这种系统的优点是结构简单,通信速度快;缺点是可扩展性差。共享总线显然无法满足大规模系统的需要。把互连网络用于片上系统设计,解决片上组件之间的通讯问题,这就是片上网络。片上网络(-NetworkOnChip,NoC)技术以其支持同时访问、可靠性高、可重用性高等特点被认为是更加理想的大规模CMP互连技术,其克服了总线结构可扩展性差的缺点,为10亿晶体管时代提供了一种可行的片上系统通讯机制。在片上网络中,如何将任务映射到片上网络的处理器核上是非常重要的问题。一方面需要满足任务之间的通信延迟的约束;另一方面,由于片上网络中通信能耗较高,需要尽可能的降低通信能耗。现有的映射方法往往采用复杂的方法来进行映射,需要耗费大量的时间来进行映射过程的计算,这在某种程度上也增加了能耗。
技术实现思路
为解决上述问题,本专利技术的目的在于提供一种低功耗的片上网络任务映射方法。为实现上述目的,本专利技术的技术方案为:一种低功耗的片上网络任务映射方法,包括如下步骤:S10:建立片上网络拓扑模型;S11:建立多任务模型;S12:确定约束条件,具体包括:对任务集合T中任务Tm和Tn,分别映射到片上网络的处理器核Ci和Cj,满足通信延迟的约束条件为:Lij≤L(qmn)其中,Lij表示从处理器核Ci到处理器核Cj的延迟,L(qmn)表示任务Tm和Tn之间的通信延迟要求;并且,所有任务都映射到片上网络后,要使所有已被映射的处理器核之间通信能耗E=Σwij*Eij最小;S13:建立映射集合;S14:进行任务与片上网络之间的映射,具体包括:S140:对任务集合T,按照任务的f值进行降序排序,如果两个或两个以上任务的f值相同,则按照任务的W值进行排序,所述任务的f值表示与该任务存在通信关系的其他任务的数量,W值表示任务之间的通信带宽;排序后新的任务集合为T’,T与T’之间的对应关系为Map(T←→T’);S141:对处理器核集合C,按照处理器核的h值对处理器核进行降序排序,所述处理器核的h值表示该处理器核在所有方向直接连接的处理器核的数量;排序后新的任务集合为C’,C与C’之间的对应关系为Map(C←→C’);S142:从T’中取出第一个任务T0’,将其映射到所有处理器核中具有最大的h值的处理器核Cx’上,并将(T0’,Cx’)加入到G中;S143:从T’中取出第一个未被映射的任务Tm’,对于T(Tm’)中已被映射的任务所在的处理器核,计算将Tm’映射到这些处理器核中未被映射的直接连接的处理器核上的所有E值,去掉按照步骤S12中公式不满足延迟的约束条件的E值;如果有两个或者两个以上相同的E值,则取min(E)为处理器核编号最小的处理器核Cmin’的E值,使用min(E)表示所有E值中最小的E值;计算将Tm’映射到Cmin’上后,计算Cmin’和与其通信的处理器核的延迟,如果满足延迟的约束条件,进行映射,将(Tm’,Cmin’)加入到G中;如果不满足延迟的约束条件,则在去掉当前的min(E)的所有E值当中重新找到新的min(E);直到找到满足延迟的约束条件的Cmin’,进行映射,将(Tm’,Cmin’)加入到G中;如果T(Tm’)中不存在已被映射的任务,则从C’中选择第一个未被映射的处理器核Ck’进行映射,将(Tm’,Ck’)加入到G中;S144:重复步骤S143,直到所有的任务均被映射到片上网络上;S145:根据对应关系Map(T←→T’)和Map(C←→C’)将G中所有的映射对应到C和T上。进一步地,步骤S14中,对任务集合T,按照任务的f值进行降序排序,如果两个或两个以上任务的f值相同,则按照任务的W值进行排序,所述任务的f值表示与该任务存在通信关系的其他任务的数量,W值表示任务之间的通信带宽。进一步地,步骤S14中,对处理器核集合C,按照处理器核的h值对处理器核进行降序排序,所述处理器核的h值表示该处理器核在所有方向直接连接的处理器核的数量。进一步地,步骤S14中,从任务集合中取出第一个任务T0’,将其映射到所有处理器核中具有最大h值的处理器核。相较于现有技术,本专利技术一种低功耗的片上网络任务映射方法针对片上网络中多任务建立模型,分析多任务之间的关系,然后将任务在通信延迟和能耗的双重约束下进行映射,从而提高映射效率,降低映射功耗。附图说明图1是本专利技术的方法流程图示。图2为本专利技术一实施例具有9个处理器核的片上网络的示意图。图3为本专利技术一实施例对于6个任务的多任务模型通信关系图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。如图1所示,本专利技术一种低功耗的片上网络任务映射方法包括如下步骤:S10:建立片上网络拓扑模型对于片上网络,用N(C,P)表示,其中C是处理器核Cn的集合,P是通路Pij的集合;其中,Pij表示从处理器核Ci到处理器核Cj的一条通路。而s=|Ci→Cj|表示从处理器核Ci到处理器核Cj所经过的片上网络路由器的数量;Ebit表示1bit数据在两个相邻处理器核之间进行传输时的平均能耗;Er表示1bit数据在片上网络路由器上经过时的平均能耗;Lbit表示1bit数据在两个相邻处理器核之间进行传输时的平均延迟;Lr表示1bit数据在片上网络路由器上经过时的平均延迟;h(Ci)表示处理器核Ci在所有方向直接连接的处理器核的数量;C(Cj)表示与处理器核Ci具有直接连接的处理器核的集合。则从处理器核Ci到处理器核Cj的能耗Eij为:Eij=(s+1)*Ebit+s*Er(1)从处理器核Ci到处理器核Cj的延迟Lij为:Lij=(s+1)*Lbit+s*Lr(2)S11:建立多任务模型对于多个任务建立多任务模型,用U(T,Q)表示,其中T是任务Tm的集合;Q是qmn的集合,qmn表示任务Tm和Tn之间存在着通信关系;而L(qmn)表示任务Tm和Tn之间的通信延迟要求;fm表本文档来自技高网...
【技术保护点】
一种低功耗的片上网络任务映射方法,其特征在于,包括如下步骤:S10:建立片上网络拓扑模型;S11:建立多任务模型;S12:确定约束条件;S13:建立映射集合;S14:进行任务与片上网络之间的映射。
【技术特征摘要】
1.一种低功耗的片上网络任务映射方法,其特征在于,包括如下步骤:S10:建立片上网络拓扑模型;S11:建立多任务模型;S12:确定约束条件,具体包括:对任务集合T中任务Tm和Tn,分别映射到片上网络的处理器核Ci和Cj,满足通信延迟的约束条件为:Lij≤L(qmn)其中,Lij表示从处理器核Ci到处理器核Cj的延迟,L(qmn)表示任务Tm和Tn之间的通信延迟要求;并且,所有任务都映射到片上网络后,要使所有已被映射的处理器核之间通信能耗E=Σwij*Eij最小,其中wij表示任务Tm和Tn之间的通信带宽,Eij表示从处理器核Ci到处理器核Cj的能耗;S13:建立映射集合G;S14:进行任务与片上网络之间的映射,具体包括:S140:对任务集合T,按照任务的f值进行降序排序,如果两个或两个以上任务的f值相同,则按照任务的W值进行排序,所述任务的f值表示与该任务存在通信关系的其他任务的数量,W值表示任务之间的通信带宽;排序后新的任务集合为T’,T与T’之间的对应关系为Map(T←→T’);S141:对处理器核集合C,按照处理器核的h值对处理器核进行降序排序,所述处理器核的h值表示该处理器核在所有方向直接连接的处理器核的数量;排序后新的任务集合为C’,C与C’之间的对应关系为Map(C←→C’)...
【专利技术属性】
技术研发人员:胡威,邹代坤,郭宏,黎文飞,张凯,江若成,李伟强,谭练,张若凡,徐景,
申请(专利权)人:武汉科技大学,
类型:发明
国别省市:湖北;42
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。