[发明专利]一种程序自适应的TAGE预测器及预测方法在审
| 申请号: | 202211533169.4 | 申请日: | 2022-12-01 |
| 公开(公告)号: | CN115934169A | 公开(公告)日: | 2023-04-07 |
| 发明(设计)人: | 樊广超;张楠赓 | 申请(专利权)人: | 杭州嘉楠耘智信息科技有限公司 |
| 主分类号: | G06F9/38 | 分类号: | G06F9/38 |
| 代理公司: | 北京市中伦律师事务所 11410 | 代理人: | 操寒 |
| 地址: | 310000 浙江省杭州市*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 程序 自适应 tage 预测 方法 | ||
1.一种程序自适应的TAGE预测器,其特征在于,包括:自适应装置,
所述自适应装置被配置为执行:
识别指令流的程序类型;
根据所述程序类型动态调整所述TAGE预测器的每个标签历史表采用的全局历史寄存器长度;以及,
基于所述全局历史寄存器长度的历史信息对当前指令进行预测。
2.根据权利要求1所述的方法,其特征在于,所述自适应装置被配置为作为所述TAGE预测器的索引生成模块。
3.根据权利要求1所述的方法,其特征在于,还包括:静态分支计数器,所述静态分支计数器被配置为执行:
当检测到所述指令流的分支指令采用所述TAGE预测器的基础表进行预测时,所述静态分支计数器递增;和/或,
当检测到所述指令流的分支指令采用所述TAGE预测器的标签历史表进行预测时,所述静态分支计数器递减。
4.根据权利要求3所述的方法,其特征在于,识别指令流的程序类型,还包括:
若所述静态分支计数器的值超过第一阈值,识别所述指令流为服务器类型程序;和/或,
若所述静态分支计数器的值小于第二阈值,识别所述指令流为浮点类型程序。
5.根据权利要求1所述的方法,其特征在于,还包括:浮点寄存器访问计数器,所述浮点寄存器访问计数器被配置为执行:
每个周期内,若检测到所述指令流的分支指令访问浮点寄存器,则所述浮点寄存器访问计数器递增;
每个周期内,若没有检测到所述指令流的分支指令访问浮点寄存器,则所述浮点寄存器访问计数器递减。
6.根据权利要求5所述的方法,其特征在于,识别指令流的程序类型,还包括:
根据所述寄存器访问计数器的值识别所述指令流的程序类型。
7.根据权利要求5所述的方法,其特征在于,识别指令流的程序类型,还包括:
当所述静态分支计数器的值大于第一阈值,且所述浮点寄存器访问计数器的值小于第三阈值时,识别所述指令流为服务器类型程序;和/或,
当所述静态分支计数器的值小于第二阈值,且所述浮点寄存器访问计数器的值大于第四阈值时,识别所述指令流为浮点类型程序;和/或,
否则,识别所述指令流为整型或媒体类程序。
8.根据权利要求1所述的方法,其特征在于,根据所述程序类型动态调整所述TAGE预测器的每个标签历史表采用的全局历史寄存器长度,还包括:
当所述程序类型识别为服务器类型程序时,将每个标签历史表所使用的全局历史寄存器长度减小;和/或,
当所述程序类型识别为浮点类型程序时,将每个标签历史表所使用的全局历史寄存器长度增加;和/或,
当所述程序类型识别为整型程序或所述媒体类程序时,无需改变每个标签历史表使用的全局历史寄存器长度。
9.一种程序自适应的TAGE预测方法,其特征在于,包括:
识别指令流的程序类型;
根据所述程序类型动态调整所述TAGE预测器的每个标签历史表采用的全局历史寄存器长度;
基于所述全局历史寄存器长度对当前指令进行预测。
10.根据权利要求9所述的方法,其特征在于,所述方法为所述TAGE预测器的索引生成步骤。
11.根据权利要求9所述的方法,其特征在于,识别指令流的程序类型,还包括:
设置静态分支计数器;
当检测到所述指令流的分支指令采用所述TAGE预测器的基础表进行预测时,使所述静态分支计数器递增;
当检测到所述指令流的分支指令采用所述TAGE预测器的标签历史表进行预测时,使所述静态分支计数器递减。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州嘉楠耘智信息科技有限公司,未经杭州嘉楠耘智信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211533169.4/1.html,转载请声明来源钻瓜专利网。





