[发明专利]用户级分叉与结合处理器、方法、系统和指令有效
申请号: | 201680012362.X | 申请日: | 2016-02-05 |
公开(公告)号: | CN107408036B | 公开(公告)日: | 2021-08-31 |
发明(设计)人: | O·本-琪琪;I·帕多;A·D·罗宾森;J·H·康威尼 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30;G06F9/38;G06F12/0811;G06F12/0875 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 何焜 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用户 分叉 结合 处理器 方法 系统 指令 | ||
1.一种处理器,包括:
多个处理器元件;以及
第一处理器元件,用于执行软件线程的用户级分叉指令,所述第一处理器元件包括:
解码器,用于解码所述用户级分叉指令,其中所述用户级分叉指令用于指示至少一个指令地址;以及
用户级线程分叉模块,用于响应于所述用户级分叉指令被解码,将所述多个处理器元件中的每一个配置为并行地执行指令,其中,所述多个处理器元件中的每一个用于执行对应的用户级同步与结束指令,并且其中所述多个处理器元件中的每一个包括:
解码器,用于解码所述对应的用户级同步与结束指令;以及
用户级同步线程结束模块,用于响应于所述对应的用户级同步与结束指令被解码,使得所述用户级同步线程结束模块被包括在其中的对应的处理器元件:
停止执行附加指令;
等待直到所述多个处理器元件中的每一个已经执行了所述对应的用户级同步与结束指令;以及
在所述多个处理器元件中的每一个已经执行了所述对应的用户级同步与结束指令之后,将控制传送到会在所述第一处理器元件上执行的所述软件线程的第二指令。
2.如权利要求1所述的处理器,其特征在于,所述解码器用于解码用于指示单个指令地址的所述用户级分叉指令,并且其中所述用户级线程分叉模块用于响应于所述用户级分叉指令被解码,将所述单个指令地址存储在各自对应于所述多个处理器元件中的不同的一个的多个程序计数器中的每一个中。
3.如权利要求1所述的处理器,其特征在于,所述解码器用于解码用于指示多个不同指令地址的所述用户级分叉指令,并且其中所述用户级线程分叉模块用于响应于所述用户级分叉指令被解码,将所述多个不同指令地址中的不同的一个存储在各自对应于所述多个处理器元件中的不同的一个的多个程序计数器中的每一个中。
4.如权利要求1所述的处理器,其特征在于,所述用户级线程分叉模块用于响应于所述用户级分叉指令被解码,将所述第一处理器元件的架构状态的副本提供给所述多个处理器元件中的每一个。
5.如权利要求4所述的处理器,其特征在于,用于将所述架构状态的所述副本提供给所述多个处理器元件中的每一个包括用于将所述架构状态的副本存储在各自用来对应于所述多个处理器元件中的不同的一个的多个存储器位置中的每一个中。
6.如权利要求1所述的处理器,其特征在于,所述用户级线程分叉模块用于响应于所述用户级分叉指令被解码,将所述多个处理器元件中的每一个配置为并行地执行指令而无需来自监督系统软件的干预。
7.如权利要求1所述的处理器,其特征在于,所述用户级线程分叉模块用于响应于所述用户级分叉指令被解码,使得所述第一处理器元件:
停止执行所述软件线程的指令;以及
在同步屏障处等待。
8.如权利要求1所述的处理器,其特征在于,所述用户级线程分叉模块响应于所述用户级分叉指令被解码,不会使得所述第一处理器元件停止执行所述软件线程的指令。
9.如权利要求1所述的处理器,其特征在于,每个用户级同步线程结束模块用于响应于所述对应的用户级同步与结束指令被解码,将对与一个或多个标志相关联的一个或多个错误状况的指示传递到所述第一处理器元件。
10.如权利要求1至9中的任一项所述的处理器,其特征在于,所述第一处理器元件具有比所述多个处理器元件中的每一个低的平均指令性能等待时间。
11.如权利要求1至9中的任一项所述的处理器,其特征在于,所述第一处理器元件具有其中指令执行比所述多个处理器元件中的每一个的微架构的指令执行是更乱序的微架构。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201680012362.X/1.html,转载请声明来源钻瓜专利网。