[发明专利]图形处理器寄存器重命名机制在审
| 申请号: | 201780053338.5 | 申请日: | 2017-07-25 |
| 公开(公告)号: | CN110352403A | 公开(公告)日: | 2019-10-18 |
| 发明(设计)人: | 陈凯宇;路奎元;S·马余兰 | 申请(专利权)人: | 英特尔公司 |
| 主分类号: | G06F9/30 | 分类号: | G06F9/30;G06T1/20 |
| 代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 李炜;黄嵩泉 |
| 地址: | 美国加利*** | 国省代码: | 美国;US |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 寄存器 寄存 图形处理单元 图形上下文 寄存器堆 固定寄存器 图形处理器 处理装置 组共享 存储 分区 | ||
1.一种处理装置,包括:
图形处理单元(GPU),所述GPU包括:
多个执行单元,用于处理图形上下文数据;以及
寄存器堆,具有用于存储所述图形上下文数据的多个寄存器;以及
寄存器重命名逻辑,用于通过将所述寄存器堆中的所述多个寄存器逻辑地分区为固定寄存器的集合和共享寄存器的集合来促进对所述多个寄存器的动态重命名。
2.如权利要求1所述的装置,其中,在执行单元处执行上下文期间,所述共享寄存器的集合被动态地重命名为共享物理寄存器。
3.如权利要求2所述的装置,其中,所述GPU进一步包括:
重命名表,用于存储所述共享寄存器的集合内的每个寄存器至共享物理寄存器的重命名;以及
解码逻辑,用于经由所述重命名表在执行所述上下文期间对来自所述固定寄存器的集合的操作数和来自所述共享寄存器的集合的操作数执行寄存器重命名。
4.如权利要求3所述的装置,其中,所述寄存器重命名包括:
判定所述上下文的操作数的寄存器ID是否小于所述共享寄存器的集合的起始范围;以及
在判定了所述操作数小于所述共享寄存器的集合的所述起始范围之后,访问所述固定寄存器的集合以对所述操作数执行操作。
5.如权利要求4所述的装置,其中,所述寄存器重命名进一步包括:
在判定了所述操作数大于所述共享寄存器的集合的所述起始范围之后,判定所述操作数是否是源操作数;
在判定了所述操作数是源操作数之后,访问所述重命名表以找到与所述寄存器ID相对应的物理寄存器;以及
从所述共享寄存器的集合取出所述操作数。
6.如权利要求5所述的装置,其中,所述寄存器重命名进一步包括:
在判定了所述操作数不是源操作数之后,判定是否能够获取新共享寄存器;以及
在判定了能够获取所述新共享寄存器之后,将所述共享寄存器至物理寄存器ID的映射存储在所述重命名表中。
7.如权利要求6所述的装置,其中,所述寄存器重命名进一步包括:在判定了不能够获取所述新共享寄存器之后,停止所述上下文。
8.如权利要求1所述的装置,其中,在GPU内核的编译期间,所述寄存器重命名逻辑基于所述多个寄存器来指派变量。
9.如权利要求8所述的装置,其中,所述寄存器重命名逻辑执行寄存器分配算法,以便向所述固定寄存器的集合指派具有长生命期的变量并且向所述共享寄存器的集合指派具有短生命期的变量。
10.如权利要求9所述的装置,其中,在判定了寄存器指派超过所述寄存器堆上的所述多个寄存器之后,所述寄存器重命名逻辑促进溢出代码的生成。
11.如权利要求8所述的装置,其中,所述寄存器重命名逻辑提供关于将在何时释放所述共享寄存器的集合中的寄存器的指令。
12.如权利要求11所述的装置,其中,基于在所述寄存器分配算法期间所计算的信息来标记变量的释放位置。
13.如权利要求12所述的装置,其中,局部变量的位置被标记为在最后一次使用之后在新的完全定义之前被释放。
14.如权利要求13所述的装置,其中,全局变量的位置被标记为在控制流图中对于包括对前一定义的最后使用的基本块的最近后支配项处被释放。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201780053338.5/1.html,转载请声明来源钻瓜专利网。





