[发明专利]用于数据推测执行的系统、装置和方法有效
申请号: | 201580064697.1 | 申请日: | 2015-11-24 |
公开(公告)号: | CN107003853B | 公开(公告)日: | 2020-12-22 |
发明(设计)人: | E·乌尔德-阿迈德-瓦尔;C·J·休斯;R·瓦伦天;M·B·吉尔卡尔;H·井户;吴友峰;C·王 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30;G06F9/38;G06F9/52 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 何焜 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 数据 推测 执行 系统 装置 方法 | ||
描述了用于数据推测执行(DSX)的系统、方法和装置。在一些实施例中,用于执行DSX的硬件装置包括硬件解码器,用于解码指令,指令包括操作码和用于存储回退地址的一部分的操作数,以及执行硬件,用于执行经解码的指令,通过激活数据推测执行(DSX)跟踪硬件来跟踪推测存储器访问并检测DSX区域中的排序违反、并且存储所述回退地址而发起DSX区域。
技术领域
本发明的领域一般涉及计算机处理器架构,更具体地涉及推测执行。
背景技术
对包括可能的交叉迭代的依赖性的循环进行向量化众所周知是困难的。这种类型的示例性循环是:
for(i=0;iN;i++){
A[i]=B[C[i]];
}
对这个循环的不成熟的(并且不正确的)向量化将是:
然而,如果生成向量化版本的循环的编译器不能在先获悉关于A、B和C的地址或对齐性,则上述向量化是不安全的。
附图说明
在所附附图中以示例方式而非限制方式说明本发明,在附图中,类似的参考标号指示类似的元件,其中:
图1是能够在硬件中执行数据推测扩展(DSX)的处理器核的示例性框图的实施例;
图2示出根据实施例的推测指令执行的示例;
图3示出DSX跟踪硬件的详细实施例;
图4示出DSX跟踪硬件执行的DSX错误推测检测的示例性方法;
图5(A)-(B)示出DSX跟踪硬件执行的DSX错误推测检测的示例性方法;
图6示出对用于开始DSX的指令的执行的实施例;
图7示出YBEGIN指令格式的一些示例性实施例;
图8示出对诸如YBEGIN指令的指令的执行的详细实施例;
图9示出显示对诸如YBEGIN指令的指令的执行的伪代码的示例;
图10示出对用于开始DSX的指令的执行的实施例;
图11示出YBEGIN WITH STRIDE指令格式的一些示例性实施例;
图12示出对诸如YBEGIN WITH STRIDE指令的指令的执行的详细实施例;
图13示出对用于继续DSX而不结束它的指令的执行的实施例;
图14示出YCONTINUE指令格式的一些示例性实施例;
图15示出对诸如YCONTINUE指令的指令的执行的详细实施例;
图16示出显示对诸如YCONTINUE指令的指令的执行的伪代码的示例;
图17示出对用于中止DSX的指令的执行的实施例;
图18示出YABORT指令格式的一些示例性实施例;
图19示出对诸如YABORT指令的指令的执行的详细实施例;
图20示出显示对诸如YABORT指令的指令的执行的伪代码的示例;
图21示出对用于测试DSX的状态的指令的执行的实施例;
图22示出YTEST指令格式的一些示例性实施例;
图23示出显示对诸如YTEST指令的指令的执行的伪代码的示例;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201580064697.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:用于数据推测执行的系统、装置和方法
- 下一篇:传感器分离设备和方法
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置