【技术实现步骤摘要】
无序存储器请求跟踪结构和技术
[0001]本文中的技术涉及流式(streaming)高速缓存存储器,并且更具体地涉及一种流式高速缓存存储器,其包括具有多个跟踪队列的存储器请求跟踪结构,该跟踪队列允许对存储器请求进行有序或无序跟踪。
技术介绍
[0002]图形处理单元(GPU)的工作负荷通常具有非常大的工作集
‑
通常约为数百兆字节或更多,以生成单个图像帧。提供足够的片上高速缓存存储器容量来存储如此大的工作集是不切实际的。此外,高性能大规模并行GPU在等待丢失数据可用时不能停滞
–
他们需要能够向前推动并处理可用数据(即,高速缓存命中(hit)),即使其他数据(高速缓存未命中(miss))尚不可用,并且仍由存储器系统检索。
[0003]采用混杂的命中和未命继续进行的高速缓存体系结构称为流式高速缓存体系结构。参见例如Patterson等人,计算机组织和设计:硬件/软件接口(Computer Organization and Design:The Hardware/Software Inte ...
【技术保护点】
【技术特征摘要】
1.一种存储器请求跟踪电路,用于与流式高速缓存存储器一起使用,所述存储器请求跟踪电路包括:标签检查,其被配置成检测高速缓存未命中;多个跟踪队列;以及队列映射器,其耦合至所述标签检查和所述多个跟踪队列,所述队列映射器被配置成将请求跟踪信息分配给所述多个跟踪队列以使有序存储器请求和无序存储器请求返回。2.根据权利要求1所述的存储器请求跟踪电路,其中,所述队列映射器能够编程为:为第一类型的存储器请求保持有序存储器请求返回处理,以及为第二类型的存储器请求启用无序存储器请求返回处理,所述第二类型的存储器请求与所述第一类型的存储器请求不同。3.根据权利要求1所述的存储器请求跟踪电路,其中,所述第一类型的存储器请求和第二类型的存储器请求从组中选择,所述组由来自本地或全局存储器、纹理存储器/存储以及加速数据结构存储的负载构成。4.根据权利要求1所述的存储器请求跟踪电路,其中,所述多个跟踪队列包括第一到N个跟踪队列,以及所述队列映射器将第一跟踪队列分派给特定线程束,以及在第二到N个跟踪队列之间均匀地分配某些类型的存储器请求。5.根据权利要求1所述的存储器请求跟踪电路,其中,所述多个跟踪队列中的每个包括先进先出存储。6.根据权利要求1所述的存储器请求跟踪电路,进一步包括管线型的检查器选择器,其响应于高速缓存未命中填充指示,选择跟踪队列输出以应用于检查,所述管线型的检查器选择器被动态地配置成执行所述选择。7.根据权利要求6所述的存储器请求跟踪电路,其中,所述检查包括跟踪结构,其指示每个跟踪队列的头部所需的存储器系统返回数据,并且被配置成跟踪所述存储器系统何时已经返回每个跟踪队列的头部所需的所有扇区。8.根据权利要求7所述的存储器请求跟踪电路,其中,所述检查被配置成为多个标签库中的每个提供多个扇区有效位。9.根据权利要求1所述的存储器请求跟踪电路,进一步包括:第一提交选择器,其被配置成处理第一流量类型。10.根据权利要求9所述的存储器请求跟踪电路,进一步包括第二提交选择器,其被配置成处理与所述第一流量类型不同的第二流量类型。11.根据权利要求1所述的存储器请求跟踪电路,被配置成提供第一模式和第二模式,所述第一模式提供对跟踪资源的有序分派和解除分派,所述第二模式提供对跟踪资源的无序分派和解除分派。12.根据权利要求1所述的存储器请求跟踪电路,进一步包括状态数据包队列,其被配置成保持状态数据包,并进一步被配置成限制无序状态数据包处理,以便状态数据包相对于引用所述状态数据包的存储器访问请求保持程序顺序。13.根据权利要求1所述的存储器请求跟踪电路,进一步包括指示符编码器,其对提交组中最后一个数据包的指示符进行编码。14.根据权利要求13所述的存储器请求跟踪电路,进一步包括提交选择器,其被配置成
响应于所述指示符指示已经对提交组中的所有存储器请求条目进行了服务并且所有存储器请求条目都在高速缓存中,选择跟踪的存储器请求条目以移动到提交队列。15.根据权利要求1所述的存储器请求跟踪电路,还包括:第一流量路径和第二流量路径,其中所述第一路径绕过所述多个跟踪队列,以及所述第二路径通过所述多个跟踪队列中的至少一个;以及互锁电路,其保证所述第一路径始终比所述第二路径快。16.根据权利要求15所述的存储器请求跟踪电路,其中,所述互锁电路包括比较器,其被配置成比较快速路径中的流量时期与慢速路径中的流量时期。17.根据权利要求1所述的存储器请求跟踪电路,进一步包括引用计数器,其对引用存储器插槽的运行中的数量进行计数,引用计数器的输出和/或操作被配置成适应于无序处理。18.一种流式高速缓存,包括:标签管线,其...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。