【技术实现步骤摘要】
图形处理单元三维管线的共享功能的资源状态的高效缓存
[0001]本文所述的实施例总体上涉及图形处理单元(graphics processing unit,GPU)领域,并且更具体地涉及与被GPU的三维(three
‑
dimensional,3D)管线的共享功能访问的资源有关的状态信息的高效缓存和取回。
技术介绍
[0002]3D管线中的共享功能(如纹理采样器)需要被访问的资源(例如,底层纹理资源)的状态信息(例如,采样器状态(诸如过滤模式、寻址模式、最大各向异性等)。如果不进行高效的管理,此类状态信息取得可能是非常昂贵的。所产生的成本是由于取得等待时间的原因,由于绑定表以及状态改变的高频率,这通常需要多次存储器访问。
附图说明
[0003]本文所描述的各实施例作为示例而非限制在所附附图的各图中示出,在附图中,同样的附图标记指代类似的要素。
[0004]图1是根据实施例的处理系统的框图。
[0005]图2A
‑
图2D图示根据一些实施例的计算系统和图形处理器。
[0006]图3A
‑
图3C图示根据一些实施例的附加的图形处理器和计算加速器体系结构的框图。
[0007]图4是根据一些实施例的图形处理器的图形处理引擎的框图。
[0008]图5A
‑
图5B图示根据一些实施例的线程执行逻辑,该线程执行逻辑包括在图形处理器核心中采用的处理元件的阵列。
[0009]图6图示根据实施例的附加的执行单元。 ...
【技术保护点】
【技术特征摘要】
1.一种图形处理单元GPU,包括:三维3D管线,所述3D管线能操作用于执行3D操作;子核心,所述子核心能操作用于维护缓存结构,所述缓存结构包括(i)状态缓存SC,所述状态缓存SC具有多个SC条目,每个SC条目包含绑定资源的状态,以及(ii)直接状态访问表DSAT,所述直接状态访问表DSAT具有多个DSAT条目,每个DSAT条目包含表示到所述SC的索引的状态位置标识符SLID,其中,所述DSAT包括由表示与所述3D管线相关联的绑定表流的条目地址的状态绑定表偏移SBTO值标记并且被存储在与所述GPU相关联的存储器子系统内的内容可寻址存储器CAM;以及共享功能,所述共享功能能操作用于向所述缓存结构发出对由所述共享功能访问的特定绑定资源的状态的请求,其中所述请求包括指示指向所述绑定表流内的条目的SBTO的信息;以及其中响应于所述请求,所述缓存结构能操作用于作出关于基于所述SBTO在对所述缓存结构的单个访问期间、所述特定绑定资源的状态是否存在于所述缓存结构内的确定。2.如权利要求1所述的GPU,其中,响应于所述确定是肯定的,所述DSAT能操作用于使得所述SC通过基于所述多个DSAT条目中匹配所述SBTO的特定DSAT条目的SLID来对所述SC进行索引以输出所述特定绑定资源的状态。3.如权利要求1所述的GPU,其中,响应于所述SBTO表示所述DSAT内的缓存命中且所述确定是否定的,所述SC能操作用于分配所述多个SC条目中的新SC条目并向所述存储器子系统发出对所述特定绑定资源的状态的请求。4.如权利要求1
‑
3中任一项所述的GPU,其中,所述缓存结构进一步包括绑定表缓存BTC,所述绑定表缓存BTC包括多个BTC条目,每个BTC条目包含从所述绑定表流缓存的状态偏移的缓存行,其中所述BTC包括由所述SBTO的部分标记的CAM,并且其中响应于所述SBTO表示所述DSAT内的缓存未命中,所述DSAT进一步能操作用于分配所述多个DSAT条目中的新DSAT条目。5.如权利要求4所述的GPU,其中,所述SC包括由状态偏移字段标记的CAM,并且其中响应于所述SBTO表示所述BTC内的缓存命中,所述DSAT进一步能操作用于使得所述BTC从存储在所述多个BTC条目中的、与所述SBTO的部分匹配的特定BTC条目内的状态偏移的缓存行返回与所述SBTO相关联的状态偏移,并且试图基于所述状态偏移来定位所述SC内的所述特定绑定资源的状态。6.如权利要求4所述的GPU,其中,所述缓存结构进一步包括乱序OOO跟踪表,所述乱序OOO跟踪表包括多个跟踪条目,每个跟踪条目包含指向所述多个BTC条目中的特定BTC条目的指针和表示包含在所述特定BTC条目内的状态偏移的所述缓存行中的选择器的偏移,并且其中响应于所述SBTO表示所述BTC内的缓存未命中,所述BTC能操作用于:分配所述多个BTC条目中的新BTC条目;向所述存储器子系统发出对与所述新BTC条目相关联的状态偏移的缓存行的请求;以及通过使得所述OOO跟踪表分配所述多个跟踪条目中的新未决跟踪条目来促进对所述存储器子系统的未完成请求的乱序处理。7.如权利要求1
‑
3中任一项所述的GPU,其中所述共享功能包括纹理采样器。
8.一种方法,包括:在图形处理单元GPU的子核心内本地地维护缓存结构,所述缓存结构包括(i)状态缓存SC,所述状态缓存SC具有多个SC条目,每个SC条目包含绑定资源的状态,以及(ii)直接状态访问表DSAT,所述直接状态访问表DSAT具有多个DSAT条目,每个DSAT条目包含表示到所述SC的索引的状态位置标识符SLID,其中,所述DSAT包括由表示与所述GPU的三维3D管线相关联的绑定表流的条目地址的状态绑定表偏移SBTO值标记并且被存储在与所述GPU相关联的存储器子系统内的内容可寻址存储器CAM;接收对由所述3D管线的共享功能访问的特定绑定资源的状态的请求,其中所述请求包括指示指向所述绑定表流内的条目的SBTO的信息;以及基于所述SBTO来确定在对所述缓存结构的单个访问期间、所述特定绑定资源的状态是否存在于所述缓存结构内。9.如权利要求8所述的方法,进一步包括响应于所述确定是肯定的,使得所述SC通过基于所述多个DSAT条目中匹配所述SBTO的特定DSAT条目的SLID来对所述SC进行索引以输出所述特定绑定资源的状态。10.如权利要求8所述的方法,进一步包括响应于所述SBTO表示所述DSAT内的缓存命中并且所述确定是否定的而进行以下操作:分配所述多个SC条目的新SC条目;以及向所述存储器子系统发出对所述特定绑定资源的状态的请求。11.如权利要求8
‑
10中任...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。