《共享已空闲的处理器执行资源.pdf》由会员分享,可在线阅读,更多相关《共享已空闲的处理器执行资源.pdf(9页珍藏版)》请在专利查询网上搜索。
1、10申请公布号CN101968751A43申请公布日20110209CN101968751ACN101968751A21申请号201010522467422申请日2005011410/772,75020040204US200580003909120050114G06F9/5020060171申请人英特尔公司地址美国加利福尼亚州72发明人K山田艾伦凯74专利代理机构上海专利商标事务所有限公司31100代理人姬利永54发明名称共享已空闲的处理器执行资源57摘要处理器包括多个逻辑处理器,以及指令集,所述指令集包括一条或更多条指令,当所述指令被第一逻辑处理器执行时,所述指令响应于第一逻辑处理器被调度进。
2、入空闲状态,导致第一逻辑处理器使之前为第一处理器保留的处理器执行资源对所述多个逻辑处理器中的第二处理器可用。30优先权数据62分案原申请数据51INTCL19中华人民共和国国家知识产权局12发明专利申请权利要求书1页说明书3页附图4页CN101968751A1/1页21一种基于SMT的处理器,包括多个逻辑处理器,共享单个物理处理器核的处理器执行资源以同时在所述逻辑处理器上并发地执行多个线程;以及用于在所述逻辑处理器的每一个上执行指令集的装置,所述指令集包括一条或多条指令,当所述指令被第一逻辑处理器执行时,所述指令响应于所述第一逻辑处理器由于线程任务的缺乏而被调度进入空闲状态,导致所述第一逻辑处。
3、理器使之前为所述第一逻辑处理器保留的处理器执行资源对所述多个逻辑处理器中的第二逻辑处理器可用。2如权利要求1所述的处理器,其中所述第一逻辑处理器被调度进入空闲状态还包括所述第一逻辑处理器执行请求所述第一逻辑处理器进入空闲状态的处理器指令。3如权利要求2所述的处理器,其中导致所述第一逻辑处理器使之前为所述第一逻辑处理器保留的所述处理器执行资源对第二逻辑处理器可用的操作还包括将所述处理器执行资源释放到从所述第二逻辑处理器可访问的处理器执行资源的公共池。4如权利要求3所述的处理器,其中之前为所述第一逻辑处理器保留的所述处理器执行资源还包括之前静态地分配给所述第一逻辑处理器的所述处理器执行资源;并且其。
4、中将所述处理器执行资源释放到处理器执行资源的公共池的操作还包括解除分配所述处理器执行资源。5如权利要求3所述的处理器,其中之前为所述第一逻辑处理器保留的所述处理器执行资源还包括之前静态地分配给所述第一逻辑处理器的所述处理器执行资源;并且其中将所述处理器执行资源释放到处理器执行资源的公共池的操作还包括所述第一逻辑处理器解锁所述处理器执行资源。权利要求书CN101968751A1/3页3共享已空闲的处理器执行资源0001本申请是申请号为2005800039091、题为“共享已空闲的处理器执行资源的方法和装置”的已授权专利申请的分案申请。0002背景0003在图1A中描述的处理器高级视图中,处理器被。
5、概念化为由两个组件组成,第一个实现处理器的体系结构状态举例来说,例如它的寄存器和程序计数器,并且第二个由处理器执行资源举例来说,例如翻译后备缓冲区TRANSLATIONLOOKASIDEBUFFER,TLB组成。0004如图1B所描述的,在一类基于多处理技术处理器的系统中,多个物理处理器通过总线系统互连,并且每个物理处理器维持在硬件上的单独的体系结构状态以及在硬件上的处理器执行资源的单独的集合。在调度这样的系统的每个处理器去执行不同线程的线程调度情形SCENARIO中,当出现下列情况时可能发生一实例系统中的处理器中的一个已经空闲,因为它正在系统中较慢的设备例如硬盘驱动器上等待,或者因为它当前未。
6、被调度去执行线程。在该实例中,处理器和它的执行资源的全部也是空闲的,并且对系统的其他处理器是不可用的。0005在例如图1C中描述的另一类基于处理器的系统中,为多个逻辑处理器维持在处理器硬件上的单独的体系结构状态的硬件处理器却可以具有单一的处理器核心流水线COREPIPELINE,所述处理器核心流水线由逻辑处理器以及单个集合的处理器执行资源包括由逻辑处理器共享的TLB共享。其中,这样的处理器体系结构可以用具有超线程技术的XEONTM处理器来举例说明,并且这样的处理器体系结构在本领域是公知的。0006在这样的逻辑多处理技术系统中,线程调度器可以调度不同的线程以在逻辑处理器中的每一个上执行,因为每个。
7、逻辑处理器以与所有其他逻辑处理器分开的方式维持其体系结构状态。当操作系统线程调度器使得逻辑处理器空闲或者逻辑处理器正在等待来自慢储存设备的数据时,逻辑处理器可以或者执行空闲任务典型地为紧凑循环TIGHTLOOP,并且周期性地检查中断;或者它可以挂起其活动并且等待某个类型的唤醒信号来恢复线程的执行。0007与处理器执行资源在物理上是分开的多处理技术系统形成对照,在这类逻辑多处理技术系统中,当这样的系统中的多个逻辑处理器中的一个为空闲时,未被已空闲的逻辑处理器使用的动态分配的处理器执行资源对当前正为用户或系统执行线程的其他逻辑处理器可以是可用的。0008然而,可以为逻辑处理器保留逻辑多处理技术系统。
8、中的处理器执行资源。这可以以不同的方式来进行。对于一个实施例,逻辑处理器可以锁定动态分配的处理器执行资源例如来自TLB的翻译寄存器TR,从而使它对其他逻辑处理器不可用。在另一实例中,逻辑处理器可以是静态分配的处理器执行资源例如TC,并且因此这些静态分配的资源可能对其他逻辑处理器不可用。即使在资源保留所针对的逻辑处理器为空闲之后,这些保留的RESERVED资源通常仍然对其他逻辑处理器不可用。因此,在逻辑处理器处于空闲时,由逻辑处理器锁定的TR通常仍然被所述逻辑处理器锁定;并且,在逻辑处理器处于空说明书CN101968751A2/3页4闲时,分配给逻辑处理器的静态分配的TC仍然被静态地分配给所述逻。
9、辑处理器。0009附图简要说明0010图1描述不同类型的处理器体系结构的高级视图。0011图2是在一个实施方案中的处理的流程图。0012图3描述在一个实施方案中的基于处理器的系统。0013详细说明0014在一个实施方案中,处理的发生如图2中的高级流程图中所示。在附图中,两个逻辑处理器,处理器1200和处理器2205,正在执行由包括线程调度器210的操作系统调度的线程。在215中,例如,由于线程的终止或页错误,处理器1从执行线程中切换出来,并且返回线程调度器。如果不再为该逻辑处理器调度任务220,那么处理器执行空闲序列225230。首先,逻辑处理器放弃由逻辑处理器持有的HELD任何保留的处理器执。
10、行资源225,将它们释放到公共池260。因此,例如,处理器1可以将翻译缓存项或翻译缓存寄存器返回到翻译后备缓冲区中的寄存器通用池。0015在不同的实施方案中,在步骤225中的处理可以不同。在一些实施方案中,被释放的以排他方式持有的资源可以是动态分配的资源,并且之前已经被处理器1锁定。在这样的实施方案中,在步骤225,逻辑处理器解锁所述资源并由此使得其对其他逻辑处理器可用。在另一个实施方案中,以排他方式持有的资源可能之前已经被静态地分配给了处理器1。在这样的实施方案中,在步骤225,静态分配的资源被解除分配,并且被返回到动态分配的资源的池260。0016在处理器1进入空闲状态例如在本实施方案中的。
11、挂起状态230后,通过例如中断235的唤醒信号可以请求执行新的或被恢复的线程。在其他实施方案中,处理器可以进入空闲任务循环而不是进入在230中描述的挂起,并且周期性地检查中断。0017在唤醒信号之后,通过按需将以排他方式保留的资源锁定到或者静态地分配给它自身,逻辑处理器重新获得以排他方式保留的资源240。逻辑处理器随后切换到要引入的INCOMING线程,并且继续该线程的执行245。0018在挂起或空闲状态之前,由处理器1在225中释放的资源对于另一个例如处理器2205的逻辑处理器成为可用的,所述处理器2205执行例如被描述的用户线程250的线程。这些资源随后可以在线程的执行期间255按需从共享。
12、的处理器执行资源的池动态地分配给逻辑处理器。0019图3描述在一个实施方案中的基于处理器的系统,其中所述逻辑处理器被实现为处理器300的一部分。在逻辑处理器上执行的程序被储存在通过总线系统320以连接方式耦合到处理器的存储器340中。存储器可以包括储存固件的非易失性存储器部分SECTION,所述固件包括基本上如上所述地执行处理的线程调度器。0020许多其他的实施方案是可能的。例如,尽管上面的描述将其自身限制到逻辑处理器,但是,类似的处理可以适用于共享任何公共的执行资源的物理上分开的多处理器。在这样的实施方案中,实现了逻辑和物理多处理技术的混合方案,其中单独的体系结构状态和一些执行资源在硬件上是。
13、分开的,但是其他的执行资源在硬件上是共享的,并且可以使用类似于在图2中描述的处理来释放。在一些实施方案中,上面谈到的线程调度器可以形成驻留在如图3中描述的非易失性存储器中的固件的一个组件,而在其他实施方案中,它可说明书CN101968751A3/3页5以是储存在处理器可访问的盘介质上的操作系统软件的一部分。在一些实施方案中,被采取来释放和保留处理器执行资源的动作可以直接在硬件上实现,并且附属于处理器的指令执行系统,而在其他的实施方案中,它们可以是被处理器所采取的作为一个或更多个指令的执行的一部分。在一些实施方案中,共享的执行资源可以包括与TLB无关的专用寄存器。实施方案不限于两个处理器,三个或。
14、更多个处理器可以共享执行资源并且执行类似于上面描述的处理。0021与所要求保护的主题相一致的实施方案可以作为包括机器可读介质的计算机程序产品来提供,所述机器可读介质具有储存在其上的数据,当所述数据被机器访问时,所述数据可以导致机器执行根据所要求保护的主题的处理。机器可读介质可以包括软盘、光盘、DVDROM盘、DVDRAM盘、DVDRW盘、DVDRW盘、CDR盘、CDRW盘、CDROM盘以及磁光盘、ROM、RAM、EPROM、EEPROM、磁或光卡、闪存或适于储存电子指令的其他类型的介质/机器可读介质,但不限于此。此外,实施方案还可以作为计算机程序产品被下载,其中所述程序可以通过在载波或其他传播。
15、介质中具体实施的数字信号的方式经由通信链路例如调制解调器或网络连接从远程计算机传输到请求的计算机。0022所述方法中的许多方法是以它们最基本的形式来描述的,但是可以从所述方法中的任何一个添加或删除步骤,并且可以从被描述的教导中的任一个增加或减少信息,而不背离所要求保护的主题的基本范围。很明显的,对于本领域技术人员,可以做出许多进一步的修改和改动。提供特定的实施方案不是为了限制本发明而是为了举例来说明它。要求保护的主题的范围不是由上面提供的具体实施例来确定,而是仅仅由所附的权利要求书来确定。说明书CN101968751A1/4页6图1A图1B说明书附图CN101968751A2/4页7图1C说明书附图CN101968751A3/4页8图2说明书附图CN101968751A4/4页9图3说明书附图。