[发明专利]线程暂停处理器、方法、系统及指令有效
| 申请号: | 201510350735.1 | 申请日: | 2015-06-23 |
| 公开(公告)号: | CN105279016B | 公开(公告)日: | 2019-06-28 |
| 发明(设计)人: | L·拉波波特;Z·斯波伯;M·米谢利;S·什沃茨曼;L·马科夫斯基;A·尧厄兹;O·利维 | 申请(专利权)人: | 英特尔公司 |
| 主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F9/50;G06F15/16 |
| 代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 毛力 |
| 地址: | 美国加利*** | 国省代码: | 美国;US |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 线程 暂停 处理器 方法 系统 指令 | ||
本申请公开了线程暂停处理器、方法、系统及指令。一个方面的处理器包括解码单元,用于对来自第一线程的线程暂停指令进行解码。该处理器的后端部与该解码单元耦合。该处理器的后端部用于:响应于该线程暂停指令,暂停对用于执行的第一线程的后续指令的处理。这些后续的指令按程序顺序在该线程暂停指令之后发生。该后端部还用于:响应于该线程暂停指令,保持处理器的后端部的至少多数排空该第一线程中除线程暂停指令之外的指令长达预定的时间段。上述多数可包括多个执行单元和指令队列单元。
技术领域
本文所述的实施例一般涉及处理器。具体而言,本文所述的实施例一般涉及暂停处理器中的线程。
背景技术
软件多线程操作是已被用于帮助改善处理器性能的技术。在软件多线程操作中,可将代码(例如,应用)划分为多个线程。每一个线程可表示能够与其他指令流或指令序列分开执行和/或并行地执行的指令流或指令序列。作为一个简单示例,一个线程可处理视频流的图像,同时另一线程可处理视频流的音频。
在用于实现多线程操作的处理器硬件方面,不同的方法是可用的。一种方法被称为交织的多线程操作或时域多线程操作。此类方法的一个示例是时分(time-slice)多线程操作或时分多路(time-multiplex,TMUX)多线程操作,在其中,单个物理处理器(例如,核)在交替的循环上或在固定的时间段之后,在多个线程之间切换。此类方法的另一示例是随事件切换(switch-on-event)多线程操作(SoEMT),在其中,单个物理处理器在发生触发事件(例如,长等待时间的高速缓存未命中、页错误、其他长等待时间事件等)时,在多个线程之间切换。在交织的多线程操作或时域多线程操作中,某时刻仅指令的一个线程可在给定的流水线级中执行。
另一多线程操作方法被称为同时(simultaneous)多线程操作(SMT)。在SMT中,在给定时刻,来自多于一个线程的指令可在单个物理处理器(例如,核)的给定流水线级中同时执行。例如,可使单个核表现为对于软件的多个逻辑处理器,每一个逻辑处理器执行不同的线程。该核的一些资源可专用于给定的线程或逻辑处理器。例如,通常每一个线程或逻辑处理器可维持一整套架构状态。该核的其他资源可由两个或更多线程或逻辑处理器共享。例如,取决于特定实现,可由在单个物理核中执行的两个或更多线程共享多个高速缓存、执行单元、分支预测器、解码器、其他逻辑或它们的组合。
多线程操作中的一个挑战是对自旋-等待(spin-wait)环路的高效处理。多个线程经常需要与其他线程共享资源和/或与其他资源同步。自旋-等待环路是其中一个线程等待另一线程以例如同步或获取对共享资源的访问权的多线程化应用中所使用的技术。该自旋-等待环路可表示其中线程正在紧密轮循环路中访问同步基元(例如,共享锁、信号量或互斥体(mutex))的例程或代码的部分。例如,逻辑处理器可执行用于重复地比较该同步基元直到其具有所期望的值的加载-比较-分支环路。该逻辑处理器一般能够非常快速地执行该自旋-等待环路,这可能消耗显著量的功率和执行资源。然而,快速地执行该自旋-等待环路一般不改善性能。
在64和IA-32架构软件开发者手册(64and IA-32 ArchitecturesSoftware Developer's Manual,订购号:325462-049US,2014年2月)中描述了暂停(PAUSE)指令或自旋环路提示指令。报告了该暂停指令用于改善自旋-等待环路的性能。也报告了该暂停指令的附加功能在于,在执行自旋-等待环路时,减少由处理器消耗的功率量。
美国专利6,671,795描述了用于暂停处理器中的执行的方法和装置。部分地公开了暂停指令可用于暂停一个线程的执行以便优先选择另一线程或节省功率。
附图说明
通过参考以下描述以及用于说明多个实施例的附图,可最佳地理解本发明。在附图中:
图1是执行线程暂停指令的实施例的方法的实施例的流程框图。
图2是用于执行线程暂停指令的实施例的处理器的实施例的框图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510350735.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种数据库的数据恢复方法及系统
- 下一篇:控件的显示方法、装置和终端设备





