当前位置: 首页 > 专利查询>英特尔公司专利>正文

用于支持每命令多个遍历器的系统和方法技术方案

技术编号:25639126 阅读:45 留言:0更新日期:2020-09-15 21:31
本申请公开了用于支持每命令多个遍历器的系统和方法。本文中描述的实施例提供了一种装置,该装置包括处理器,该处理器用于:将命令引擎的多个上下文配置成用于执行包括多个遍历器的图形工作负载;至少部分地基于被配置成用于上下文的遍历器的预定数量,从图形处理器的执行单元的池将执行单元的子集分配给多个遍历器中的每个遍历器;对于多个上下文中的每个上下文,将多个遍历器中的一个或多个遍历器分派给执行单元;以及在分派了多个遍历器中的一个或多个遍历器后,将指示遍历器的分派完成的操作码写入到计算机可读存储器,其中,该操作码包括用于多个遍历器中的一个或多个遍历器的依赖性数据。可描述并要求保护其他实施例。

【技术实现步骤摘要】
用于支持每命令多个遍历器的系统和方法
技术介绍
本文中描述的主题总体上关于图形处理。术语“遍历器(walker)”是指图形处理应用中的相关工作项的集合。一些图形处理系统针对每个计算命令流执行并行线程活动的单个遍历器,随后等待那个活动完成,此后发布工作的另一计算命令。该技术会导致图形处理系统中的工作的串行化,这限制了大型图形处理系统的工作流的可缩放性。因此,用于在单个计算命令流中支持多个遍历器的技术可在例如图形处理应用中取得效用。附图说明因此,为了可详细地理解上文陈述的当前实施例的特征的方式,可参照实施例进行对上文简要概述的实施例的更特定的描述,在所附附图中示出实施例中的一些。然而,应注意的是,所附附图仅图示典型实施例,并且因此不应视为限制实施例的范围。图1是根据本文中描述的一些实施例的处理系统的框图;图2是根据本文中描述的一些实施例的处理器的框图;图3是根据本文中描述的一些实施例的图形处理器的框图;图4是根据本文中描述的一些实施例的图形处理器的图形处理引擎的框图;图5是根据本文中描述的一些实施例的图形处理器核的硬件逻辑的框图;图6A-图6B图示根据本文中描述的实施例的线程执行逻辑,该线程执行逻辑包括在图形处理器核中采用的处理元件的阵列;图7是图示根据本文中描述的一些实施例的图形处理器指令格式的框图;图8是根据本文中描述的一些实施例的图形处理器的框图;图9A-图9B图示根据本文中描述的一些实施例的图形处理器命令格式和命令序列;图10图示根据本文中描述的一些实施例的用于数据处理系统的示例性图形软件架构;图11A是图示根据本文中描述的一些实施例的IP核开发系统的框图;图11B图示根据本文中描述的一些实施例的集成电路封装组件的截面侧视图;图12是图示根据实施例的示例性芯片上系统集成电路的框图;图13A-图13B是图示根据本文中描述的实施例的用于在SoC内使用的示例性图形处理器的框图;图14A-图14B图示根据本文中描述的实施例的附加示例性图形处理器逻辑;图15图示根据本文中描述的实施例的可适于支持每命令多个遍历器的数据处理系统;图16A图示常规数据处理环境;图16B图示根据本文中描述的实施例的可适于支持每命令多个遍历器的数据处理环境的多个方面;图17是图示根据本文中描述的实施例的用于支持每命令多个遍历器的方法中的操作的流程图;图18图示根据本文中描述的一些实施例的针对每个命令的不同级别的遍历器的计算命令流与执行单元之间的映射;图19是根据本文中描述的一些实施例的包括图形处理器的计算设备的框图。具体实施方式出于解释的目的,陈述了众多特定细节以提供对下文描述的各实施例的透彻理解。然而,对于本领域的技术人员将显而易见的是,可以在没有这些特定细节中的一些细节的情况下实践实施例。在其他实例中,以框图形式示出公知的结构和设备,以避免使基本原理变得含糊,并且提供对实施例的更透彻的理解。虽然以下实施例中的一些实施例参照图形处理器来描述,但是本文中描述的技术和教导可应用于各种类型的电路或半导体设备,包括通用处理设备或图形处理设备。本文中提到“一个实施例”或“实施例”指示指结合或关联于该实施例所描述的特定特征、结构或特性可以被包括在此类实施例中的至少一个实施例中。然而,在本说明书中的不同位置出现短语“在一个实施例中”不一定全都是指同一个实施例。在以下说明书和权利要求书中,可使用术语“耦合的”和“连接的”及其衍生词。应当理解,这些术语并不旨在作为彼此的同义词。“耦合的”用于指示彼此可以或可以不直接物理接触或电气接触的两个或更多个元件彼此协作或相互作用。“连接的”用于指示彼此耦合的两个或更多个元件之间的通信的建立。在以下说明书中,图1-图14B提供涵盖各实施例或与各实施例相关的示例性数据处理系统和图形处理器逻辑的概览。图15-图19提供各实施例的特定细节。以下实施例的一些方面参照图形处理器来描述,而其他方面参照诸如中央处理单元(CPU)之类的通用处理器来描述。类似的技术和教导可应用于其他类型的电路或半导体设备,包括但不限于众集成核处理器、GPU集群、或现场可编程门阵列(FPGA)的一个或多个实例。一般而言,各教导适用于操纵或处理图像(例如,样本、像素)、顶点数据、或几何数据的任何处理器或机器。系统概览图1是根据实施例的处理系统100的框图。在各实施例中,系统100包括一个或多个处理器102以及一个或多个图形处理器108,并且可以是单处理器台式机系统、多处理器工作站系统或具有大量处理器102或处理器核107的服务器系统。在一个实施例中,系统100是被并入在用于在移动设备、手持式设备或嵌入式设备中使用的芯片上系统(SoC)集成电路内的处理平台。在一个实施例中,系统100可包括以下各项或可并入在以下各项内:基于服务器的游戏平台、包括游戏和媒体控制台的游戏控制台、移动游戏控制台、手持式游戏控制台或在线游戏控制台。在一些实施例中,系统100是移动电话、智能电话、平板计算设备或移动互联网设备。处理系统100也可包括可穿戴设备,可与可穿戴设备耦合或可集成在可穿戴设备内,该可穿戴设备诸如,智能手表可穿戴设备、智能眼镜设备、增强现实设备或虚拟现实设备。在一些实施例中,处理系统100是电视机或机顶盒设备,该电视机或机顶盒设备具有一个或多个处理器102以及由一个或多个图形处理器108生成的图形界面。在一些实施例中,一个或多个处理器102各自都包括用于处理器指令的一个或多个处理器核107,这些指令当被执行时,执行用于系统和用户软件的操作。在一些实施例中,一个或多个处理器核107中的每一个被配置成处理特定的指令集109。在一些实施例中,指令集109可促进复杂指令集计算(CISC)、精简指令集计算(RISC)或经由超长指令字(VLIW)的计算。多个处理器核107各自可处理不同的指令集109,不同的指令集109可包括用于促进对其他指令集的仿真的指令。处理器核107也可包括其他处理设备,诸如,数字信号处理器(DSP)。在一些实施例中,处理器102包括高速缓存存储器104。取决于架构,处理器102可具有单个内部高速缓存或多级的内部高速缓存。在一些实施例中,高速缓存存储器在处理器102的各种组件之间被共享。在一些实施例中,处理器102也使用外部高速缓存(例如,第3级(L3)高速缓存或末级高速缓存(LLC))(未示出),可使用已知的高速缓存一致性技术在处理器核107之间共享该外部高速缓存。寄存器堆106附加地被包括在处理器102中,该处理器102可包括用于存储不同类型的数据的不同类型的寄存器(例如,整数寄存器、浮点寄存器、状态寄存器以及指令指针寄存器)。一些寄存器可以是通用寄存器,而其他寄存器可专用于处理器102的设计。在一些实施例中,一个或多个处理器102与一个或多个接口总线110耦合,以在处理器102与系统100中的其他组件之间传输通信信号,诸如,本文档来自技高网...

【技术保护点】
1.一种装置,包括:/n处理器,所述处理器用于:/n将命令引擎的多个上下文配置成用于执行包括多个遍历器的图形工作负载;/n至少部分地基于被配置用于上下文的遍历器的预定数量,从图形处理器的执行单元的池将执行单元的子集分配给所述多个遍历器中的每个遍历器;/n对于所述多个上下文中的每个上下文,将所述多个遍历器中的一个或多个遍历器分派给执行单元;以及/n在分派了所述多个遍历器中的所述一个或多个遍历器后,将指示遍历器的分派完成的操作码写入到计算机可读存储器,其中,所述操作码包括用于所述多个遍历器中的所述一个或多个遍历器的依赖性数据。/n

【技术特征摘要】
20190308 US 16/297,1291.一种装置,包括:
处理器,所述处理器用于:
将命令引擎的多个上下文配置成用于执行包括多个遍历器的图形工作负载;
至少部分地基于被配置用于上下文的遍历器的预定数量,从图形处理器的执行单元的池将执行单元的子集分配给所述多个遍历器中的每个遍历器;
对于所述多个上下文中的每个上下文,将所述多个遍历器中的一个或多个遍历器分派给执行单元;以及
在分派了所述多个遍历器中的所述一个或多个遍历器后,将指示遍历器的分派完成的操作码写入到计算机可读存储器,其中,所述操作码包括用于所述多个遍历器中的所述一个或多个遍历器的依赖性数据。


2.如权利要求1所述的装置,其中,所述图形处理器包括多个切片,所述多个切片中的每个切片包括多个执行单元。


3.如权利要求2所述的装置,其中,被配置成用于执行单个遍历器的上下文被分配切片中的所有可用执行单元。


4.如权利要求2所述的装置,其中,被配置成用于执行多个遍历器的上下文被分配切片中的可用执行单元的子集。


5.如权利要求1所述的装置,所述处理器用于:
在执行了所述多个遍历器中的所述一个或多个遍历器后,更新所述操作码以指示遍历器的执行完成。


6.如权利要求5所述的装置,其中,所述操作码包括用于指示遍历器的执行何时完成的时间戳。


7.如权利要求6所述的装置,其中,所述时间戳与上下文相关联地被保存。


8.一种非暂态机器可读介质,存储有指令,所述指令当由一个或多个处理器执行时使所述一个或多个处理器用于:
将命令引擎的多个上下文配置成用于执行包括多个遍历器的图形工作负载;
至少部分地基于被配置用于上下文的遍历器的预定数量,从图形处理器的执行单元的池将执行单元的子集分配给所述多个遍历器中的每个遍历器;
对于所述多个上下文中的每个上下文,将所述多个遍历器中的一个或多个遍历器分派给执行单元;以及
在分派了所述多个遍历器中的所述一个或多个遍历器后,将指示遍历器的分派完成的操作码写入到计算机可读存储器,其中,所述操作码包括用于所述多个遍历器中的所述一个或多个遍历器的依赖性数据。


9.如权利要求8所述的非...

【专利技术属性】
技术研发人员:J·瓦莱里奥V·兰甘纳坦J·雷A·R·阿普B·J·阿什博B·福里福莱特J·S·波尔斯S·E·拉古克里斯南R·库卡尼
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国;US

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

1