提供执行管道平衡的分布式调度器制造技术

技术编号:33339430 阅读:21 留言:0更新日期:2022-05-08 09:24
一种处理器,包括多个执行管道和耦接到所述多个执行管道的分布式调度器。所述分布式调度器包括:第一队列,所述第一队列用于缓冲来自所述处理器的指令流水线的前端的指令操作;以及多个第二队列,其中每个第二队列用于针对所述多个执行管道的对应单独执行管道子集缓冲从所述第一队列分配的指令操作。所述分布式调度器还包括:队列控制器,所述队列控制器用于基于是否检测到所述分布式调度器处的不平衡的至少一个指示符,从多种分配模式中选择分配模式,并且还用于控制所述分布式调度器根据所选择的分配模式将指令操作从所述第一队列分配在所述多个第二队列之中。分配在所述多个第二队列之中。分配在所述多个第二队列之中。

【技术实现步骤摘要】
【国外来华专利技术】提供执行管道平衡的分布式调度器

技术介绍

[0001]分布式调度器采用至少两个级别的调度器队列,其中第一级别具有不可挑选调度器队列,而第二级别具有两个或更多个可挑选调度器队列,并且可挑选调度器队列中的每一个操作以针对多个执行管道的对应子集存储指令操作。不可挑选调度器队列用于在来自指令流水线前端的指令操作被分配到可挑选调度器队列之前临时缓冲所述指令操作。
[0002]因为每个可挑选调度器队列专门服务于其自己的执行管道子集,所以在不同的可挑选调度器队列之间、不同的执行管道之间或它们的组合之间经常存在性能抑制性不平衡的可能性。举例说明,由于构建或编译程序的特定方式,或由于队列分配的巧合,一个可挑选调度器队列可能负担有各自需要大量周期的许多指令操作,诸如依赖于加载操作的操作,而另一个可挑选调度器队列可能具有招致此类延迟的较小比例的操作。作为另一个实例,与一个可挑选调度器队列相比,具有类似执行管道的另一个可挑选调度器队列可能被分配更高数量的操作,所述操作仅可由与所述队列相关联的特定执行管道执行。因此,与一个可挑选调度器队列相关联的执行管道经历过多的占用,而另一个类似的执行本文档来自技高网...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种方法,其包括:在处理器的分布式调度器的第一队列处缓冲指令操作;基于是否检测到所述分布式调度器处的不平衡的至少一个指示符,选择所述分布式调度器的多种分配模式中的分配模式;根据所选择的分配模式,将指令操作从所述第一队列分配在多个第二队列之中;以及在每个第二队列处,选择在所述第二队列缓冲的指令操作以供与所述第二队列相关联的执行管道执行。2.如权利要求1所述的方法,其中所述多种分配模式包括:队列优先分配模式,其中将指令操作基本上均等地分配在所述多个第二队列之中;以及管道优先分配模式,其中将指令操作基于与所述第二队列相关联的所述执行管道的管道占用率分配在所述多个第二队列之中。3.如权利要求2所述的方法,其中所述不平衡的至少一个指示符包括以下中的至少一者:第一指示符,所述第一指示符表示所述第二队列中的至少一个具有超过第一阈值的当前占用率;以及第二指示符,所述第二指示符表示任何两个第二队列的当前占用率之间的差超过第二阈值。4.如权利要求3所述的方法,其中选择所述多种分配模式中的分配模式包括:响应于既未检测到所述第一指示符也未检测到所述第二指示符,选择所述队列优先分配模式;以及响应于检测到所述第一指示符和所述第二指示符中的至少一者,选择所述管道优先分配模式。5.如权利要求3所述的方法,其中选择所述多种分配模式中的分配模式包括:响应于检测到所述第一指示符和所述第二指示符中的不超过一者,选择所述队列优先分配模式;以及响应于检测到所述第一指示符和所述第二指示符两者,选择所述管道优先分配模式。6.如权利要求2所述的方法,其中所述多种分配模式还包括:投机分配模式,其中将一组指令操作中的每个指令操作的副本分配到所述多个第二队列中的每个第二队列,并且随后基于对能够执行所述指令操作的所述执行管道的管道占用率的分析,使所述组的每个指令操作的所述副本在除一个第二队列之外的所有第二队列中无效。7.如权利要求6所述的方法,其中选择所述多种分配模式中的分配模式包括:响应于从所述第二队列中选择指令操作以供对应的执行管道执行的当前挑选率下降到低于阈值,选择所述投机分配模式。8.如权利要求6所述的方法,其中:所述不平衡的至少一个指示符包括以下中的至少一者:第一指示符,所述第一指示符表示所述第二队列中的至少一个具有超过第一阈值的当前占用率;以及
第二指示符,所述第二指示符表示任何两个第二队列的当前占用率之间的差超过第二阈值;以及第三指示符,所述第三指示符表示从所述第二队列中选择指令操作以供分配到对应的执行管道的当前挑选率下降到低于阈值;并且选择所述多种分配模式中的分配模式包括:响应于存在所述第一指示符或所述第二指示符中的不超过一者,选择所述队列优先分配模式;响应于存在所述第一指示符和所述第二指示符两者,选择所述管道优先分配模式;以及响应于存在所述第三指示符,选择所述投机分配模式。9.如权利要求6所述的方法,其中:在所述投机分配模式期间,所述组中的每个指令操作具有预先分派的执行管道,并且与所述预先分派的执行管道相关联的所述第二队列保留所述指令操作的有效副本,除非所述预先分派的执行管道的管道占用率同与另一个第二队列相关联的另一个相同类型的执行管道的管道占用率之间的差超过阈值。10.如权利要求1至9中任一项所述的方法,其中所述多种分配模式包括:队列优先分配模式,其中对于多个组中的每组指令操作,使用交错模式将所述组的所述指令操作分配在所述多个第二队列之中;并且其中针对给定组以所述交错模式接收初始指令操作的所述第二队列根据以下中的一者来选择:固定选择序列或伪随机方式。11.一种处理器,其包括:多个执行管道;以及分布式调度器,所述分布式调度器耦接到所述多个执行管道并且包括:第一队列,所述第一队列被配置为缓冲来自所述处理器的指令流水线的前端的指令操作;多个第二队列,每个第二队列被配置为针对所述多个执行管道的对应单独执行管道子集缓冲从所述第一队列分配的指令操作;以及队列控制器,所述队列控制器被配置为:基于是否检测到所述分布式调度器处的不平衡的至少一个指示符,从多种分配模式选择分配模式;并且控制所述分布式调度器根据所选择的分配模式将指令操作从所述第一队列分配在所述多个第二队列之中。12.如权利要求11所述的处理器,其中所述多种分配模式包括:队列优先分配模式,其中将指令操作基本上均等地分配在所述多个第二队列之中;以及管道优先分配模式,其中将指令操作基于与所述第二队列相关联的所述执行管道的管道占用率分配在所述多个第二队列之中。13.如权利要求12所述的处理器,其中所述不平衡的至少一个指示符包括以下中的至少一者:
第一指示符,所述第一指示符表示所述第二队列中的至少一个具有超过第一阈值的当前占用率;以及第二指示符,所述第二指示符表示任何两个第二队列的当前占用率之间的差超过第二阈值。14.如权利要求13所述的处理器,其中所述队列控制器被配置为通过以下方式选择所述多种分配模式中的分配模式:响应于既未检测到所述第一指示符也未检测到所述第二指示符,选择所述队列优先...

【专利技术属性】
技术研发人员:斯内哈
申请(专利权)人:ATI科技无限责任公司
类型:发明
国别省市:

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

1