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

图形处理单元纹理采样器操作的无序执行制造技术

技术编号:37057909 阅读:15 留言:0更新日期:2023-03-29 19:34
图形处理单元纹理采样器操作的无序执行。本文中描述的实施例一般针对促进GPU纹理采样器操作的无序执行。一种GPU的纹理采样器,其维护:(i)延迟队列,其可操作以存储关于与多个纹理采样器操作中的每个纹理采样器操作相关联的事务的集合的信息,以及(ii)多个虚拟通道(VC)队列,每个虚拟通道队列可操作以存储关于每次相应的单个纹理采样器操作的事务的信息。通过利用延迟队列和VC队列来促进纹理采样器操作的无序处理。例如,在事务处理间隔期间,对于与VC队列中的每个VC队列相关联的事务,可以确定高速缓存中的数据的可用性。可以基于确定的数据的可用性来选择VC队列。然后可以处理与选择的VC队列的头部相关联的事务。选择的VC队列的头部相关联的事务。选择的VC队列的头部相关联的事务。

【技术实现步骤摘要】
图形处理单元纹理采样器操作的无序执行


[0001]本文中所描述的实施例一般地涉及图形处理单元(GPU)的领域,并且更特别地涉及GPU纹理采样器操作的无序执行。

技术介绍

[0002]纹理采样器操作在三维(3D)图形中被大量使用,并且通常这样的操作的延迟(latency)对整体工作负载性能有显著影响。传统上,由于纹理采样器操作的长度可变性,纹理采样器单元实现有序流水线(pipeline),因此使得该流水线对系统延迟增加非常敏感。随着GPU的3D流水线在大小和复杂性方面的增加,存储器操作的延迟通常增加,尤其是在高速缓存层级中未命中的情况下。
附图说明
[0003]这里所述的实施例通过示例的方式而非通过限制的方式在附图的图中来说明,其中相似的参考编号指代相似的元件。
[0004]图1是根据实施例的处理系统的框图。
[0005]图2A

2D图示了根据一些实施例的计算系统和图形处理器。
[0006]图3A

3C图示了根据一些实施例的附加图形处理器和计算加速器架构的框图。
[0007]图4是根据一些实施例的图形处理器的图形处理引擎的框图。
[0008]图5A

5B图示了根据一些实施例的包括图形处理器核中采用的处理元件的阵列的线程执行逻辑。
[0009]图6图示了根据实施例的附加执行单元。
[0010]图7是图示根据一些实施例的图形处理器指令格式的框图。
[0011]图8是图形处理器的另一实施例的框图。
[0012]图9A是图示根据一些实施例的图形处理器命令格式的框图。
[0013]图9B是图示根据实施例的图形处理器命令序列的框图。
[0014]图10图示了根据一些实施例的用于数据处理系统的示例性图形软件架构。
[0015]图11A是图示根据实施例的可以用于制造集成电路以执行操作的IP核开发系统的框图。
[0016]图11B图示了根据一些实施例的集成电路封装组合件的横截面侧视图。
[0017]图11C图示了根据实施例的包括连接至衬底的多个硬件逻辑小芯片的单元的封装组合件。
[0018]图11D图示了根据实施例的包括可互换小芯片的封装组合件。
[0019]图12是图示根据实施例的可以使用一个或多个IP核制造的示例性片上系统集成电路的框图。
[0020]图13A

13B是图示根据一些实施例的用于在SoC内使用的示例性图形处理器的框图。
[0021]图14是图示根据实施例的纹理采样器的各种功能单元的框图。
[0022]图15是图示根据实施例的事务间隔处理的流程图。
[0023]图16是图示根据实施例的虚拟通道(VC)队列选择处理的流程图。
[0024]图17是图示根据实施例的VC队列优先化(prioritization)处理的流程图。
具体实施方式
[0025]本文中所描述的实施例一般地针对促进GPU纹理采样器操作的无序执行。先前的解决方案已经主要集中于增加纹理采样器读取操作的延迟覆盖。这主要通过增加未决(pending)高速缓存读取操作的存储同时仍然维持严格的操作的次序来实现。纹理采样器单元实现有序流水线的主要原因是与操作长度的可变性相关联的复杂性。例如,单纹理采样器单指令多数据(SIMD)纹理采样器操作(例如,SIMD16采样器操作)可能仅需要2个事务进入到1级(L1)高速缓存中,或者其可能需要多于100个事务进入到L1高速缓存中。同时,给定的纹理采样器操作不能被“标记”为完成,直到其所有的相关联的事务完成。
[0026]先前的解决方案的有效性已经受到限制有两个主要原因。首先,先前的解决方案不扩展,因为L1高速缓存大小本身成为限制因素(limiter)(例如,所有条目未决),或者系统中的线程的数量成为限制因素。第二,通过增加诸如L1纹理采样器高速缓存和/或系统中的线程的数量的资产来解决扩展问题在成本(例如,面积增加)方面变得令人望而却步。
[0027]因此,本文中所述实施例寻求通过为存储器读取操作提供无序机制来提高纹理采样器操作的延迟敏感性。如下面参考图14进一步描述的,无序方案可以涉及利用虚拟通道(VC)的集合,一旦用于纹理采样器操作的数据出现在L1高速缓存中,就在L1高速缓存的输出端处对该虚拟通道的集合进行仲裁。
[0028]根据一个实施例,在GPU的纹理采样器中维护延迟队列和多个VC队列。延迟队列可操作以存储关于与多个纹理采样器操作中的每个纹理采样器操作相关联的事务的集合的信息,并且多个VC队列每个可操作以存储关于每次相应的单个纹理采样器操作的事务的信息。在事务处理间隔期间,通过以下步骤来促进多个纹理采样器操作的无序处理:对于与多个VC队列中的每个VC队列相关联的事务,确定与纹理采样器相关联的高速缓存中的数据的可用性;基于所确定的数据的可用性来选择多个VC队列中的VC队列;以及处理与所选择的VC队列的头部相关联的事务。
[0029]由本文中所描述的各种实施例提供了许多优点和效率,包括3D工作负载中的显著性能改进,包括基准和游戏两者。经验数据和仿真表明,以帧级别的性能改进在5

10%的范围内。
[0030]系统概况图1是根据实施例的处理系统100的框图。处理系统100可以被用在单处理器桌面系统、多处理器工作站系统或具有大量的处理器102或处理器核107的服务器系统中。在一个实施例中,处理系统100是并入片上系统(SoC)集成电路中的处理平台,用于在移动、手持式或诸如在具有到局域网或广域网的有线或无线连接性的物联网(IoT)设备内的嵌入式设备中使用。
[0031]在一个实施例中,处理系统100可以包括如下各项、与如下各项耦合或集成在如下各项中:基于服务器的游戏平台;游戏控制台,包括游戏和媒体控制台;移动游戏控制台、手
持式游戏控制台或在线游戏控制台。在一些实施例中,处理系统100是移动电话、智能电话、平板计算设备或移动互联网连接设备的一部分,所述移动互联网连接设备诸如具有低内部存储容量的膝上型计算机。处理系统100还可以包括如下各项、与如下各项耦合或集成在如下各项中:可穿戴设备,诸如智能手表可穿戴设备;借助增强现实(AR)或虚拟现实(VR)功能增强的智能眼镜或服装,以提供视觉、音频或触觉输出以补充现实世界的视觉、音频或触觉体验,或以其他方式提供文本、音频、图形、视频、全息图像或视频或触觉反馈;其他增强现实(AR)设备;或其他虚拟现实(VR)设备。在一些实施例中,处理系统100包括电视或机顶盒设备或者是电视或机顶盒设备的一部分。在一个实施例中,处理系统100可以包括如下各项、与如下各项耦合或集成在如下各项中:自动驾驶交通工具,诸如公共汽车、牵引拖车、汽车、电动或电力自行车、飞机或滑翔机(或其任何组合)。自动驾驶交通工具可以使用处理系统100来处理交通工具周围感测到的环境。
[0032]在一些实施例中,一本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种图形处理单元(GPU),包括:1级(L1)高速缓存;以及纹理采样器,其耦合到L1高速缓存,包括(i)延迟队列,其可操作以存储关于与多个纹理采样器操作中的每个纹理采样器操作相关联的事务的集合的信息,以及(ii)多个虚拟通道(VC)队列,每个虚拟通道队列可操作以存储关于每次相应的单个纹理采样器操作的事务的信息,其中纹理采样器可操作以在事务处理间隔期间,通过以下步骤来促进多个纹理采样器操作的无序处理:对于与多个VC队列中的每个VC队列相关联的事务,确定与纹理采样器相关联的L1高速缓存中的数据的可用性;基于所确定的数据的可用性来选择多个VC队列中的VC队列;以及处理与所选择的VC队列的头部相关联的事务。2.根据权利要求1所述的GPU,其中纹理采样器进一步可操作以:将关于与延迟队列的头部相关联的事务的信息出列,所述延迟队列的头部是与多个纹理采样器操作中的特定纹理采样器操作相关联的事务的集合的一部分;以及将关于事务的信息入列在当前存储关于与特定纹理采样器操作相关联的事务的信息的多个VC队列的VC队列的尾部处。3.根据权利要求1或2所述的GPU,其中纹理采样器进一步可操作以继续处理与所选择的VC队列的头部相关联的后续事务,直到相应的单个纹理采样器操作的所有的事务已经完成。4.根据权利要求1或2所述的GPU,其中所述基于所确定的数据的可用性来选择多个VC队列中的VC队列包括确定数据在L1高速缓存中对于与所选择的VC队列相关联的至少阈值数量的事务是可用的。5.根据权利要求1或2所述的GPU,其中阈值数量是8。6.根据权利要求1或2所述的GPU,其中所述基于所确定的数据的可用性来选择多个VC队列中的VC队列包括将多个VC队列中的特定VC队列优先于所述多个VC队列中的另一个VC队列,所述特定VC队列包含关于表示相应的单个纹理采样器操作的所有事务的事务的信息,所述另一个VC队列包含关于表示相应的单个纹理采样器操作的少于所有事务的事务的信息。7.根据权利要求1或2所述的GPU,其中所述多个VC队列包括每32个线程8个VC队列。8.根据权利要求1或2所述的GPU,其中所述多个VC队列中的每个VC队列包括16个条目。9.一种方法,包括:在图形处理单元的纹理采样器内维护:(i)延迟队列,其可操作以存储关于与多个纹理采样器操作中的每个纹理采样器操作相关联的事务的集合的信息,以及(ii)多个虚拟通道(VC)队列,每个虚拟通道队列可操作以存储关于每次相应的单个纹理采样器操作的事务的信息;在事务处理间隔期间,通过以下步骤来促进多个纹理采样器操作的无序处理:对于与多个VC队列中的每个VC队列相关联的事务,确定与纹理采样器相关联的高速缓存中的数据的可用性;基于所确定的数据的可用性来选择多个VC队列中的VC队列;以及
处理与所选择的VC队列的头部相关联的事务。10.根据权利要求9所述的方法,进一步包括在事务处理间隔期间:将关于与延迟队列的头部相关联的事务的信息出列,所述延迟队列的头部是与多个纹理采样器操作中的特定纹理采样器操作相关联的事务的集合的一部分;以及将关于事务的信息入列在当前存储关于与特定纹理采样器操作相关联的事务的信息的多个VC队列的VC队列的尾部处...

【专利技术属性】
技术研发人员:C
申请(专利权)人:英特尔公司
类型:发明
国别省市:

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

1