任务分配方法、任务分配装置及片上网络制造方法及图纸

技术编号:10651928 阅读:153 留言:0更新日期:2014-11-19 14:42
本发明专利技术实施例提供一种任务分配方法、任务分配装置及片上网络,该方法包括:确定待处理任务所包含的线程数量,在多核处理器构成的片上网络中确定连续的、与线程数量相等数量的多个空闲处理器核对应的片上路由器构成的连续区域。若此区域为非矩形区域,则确定由此区域扩展的矩形区域,若扩展的矩形区域内与非空闲处理器核连接的每一个片上路由器的预测流量未超过预设门限值,则将待处理任务的多个线程分配给区域中的空闲处理器核。本发明专利技术实施例提供的任务分配方法,借助已分配任务的边界路由器将非矩形区域扩展成规则的矩形区域,由于在任务分配时结合了区域形状的灵活性并采用XY路由,从而避免硬件开销大、网络吞吐量低、系统利用率低等问题。

【技术实现步骤摘要】
【专利摘要】本专利技术实施例提供一种任务分配方法、任务分配装置及片上网络,该方法包括:确定待处理任务所包含的线程数量,在多核处理器构成的片上网络中确定连续的、与线程数量相等数量的多个空闲处理器核对应的片上路由器构成的连续区域。若此区域为非矩形区域,则确定由此区域扩展的矩形区域,若扩展的矩形区域内与非空闲处理器核连接的每一个片上路由器的预测流量未超过预设门限值,则将待处理任务的多个线程分配给区域中的空闲处理器核。本专利技术实施例提供的任务分配方法,借助已分配任务的边界路由器将非矩形区域扩展成规则的矩形区域,由于在任务分配时结合了区域形状的灵活性并采用XY路由,从而避免硬件开销大、网络吞吐量低、系统利用率低等问题。【专利说明】任务分配方法、任务分配装置及片上网络
本专利技术实施例涉及片上多核网络技术,尤其涉及一种任务分配方法、任务分配装 置及片上网络。
技术介绍
随着超大规模集成电路(Very Large Scale Integrated Circuits,以下简称 VLSI)的集成程度越来越高,同一个芯片上集成的片上处理单元,如存储单元、信号处理单 元等越来越多,每一片上处理单元相当于一个处理器核,多个处理器核构成多核处理器或 众核处理器。片上网络(Network-on-Chip,以下简称NoC)是实现多核处理器中不同处理器 核之间数据传输的主要手段。随着处理器核数量的不断增多,一个任务的多个线程、多个任 务同时运行在同一个处理器核上的情况越来越普遍,若将不同任务各自的线程随机的分配 给某些处理器核,则在NoC中,运行同一个任务的不同线程的处理器核之间的通信会受到 其他任务的数据流的影响,无法保证(Quality of Service,以下简称QoS),系统性能降低。 为了避免NoC中随机分配任务而引起的的任务之间数据流的相互干扰,通常采用子网划分 的方法,即将属于同一个任务的数据流限制在NoC的某一特定区域中。 现有技术中,对NoC中每个片上路由器建立路由表,路由表确定数据包从源片上 路由器到目标片上路由器的路由机制。在进行子网划分时,依靠内部的路由算法保证一个 任务的数据流下一跳到达的片上路由器是分配给同一任务的片上路由器,路由算法可适用 于任意拓扑,相对复杂,硬件开销大,不规则的子网形状容易产生流量拥塞。图1为现有技 术中基于路由算法的任务分配方法示意图。如图1所示,若任务五中其他片上路由器都需 要和Dest通信,则需要经过同一条链路,可能导致链路拥塞,影响网络吞吐量。
技术实现思路
本专利技术实施例提供一种任务分配方法、任务分配装置及片上网络,用于解决现有 技术中基于路由算法的任务分配方法硬件开销大、网络吞吐量低等问题。 第一个方面,本专利技术实施例提供一种任务分配方法,包括: 确定待处理任务所包含的线程数量; 在多核处理器构成的片上网络中确定连续的、与所述线程数量相等数量的多个空 闲处理器核,其中,每一个所述空闲处理器核连接一个片上路由器; 若确定出的与所述空闲处理器核连接的所述片上路由器构成的区域是非矩形区 域,则在所述片上网络中搜索并确定由所述非矩形区域扩展的矩形区域; 若所述扩展的矩形区域内与非空闲处理器核连接的每一个片上路由器的预测流 量未超过预设门限值,则将所述待处理任务的线程分配给所述空闲处理器核,其中,每一个 所述空闲处理器核分配一个线程。 在第一个方面的第一种可能的实现方式中,所述由所述非矩形区域扩展而成的矩 形区域为所述片上网络中包含所述非矩形区域的最小矩形区域。 toon] 结合第一个方面或第一个方面的第一种可能的实现方式,在第一个方面的第二种 可能的实现方式中,所述在多核处理器构成的片上网络中确定连续的、与所述线程数量匹 配的多个空闲处理器核之后,所述方法还包括: 若确定出的所述空闲处理器核的片上路由器构成的区域是矩形区域,则将所述待 处理任务的线程分别分配给所述空闲处理器核,其中,每一个处理器核分配一个线程。 结合第一个方面、第一个方面的第一种或第二种可能实现方式中的任一种可能 的实现方式,在第三种可能的实现方式中,所述片上网络中包括呈行列排列的多个处理器 核; 相应的,所述在多核处理器构成的片上网络中确定连续的、与所述线程数量匹配 的多个空闲处理器核,包括: 在所述多核处理器构成的片上网络中确定初始空闲处理器核; 以所述初始空闲处理器核为起始点,在多核处理器构成的片上网络中确定连续 的、与所述线程数量匹配的多个空闲处理器核。 结合第一个方面的第三种可能的实现方式,在第一个方面的第四种可能的实现方 式中,若确定出的所述空闲处理器核的片上路由器构成的区域是非矩形区域,则所述搜索 并确定由所述非矩形区域扩展而成的矩形区域,包括: 沿与所述初始空闲处理器核连接的片上路由器同行的相邻片上路由器依次确定 是否存在连续的、与所述线程数量匹配的多个空闲处理器核; 若沿所述同行的相邻片上路由器依次确定的连续的第一空闲区域中的处理器核 的数量与所述线程数量不匹配,则沿与所述初始空闲处理器连接的片上路由器同列的相邻 片上路由器依次确定连续的第二空闲区域,以使所述第一空闲区域中的处理器核的数量和 所述第二空闲区域中的处理器核的数量之和与所述线程数量相等。 结合第一个方面的第三种可能的实现方式,在第一个方面的第五种可能的实现方 式中,若确定出的所述空闲处理器核的片上路由器构成的区域是非矩形区域,则所述搜索 并确定由所述非矩形区域扩展而成的矩形区域,包括: 沿与所述初始空闲处理器核连接的片上路由器同列的相邻片上路由器依次确定 是否存在连续的、与所述线程数量匹配的多个空闲处理器核; 若沿所述同列的相邻片上路由器依次确定的连续的第三空闲区域中的处理器核 数量与所述线程数量不匹配,则沿与所述初始空闲处理器核连接的片上路由器同行的相邻 片上路由器依次确定连续的第四空闲区域,以使所述第三空闲区域中的处理器核的数量和 所述第四空闲区域中的处理器核的数量之和与所述线程数量相等。 结合第一个方面、第一个方面的第一种至第五种可能的实现方式中的任一种可能 的实现方式,在第一个方面的第六种可能的实现方式中所述若所述矩形区域内与非空闲处 理器核连接的每一片上路由器的预测流量未超过预设门限值,则在将所述待处理任务中所 包含的线程分别分配给所述空闲处理器核之前,所述方法还包括: 根据所述矩形区域内与非空闲处理器核连接的片上路由器的历史流量信息,预测 所述矩形区域内与非空闲处理器核连接的片上路由器的流量得到所述预测流量。 第二个方面,本专利技术实施例提供一种任务分配装置,包括: 第一确定模块,用于确定待处理任务所包含的线程数量; 第二确定模块,用于在多核处理器构成的片上网络中确定连续的、与所述线程数 量相等数量的多个空闲处理器核,其中,每一个所述空闲处理器核连接一个片上路由器; 第三确定模块,用于若所述第二确定模块确定出与所述空闲处理器核连接的所述 片上路由器构成的区域是非矩形区域时,在所述片上网络中搜索并确定由所述非矩形区域 扩展的矩形区域; 分配模块,用于若所述第三确定模块确定出的矩形区域内与非本文档来自技高网
...
任务分配方法、任务分配装置及片上网络

【技术保护点】
一种任务分配方法,其特征在于:确定待处理任务所包含的线程数量;在多核处理器构成的片上网络中确定连续的、与所述线程数量相等数量的多个空闲处理器核,其中,每一个所述空闲处理器核连接一个片上路由器;若确定出的与所述空闲处理器核连接的所述片上路由器构成的区域是非矩形区域,则在所述片上网络中搜索并确定由所述非矩形区域扩展的矩形区域;若所述扩展的矩形区域内与非空闲处理器核连接的每一个片上路由器的预测流量未超过预设门限值,则将所述待处理任务的线程分配给所述空闲处理器核,其中,每一个所述空闲处理器核分配一个线程。

【技术特征摘要】

【专利技术属性】
技术研发人员:路航韩银和付斌章李晓维
申请(专利权)人:华为技术有限公司中国科学院计算技术研究所
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1