[发明专利]锁定后指令的推测性引退有效
申请号: | 201780054588.0 | 申请日: | 2017-08-29 |
公开(公告)号: | CN109690489B | 公开(公告)日: | 2020-09-01 |
发明(设计)人: | 格雷戈里·W·斯莫斯;约翰·M·金;迈克尔·D·阿亨巴赫;凯文·M·里派克;马休·A·拉法斯;诺亚·班福德 | 申请(专利权)人: | 超威半导体公司 |
主分类号: | G06F9/52 | 分类号: | G06F9/52;G06F9/30;G06F9/38 |
代理公司: | 上海胜康律师事务所 31263 | 代理人: | 李献忠;张静 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 锁定 指令 推测 引退 | ||
本文提供用于改进锁定指令的执行的技术。允许锁定指令和较年轻指令在所述锁定指令的存储部分将其值提交给存储器之前推测性地引退。因此,这些指令不必等到所述锁定指令完成后再引退。在处理器在提交所述锁定指令的所述值之前检测到违反所述锁定指令的原子或防护属性的情况下,所述处理器回滚状态并且以慢模式执行所述锁定指令,在所述慢模式下直到提交所述锁定指令的所述存储值才允许较年轻指令引退。这些指令的推测性引退导致处理速度提高,因为指令不再需要等到执行锁定指令之后再引退。
相关申请的交叉参考
本申请要求2016年9月15日提交的美国专利申请号15/267,094和2016年11月24日提交的欧洲申请号EP16200576.3的权益,这两个专利申请以引用的方式并入本文中,就如同在此完全阐述一样。
背景技术
锁定指令是一类从存储器读取数据、对那个数据进行修改并将那个数据存储回存储器的指令。锁定指令具有原子属性和防护属性。原子属性防止在锁定指令开始的时间与锁定指令结束的时间之间发生对与加载指令相关联的存储器地址进行修改。防护属性表示在允许完成锁定指令之后的存储器访问之前必须完成比锁定指令“老”(按照程序次序,在锁定指令之前)的所有存储器访问。这些属性的严格应用由于与需要锁定指令和较年轻指令等待较老指令完成相关联的延迟而会导致处理器变慢。
发明内容
根据本发明的一个方面,提供了一种用于在处理器的核心中推测性地引退比锁定指令年轻的指令的方法,所述方法包括:引退所述锁定指令,其中所述锁定指令在引退之后保持待决,直到所述锁定指令的存储部分被认为提交给存储器为止;响应于引退所述锁定指令而保存所述处理器的检查点状态,所述检查点状态包括用于在违反所述锁定指令的原子属性或所述锁定指令的防护属性的情况下回滚所述处理器的状态的数据;在引退所述锁定指令之后但在所述锁定指令的所述存储部分被提交给存储器之前推测性地引退比所述锁定指令年轻的指令;通过从除执行锁定指令的线程以外的线程检测对允许向由所述锁定指令指定的存储器地址或向由比所述锁定指令年轻的来自与所述锁定指令相同的线程的已完成加载指令指定的存储器地址进行存储的请求来检测对所述锁定指令的所述原子属性或所述防护属性中的一者的违反;以及响应于检测到所述违反,经由所述检查点状态回滚所述处理器的状态。
在一个实施方式中,检测所述违反包括:通过检测对向与所述锁定指令相关联的存储器地址进行存储的请求,在所述锁定指令的所述存储部分被认为提交给存储器之前检测对所述原子属性的违反。
在另一个实施方式中,检测所述违反包括:通过检测对向与比所述锁定指令年轻的加载指令相关联的存储器地址进行存储的请求,在所述锁定指令的所述存储部分被认为提交给存储器之前检测对所述防护属性的违反。
在又一个实施方式中,经由所述检查点状态回滚所述处理器的状态包括:基于所述检查点状态来恢复架构寄存器值;基于所述检查点状态来恢复所述处理器的程序计数器;以及取消比所述锁定指令年轻的待决指令。
在又一个实施方式中,所述方法还包括:以慢模式执行所述锁定指令,其中在所述慢模式下,直到比所述锁定指令老的存储已经将值提交给存储器才执行所述锁定指令,并且其中在所述慢模式下,直到所述锁定指令的所述存储部分被认为提交给存储器才准许比所述锁定指令年轻的指令执行。
在又一个实施方式中,所述方法还包括:引退第二锁定指令,其中所述第二锁定指令在引退之后保持待决,直到所述第二锁定指令的存储部分被认为提交给存储器为止;响应于引退所述第二锁定指令而保存所述处理器的第二检查点状态,所述第二检查点状态包括用于在违反所述第二锁定指令的原子属性或所述第二锁定指令的防护属性的情况下回滚所述处理器的状态的数据;在引退所述第二锁定指令之后但在所述第二锁定指令的所述存储部分被提交给存储器之前推测性地引退比所述第二锁定指令年轻的指令;在所述锁定指令的所述存储部分被认为提交给存储器之前检测不到对所述原子属性或所述防护属性的违反;以及响应于检测不到违反,释放所述检查点状态并且从加载排序队列移除引退后条目。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于超威半导体公司,未经超威半导体公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201780054588.0/2.html,转载请声明来源钻瓜专利网。