CN101118503A - 再分配处理环境的物理处理器的方法和系统 - Google Patents
再分配处理环境的物理处理器的方法和系统 Download PDFInfo
- Publication number
- CN101118503A CN101118503A CNA2007101088626A CN200710108862A CN101118503A CN 101118503 A CN101118503 A CN 101118503A CN A2007101088626 A CNA2007101088626 A CN A2007101088626A CN 200710108862 A CN200710108862 A CN 200710108862A CN 101118503 A CN101118503 A CN 101118503A
- Authority
- CN
- China
- Prior art keywords
- processor
- concurrent physical
- physical processor
- reallocation
- mode
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/461—Saving or restoring of program or task context
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
Abstract
与处理器的操作并行地执行支持逻辑处理器的物理处理器的再分配。一个物理处理器的操作状态被加载到另一个物理处理器上,以使逻辑处理器被不同物理处理器所支持。该再分配与处理器操作并行执行,并且对于操作系统来说是透明的。
Description
技术领域
本发明一般涉及在处理环境内的处理,并且特别涉及并行再分配支持(backing)处理环境的逻辑处理器的物理处理器。
背景技术
操作系统将处理器视作逻辑处理器。该逻辑处理器由某个物理处理器支持。当在加载操作系统之前启动和初始化机器时,确定处理器的物理分配。通常,一旦作出逻辑到物理处理器的分配,该分配就不被改变。
然而,在某些严格的条件下,可改变逻辑到物理处理器的分配。具体地说,假定处理环境内存在备用处理器,如果处理器出现故障,则可改变分配。具体地说,在出现故障处理器的情况下,分配被改变,以使备用处理器而不是出现故障的处理器支持逻辑处理器。
发明内容
虽然分配改变可用于出现故障的处理器,但是对于用于再分配逻辑处理器的物理支持的改进能力存在着需求。在一个例子中,需要用于操作处理器的物理处理器再分配的能力。例如,存在着对物理处理器再分配能力的需求,其可与支持逻辑处理器的物理处理器的操作并行执行。进一步地,存在着对再分配能力的需求,其被透明地并且在没有使用操作系统软件的开销的情况下执行。
通过提供再分配处理环境的物理处理器的方法,克服了现有技术的缺点并且提供了额外的优点。例如,方法包括确定支持逻辑处理器的物理处理器将被改变;以及将另一个物理处理器再分配给逻辑处理器,其中再分配与物理处理器的操作并行进行。
此处还描述并且要求保护对应于以上所概述的方法的系统和计算机程序产品。
通过本发明的技术,实现了附加特性和优点。此处详细描写了本发明的其它实施例和方面,并且其被认为是有请求保护的发明的一部分。
附图说明
本发明的一个或多个方面在说明书结束部分的权利要求书中作为例子被具体指出和明确要求保护。通过以下结合附图的详细说明将明白本发明的上述及其它目的、特性和优点,其中:
图1描述了处理环境的一个实施例以引入和使用本发明的一个或多个方面;
图2根据本发明的一个方面描述了与执行并行物理处理器再分配相关的逻辑的一个实施例;
图3根据本发明的一个方面描述了与执行并行物理处理器再分配的一个实施例相关的更多细节;
图4根据本发明的一个方面描述了与确定在并行物理处理器再分配期间所使用的新配置相关的逻辑的一个实施例;
图5根据本发明的一个方面描述了与存储将被再分配的源处理器的操作状态相关的逻辑的一个实施例;
图6根据本发明的一个方面描述了与将所存储的操作状态加载到目标处理器上相关的逻辑的一个实施例;以及
图7描述了引入本发明的一个或多个方面的计算机程序产品的一个实施例。
具体实施方式
根据本发明的一个方面,改变处理环境的一个或多个逻辑处理器的物理支持。例如,当前分配给逻辑处理器(源处理器)的物理处理器被另一个物理处理器(目标处理器)替代。在最初支持逻辑处理器(即源处理器)的物理处理器正运行(与故障、检查停止(checkstopped)或者时钟停止(clock-stopped)相反)的同时,执行另一个物理处理器到逻辑处理器的再分配,并且该再分配对于包括逻辑分区管理程序的操作系统软件来说是透明的,并且无需其介入。对于一个或多个逻辑处理器可以并行地执行再分配。
在各种类型处理环境中使用本发明的一个或多个方面。参考图1描述了引入并且使用本发明的一个或多个方面的处理环境的一个实施例。处理环境100包含经由一个或多个连接104彼此连接的多个处理器102。该例子中的每个处理器为执行由国际商业机器公司(IBM)提供的z/OS操作系统的zSeries服务器。连接104是例如令牌环、网络连接、电缆或者任何其他类型连接。IBM、zSeries和z/OS是国际商用机器公司(美国,New York,Armonk)的注册商标。此处所使用的其他名字可以是国际商用机器公司或其它公司的注册商标、商标或产品名称。
每个处理器102被视为针对其操作系统的逻辑处理器。然而,该逻辑处理器由分配给其的物理处理器支持。例如,基于处理器类型(即CPU、SAP)和/或机器配置(例如物理处理器的布置、段(book)的数量)等,由环境的固件(例如微码)进行处理器的物理分配。
再分配一个或多个逻辑处理器的物理支持是有必要或期望的。即,有时期望改变一个或多个逻辑处理器的物理支持。作为例子,在段替换操作和/或处理器升级期间,分配改变是有好处的。在段替换操作期间,段被作为目标从系统中移除。如果操作系统正使用物理上位于被定为移除目标的段上的一个或多个处理器,则作为抽空(evacuation)的一部分,逻辑处理器被移动到物理上位于系统中剩余的另一个段上的处理器中。类似地,当处理器升级发生时,分配新的处理器资源。新的处理器资源取代备用处理器,并且备用处理器的物理位置基于现有配置可能不是最优的。因此,重新分配当前分配的物理处理器资源。
参照图2描述与物理处理器再分配相关的逻辑的一个实施例。在一个例子中,该逻辑以处理环境的一个或多个处理器的微码来执行。
参考图2,最初,在步骤200启动再分配。出于若干不同原因可以启动再分配,包括例如重新分配处理环境的资源或执行并行段替换操作。还存在其它再分配的原因。在一个实施例中,在所有处理环境的处理器上接收到再分配指示。在另一个实施例中,在处理器的子集上接收到再分配指示。
在步骤202中,响应于启动再分配,在一个或多个处理器中的每个上执行再分配。在步骤204中,为执行再分配,确定将被再分配的一个或多个物理处理器(即确定一个或多个源)。进一步地,在步骤206中,确定作为再分配的目标的物理处理器。特定物理处理器可以既是目标又是源。例如,如果交换将要发生(例如iPU1/pPU1,iPU2/pPU2→iPU2/pPU1,iPU1/pPU2),则交换的处理器既是源又是目标。
进行这些确定之后,在步骤208中,再分配发生。这包括在目标物理处理器上存储源物理处理器的操作状态。例如,在上述交换例子中,物理处理器2的操作状态被再分配给物理处理器1,而物理处理器1的操作状态被再分配给物理处理器2。
参考图3-6描述了有关物理处理器的并行再分配的更多细节。具体地说,图3描述了与包括4个处理器的处理环境中并行物理处理器再分配相关的逻辑的一个实施例;图4描述了与确定再分配所使用的新配置相关的逻辑的一个实施例;图5描述了与存储源处理器的状态相关的逻辑的一个实施例;以及图6描述了与将所存储的状态加载到目标处理器上相关的逻辑的一个实施例。
参考图3,有4个处理器300,每个由逻辑处理器标识符(iPUx)302和物理处理器标识符(pPUx)304表示。在某时间点上,并行物理处理器再分配技术在处理器上被启动。作为一个例子,通过在环境的每个操作处理器(或在另一个实施例中,在处理器的子集)上执行指令来启动再分配。指令包括例如表示将被执行的操作的操作码,以及存储在寄存器中、标识用来控制操作的参数块的地址的地址。参数块包括若干字段,例如:抽空字段,指明再分配是否是抽空的一部分;再平衡字段,指明再分配是否是再平衡功能的一部分;备用字段,指明备用处理器是否可以在相同的段中;段编号,指明用于抽空功能的段的编号;返回码;以及旧配置数据,其提供用于跟踪和调试的记录,并且包括例如在处理开始时的配置数据(例如oper-PPU、oper-CPU、oper-SAP等等),描述每个物理PU编号的处理器类型的向量,物理到逻辑PU映射,以及每个逻辑PU的处理器信息(例如类型、状态、物理PUid)。
响应于处理器上启动指令,由处理器固件(例如微码)执行再分配,其作为固件中调用指令的结果来执行。作为一个例子,在步骤310中,响应于执行指令,处理环境的处理器被同步。在该例子中,同步是针对所有处理器,包括备用处理器。此外,单处理器被选作主处理器。该选择可以是随机的,或基于一些预先定义的准则。在该例子中,处理器3被选作主处理器。主处理器负责提醒系统中的任何备用处理器进行同步,并且还负责控制处理流程。
响应于环境中的所有操作处理器达到同步,在步骤312中,主处理器确定处理环境的新配置。作为例子,基于处理环境的要求以及调用的原因(例如段抽空、处理器重新分布等等)确定该新配置。作为该确定的一部分,主处理器确定将被再分配的一个或多个物理处理器(源),以及将作为源的目标的一个或多个物理处理器,下面更详细地描述这一点。作出该确定之后,主处理器更新处理环境内的全局结构(例如硬件系统区域存储位置),其描述了对物理处理器分配的改变。例如,全局结构指出哪个物理处理器被再分配给特定的逻辑处理器。这里,在步骤314中,每个处理器回到同步点。
此后,主处理器触发处理器以离开同步状态,并且检查新的物理处理器分配。在步骤316中,由主处理器选定将被再分配的物理处理器将其微结构设计的状态存储在指定的存储器中,并且在步骤318中回到同步点。微结构设计的状态为物理处理器的操作状态。其包括处理器检查点状态信息,所述状态信息包括例如通用寄存器、访问寄存器、浮点寄存器、控制寄存器、定时设备寄存器、系统配置寄存器、指令地址寄存器等的内容。在步骤318中,没有被选定将被再分配的处理器回到同步点。
此后,主处理器触发处理器以离开同步状态,并且再次检查新的物理处理器分配。在步骤320中,由主处理器选定作为目标的物理处理器加载相应的源物理处理器的微结构设计的状态,并且在步骤322中回到同步。在步骤322中,没有被选定作为目标的处理器也回到同步点。
响应于处理器回到同步点,操作完成,并且主处理器触发处理器结束再分配过程。在该实施例中,作为再分配的结果,逻辑处理器1(iPU1)现在由物理处理器2(参见附图标记324)支持,而逻辑处理器2(iPU2)现在由物理处理器1(参见附图标记326)支持。
有关再分配过程的更多细节描述如下。例如,参考图4描述了与确定新配置(步骤312)相关的逻辑的一个实施例。如上所述,响应于系统中的处理器到达同步点,该逻辑在主处理器上执行。
参考图4,在询问400中,确定再分配是否因为抽空而正被执行。再分配的原因由启动再分配的指令来指明。在步骤402中,如果再分配因为抽空而正被执行,则建立源处理器列表,其包括物理上位于作为移除目标的段上的非备用处理器。此外,在步骤404中,建立目标处理器列表,其包括针对源列表中的每个处理器,物理上位于不是移除目标的段之一上的备用处理器。
然而,如果再分配没有因为抽空而在执行,则在该实施例中,再分配作为并行处理器升级操作的一部分而在执行。同样地,作为例子,在步骤406中建立源处理器列表,其包括不在基于处理器类型(例如CPU、SAP等等)和机器配置(例如每段物理处理器的数量,以及系统中的段的数量)的所需物理位置中的处理器。这由例如保持在内部存储器中的数据结构(例如表)来确定。
除了源列表之外,在步骤408中建立目标处理器列表,其中对于源处理器列表中的每个处理器,找到没有位于其最优物理位置,但是会符合源处理器位置的要求的另一个处理器。即,如由保持在内部存储器中的数据结构所确定的,每个目标为没有在基于处理器类型和机器配置的其最优物理位置中的物理处理器。
建立源和目标处理器列表之后,在步骤410中,不考虑再分配的原因,保存源和目标列表。在一个例子中,源和目标处理器列表被保存在硬件系统区域存储器的公共区域中,使得列表可用于系统中的所有处理器。
随后,在步骤412中更新配置。作为一个例子,更新硬件系统区域存储器中的处理器配置信息以反映最终配置。这包括更新物理到逻辑向量,逻辑到物理向量,以及每个处理器类型的位向量(表明处理器的类型,例如SAP,CPU)。
在主处理器确定新配置之后,每个处理器将检查新的物理处理器分配。参考图5描述该处理的一个实施例。最初,在询问500中,由执行该逻辑的处理器确定其是否应离开其同步点。如果处理器尚未被触发离开其同步点,则其保留。否则,在步骤502中,处理器从硬件系统区域存储器中获取源处理器列表。在询问504中,处理器检查列表以确定其是否已被指定为源处理器。如果不是,则在步骤506中,完成该处理器的处理,而且其到达另一个同步点。
然而,如果处理器被指定为源处理器,则在步骤508中,处理器在硬件系统区域存储器中存储在这里被称作为Runit或微结构设计的状态的其自身操作状态。该操作状态包括例如由微码可见的处理器的完全状态。在一个例子中,使用一系列读Runit寄存器和存储指令完成存储。每个寄存器由例如指令读取,并且所指定的寄存器的内容以数据结构的方式被存储在存储器(例如硬件系统区域存储器)中。此后,在步骤506中其进入同步点。
在处理器存储Runit状态并且进入另一个同步点之后,如参考图6所描述的,执行进一步的处理。 在一个实施例中,最初,在询问600中确定处理器是否应离开同步点。在其何时能够离开同步点方面,每个处理器由主处理器触发。主处理器在源处理器存储其操作或微结构设计的状态之后,触发处理器离开同步状态,并且检查新的物理处理器分配。处理器直到该点之前一直保留在同步点处。如果确定处理器将离开同步点,则在步骤602中其获取目标处理器列表。在询问604中,处理器检查列表以确定其是否被指定为目标。如果处理器为目标处理器,则在步骤606中其更新所存储的结构设计的状态。例如,目标处理器基于标识该目标的源的目标列表,确定源处理器的所存储的操作状态在硬件系统区域存储器中的位置。其更新源处理器的所存储的操作状态以反映新的物理处理器。例如,其更新处理器单元编号以反映目标物理处理器单元编号。
此外,在步骤608中,目标处理器将所存储的结构设计的状态加载到目标处理器上。在一个例子中,目标处理器发出以改变的源处理器的所存储的Runit状态为目标的加载R-Unit状态指令。加载R-Unit状态指令以例如微码方式执行,并且在目标处理器上通过单一、原子操作加载相应源处理器的R-Unit寄存器。例如,起始于加载指令的操作数字段中所指定的存储位置,顺序地、每次双字地加载寄存器。在由Siegel等人于2001年2月13日提交的、标题为″Transparent ProcessorSparing″的美国专利6,189,112中描述了该指令的一个实施例,这里完整地参考引用了该专利。
此后,在步骤610中,处理回到同步点。响应于所有处理器回到同步点,操作完成,并且主处理器触发所有处理器以回到正常操作。在一个例子中,这包括进行触发以结束内部指令。
上面详细描述的是并行再分配逻辑处理器的物理支持的能力。在(例如不处于出现故障、检查停止或时钟停止状态的)物理处理器的操作期间,一个物理处理器的操作状态被移动到另一个物理处理器。利用该再分配,另一个物理处理器支持逻辑处理器。对于环境的一个或多个处理器可以完成这个。
本发明的一个或多个方面可包含于具有例如计算机可用介质的制造产品中(例如,一个或多个计算机程序产品)。介质具有例如逻辑的计算机可读程序代码装置(例如指令、代码、命令等等),以提供并且有利于本发明的能力。制造产品可作为计算机系统的一部分被包含,或被单独销售。
参考图7描述引入本发明的一个或多个方面的制造产品或计算机程序产品的一个例子。计算机程序产品700包括例如一个或多个计算机可用介质702以存储计算机可读程序代码装置或逻辑704,用于提供以及有利于本发明的一个或多个方面。介质可以是电子、磁、光学、电磁、红外或半导体系统(或装置或设备)或传播介质。计算机可读介质的例子包括半导体或固态存储器、磁带、可拆卸计算机盘片、随机访问存储器(RAM)、只读存储器(ROM)、硬磁盘和光盘。光盘的例子包括光盘只读存储器(CD-ROM)、光盘读/写存储器(CD-R/W)和DVD。
由一个或多个计算机可读程序代码装置或逻辑定义的程序指令序列或一个或多个相关模块的逻辑组件指引本发明的一个或多个方面的执行。
有利之处是,逻辑处理器的物理支持的再分配与物理处理器的操作并行地执行。即,为了执行该再分配,处理器不必处于检查停止、时钟停止或故障模式。此外,目标处理器不必为备用处理器。可对软件透明地执行再分配,并且无需软件的介入,软件包括操作系统和/或逻辑分区管理程序。作为一个例子,以微码方式执行再分配以提供某些性能增强。然而,在其他实施例中,可以以软件、硬件、固件或其组合的方式执行。
虽然上面描述了各个实施例,但是这仅仅是例子。例如,除了此处所描述的处理环境之外的其它处理环境也可受益于本发明的一个或多个方面。例如,可以有比此处所描述的更多或更少的处理器,并且处理器可以不同于zSeries处理器。进一步地,操作系统可以不同于z/OS,并且不同处理器中的操作系统可以相同或彼此不同。在没有偏离本发明的宗旨的情况下,可以对处理环境做若干其它改变。
作为另一个的例子,虽然在此处所描述的实施例中执行两个处理器的交换,但是这仅仅是一个例子。再分配可以在比上面描述的更多或更少的处理器之间执行。并且,在另一个例子中,主处理器可以是源或目标或者两个都是。在另一个例子中,虽然指令被用于执行包括启动再分配的某些功能,但是在其他实施例中,这些功能可以由其它指令执行。在没有偏离本发明的宗旨的情况下,可以存在若干其它改变。
进一步地,适于存储和/或执行程序代码的数据处理系统是可用的,其包括至少一个直接或通过系统总线间接连接到存储器单元的处理器。存储器单元包括例如在实际执行程序代码期间采用的本地存储器,大容量存储器,以及高速缓冲存储器,其提供至少一些程序代码的临时存储以便减少在执行期间必须从大容量存储器取回代码的次数。
输入/输出或I/O设备(包括但不限于键盘、显示器、指示设备等等)可被直接或通过I/O控制器的介入连接到系统。网络适配器也可被连接到系统,以使数据处理系统能通过专用或公共网络的介入连接到其它数据处理系统或远程打印机或存储设备。调制解调器、电缆调制解调器和以太网卡仅是可用网络适配器类型的几个例子。
本发明的一个或多个方面的能力可以通过软件、固件、硬件或其某种组合来实现。可提供至少一个机器可读的程序存储设备,其包含至少一个指令程序,可由机器执行以执行本发明的能力。
此处所描述的流程图仅是例子。在没有背离本发明的精神的情况下,可以对这些图或其中所述的步骤(或操作)做若干改变。例如,可以按不同顺序执行步骤,或可以增加、删除或修改步骤。所有这些变化被认为是请求保护的发明的一部分。
虽然此处已经详细描述了优选实施例,但是本领域技术人员应当理解,在没有背离本发明的精神的情况下可以做各种修改、添加、替换等,并且因此认为这些修改、添加、替换在如下面权利要求书中定义的本发明的范围内。
Claims (15)
1.一种再分配处理环境的物理处理器的方法,所述方法包括:
确定支持逻辑处理器的物理处理器将被改变;以及
将另一个物理处理器再分配给所述逻辑处理器,其中再分配与所述物理处理器的操作并行进行。
2.根据权利要求1的方法,其中再分配对于所述物理处理器和所述另一个物理处理器的一个或多个操作系统来说是透明的。
3.根据权利要求1的方法,其中再分配包括将当前分配给所述逻辑处理器的所述物理处理器的操作状态加载到所述另一个物理处理器上,其中响应于所述加载,所述另一个物理处理器被分配给所述逻辑处理器。
4.根据权利要求3的方法,其中所述操作状态包括来自物理处理器的以下部分中的至少一个的内容:
一个或多个通用寄存器、一个或多个访问寄存器、一个或多个浮点寄存器、一个或多个控制寄存器、一个或多个定时设备寄存器、一个或多个系统配置寄存器以及一个或多个指令地址寄存器。
5.根据权利要求1的方法,其中再分配包括:
确定处理环境的新配置;
由当前分配给所述逻辑处理器的所述物理处理器使用所述新配置确定其将被替换;
由所述物理处理器存储所述物理处理器的操作状态;
由所述另一个物理处理器检查所述新配置,以确定所述另一个物理处理器将被分配给所述逻辑处理器;以及
在所述另一个物理处理器上加载所述物理处理器的所存储的操作状态。
6.根据权利要求5的方法,其中再分配是与所述物理处理器和所述另一个物理处理器的操作并行进行的,其中在再分配期间,所述物理处理器和所述另一个物理处理器不处于检查停止、时钟停止或者故障模式中的任何一个。
7.根据权利要求5的方法,进一步包括由所述另一个物理处理器使用所述新配置确定其是将替换所述物理处理器的所述另一个物理处理器。
8.根据权利要求7的方法,其中加载包括:
确定存储器中存储所述物理处理器的操作状态的位置;以及
从所确定的位置加载所述物理处理器的操作状态。
9.根据权利要求8的方法,其中加载进一步包括更新所述物理处理器的操作状态以反映所述另一个物理处理器的处理器编号。
10.根据权利要求5的方法,其中确定新配置包括:
建立至少包括要再分配的所述物理处理器的源处理器列表;以及
建立至少包括要用作替换的所述另一个物理处理器的目标处理器列表,其中源处理器列表和目标处理器列表的建立取决于再分配的原因。
11.根据权利要求5的方法,进一步包括选择处理环境的主处理器以控制再分配。
12.一种再分配处理环境的物理处理器的系统,所述系统包括:
由物理处理器所支持的逻辑处理器;以及
被再分配给所述逻辑处理器的另一个物理处理器,用于替换所述物理处理器以作为所述逻辑处理器的支持,其中与所述物理处理器的操作并行地再分配所述另一个物理处理器。
13.如权利要求12所述的系统,其中所述另一个物理处理器适合于将所述物理处理器的操作状态加载在所述另一个物理处理器上,其中响应于所述加载,所述另一个物理处理器被分配给所述逻辑处理器。
14.如权利要求12所述的系统,其中为进行再分配:
当前分配给所述逻辑处理器的所述物理处理器适合于使用处理环境的新配置确定其将被替换,以及存储其操作状态;以及
所述另一个物理处理器适合于检查处理环境的新配置以确定所述另一个物理处理器将被分配给所述逻辑处理器,以及加载所存储的操作状态。
15.如权利要求14所述的系统,其中所述另一个物理处理器进一步适于确定在存储器中所述物理处理器的操作状态所存储的位置,以及从所确定的位置加载所述物理处理器的操作状态。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/461,153 | 2006-07-31 | ||
US11/461,153 US7461241B2 (en) | 2006-07-31 | 2006-07-31 | Concurrent physical processor reassignment method |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101118503A true CN101118503A (zh) | 2008-02-06 |
CN101118503B CN101118503B (zh) | 2010-04-14 |
Family
ID=38987925
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101088626A Expired - Fee Related CN101118503B (zh) | 2006-07-31 | 2007-06-05 | 再分配处理环境的物理处理器的方法和系统 |
Country Status (3)
Country | Link |
---|---|
US (2) | US7461241B2 (zh) |
JP (1) | JP5071913B2 (zh) |
CN (1) | CN101118503B (zh) |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8473460B2 (en) * | 2006-11-21 | 2013-06-25 | Microsoft Corporation | Driver model for replacing core system hardware |
US7934121B2 (en) * | 2006-11-21 | 2011-04-26 | Microsoft Corporation | Transparent replacement of a system processor |
US7877358B2 (en) | 2006-11-21 | 2011-01-25 | Microsoft Corporation | Replacing system hardware |
US8086906B2 (en) | 2007-02-15 | 2011-12-27 | Microsoft Corporation | Correlating hardware devices between local operating system and global management entity |
US8180997B2 (en) * | 2007-07-05 | 2012-05-15 | Board Of Regents, University Of Texas System | Dynamically composing processor cores to form logical processors |
US20090187747A1 (en) * | 2008-01-18 | 2009-07-23 | Infineon Technologies Ag | System and method for tracing instruction pointers and data access |
US8205117B2 (en) * | 2009-02-25 | 2012-06-19 | Hewlett-Packard Development Company, L.P. | Migratory hardware diagnostic testing |
US8910176B2 (en) | 2010-01-15 | 2014-12-09 | International Business Machines Corporation | System for distributed task dispatch in multi-application environment based on consensus for load balancing using task partitioning and dynamic grouping of server instance |
RU2011117765A (ru) * | 2011-05-05 | 2012-11-10 | ЭлЭсАй Корпорейшн (US) | Устройство (варианты) и способ реализации двухпроходного планировщика задач линейной сложности |
US9015025B2 (en) | 2011-10-31 | 2015-04-21 | International Business Machines Corporation | Verifying processor-sparing functionality in a simulation environment |
US9256460B2 (en) | 2013-03-15 | 2016-02-09 | International Business Machines Corporation | Selective checkpointing of links in a data flow based on a set of predefined criteria |
US9323619B2 (en) | 2013-03-15 | 2016-04-26 | International Business Machines Corporation | Deploying parallel data integration applications to distributed computing environments |
US9401835B2 (en) | 2013-03-15 | 2016-07-26 | International Business Machines Corporation | Data integration on retargetable engines in a networked environment |
US9477511B2 (en) | 2013-08-14 | 2016-10-25 | International Business Machines Corporation | Task-based modeling for parallel data integration |
US10346168B2 (en) | 2015-06-26 | 2019-07-09 | Microsoft Technology Licensing, Llc | Decoupled processor instruction window and operand buffer |
US10409606B2 (en) | 2015-06-26 | 2019-09-10 | Microsoft Technology Licensing, Llc | Verifying branch targets |
US10409599B2 (en) | 2015-06-26 | 2019-09-10 | Microsoft Technology Licensing, Llc | Decoding information about a group of instructions including a size of the group of instructions |
US10175988B2 (en) | 2015-06-26 | 2019-01-08 | Microsoft Technology Licensing, Llc | Explicit instruction scheduler state information for a processor |
US10169044B2 (en) | 2015-06-26 | 2019-01-01 | Microsoft Technology Licensing, Llc | Processing an encoding format field to interpret header information regarding a group of instructions |
US10191747B2 (en) | 2015-06-26 | 2019-01-29 | Microsoft Technology Licensing, Llc | Locking operand values for groups of instructions executed atomically |
US11755484B2 (en) | 2015-06-26 | 2023-09-12 | Microsoft Technology Licensing, Llc | Instruction block allocation |
US9946548B2 (en) | 2015-06-26 | 2018-04-17 | Microsoft Technology Licensing, Llc | Age-based management of instruction blocks in a processor instruction window |
US9952867B2 (en) | 2015-06-26 | 2018-04-24 | Microsoft Technology Licensing, Llc | Mapping instruction blocks based on block size |
US10768936B2 (en) | 2015-09-19 | 2020-09-08 | Microsoft Technology Licensing, Llc | Block-based processor including topology and control registers to indicate resource sharing and size of logical processor |
US11016770B2 (en) | 2015-09-19 | 2021-05-25 | Microsoft Technology Licensing, Llc | Distinct system registers for logical processors |
US11126433B2 (en) | 2015-09-19 | 2021-09-21 | Microsoft Technology Licensing, Llc | Block-based processor core composition register |
US10095550B2 (en) | 2016-10-19 | 2018-10-09 | International Business Machines Corporation | Performance-based reallocating of logical processing units to sockets of a computer system |
US11531552B2 (en) | 2017-02-06 | 2022-12-20 | Microsoft Technology Licensing, Llc | Executing multiple programs simultaneously on a processor core |
CN114391137A (zh) * | 2019-06-12 | 2022-04-22 | 纽约大学阿布扎比公司 | 用于多核处理系统中的域分解感知处理器分配的系统、方法和计算机可存取介质 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4807228A (en) * | 1987-03-18 | 1989-02-21 | American Telephone And Telegraph Company, At&T Bell Laboratories | Method of spare capacity use for fault detection in a multiprocessor system |
US5295258A (en) * | 1989-12-22 | 1994-03-15 | Tandem Computers Incorporated | Fault-tolerant computer system with online recovery and reintegration of redundant components |
US5301324A (en) * | 1992-11-19 | 1994-04-05 | International Business Machines Corp. | Method and apparatus for dynamic work reassignment among asymmetric, coupled processors |
US5504859A (en) * | 1993-11-09 | 1996-04-02 | International Business Machines Corporation | Data processor with enhanced error recovery |
US5790850A (en) * | 1996-09-30 | 1998-08-04 | Intel Corporation | Fault resilient booting for multiprocessor computer systems |
US6199179B1 (en) * | 1998-06-10 | 2001-03-06 | Compaq Computer Corporation | Method and apparatus for failure recovery in a multi-processor computer system |
US6189112B1 (en) * | 1998-04-30 | 2001-02-13 | International Business Machines Corporation | Transparent processor sparing |
US6292822B1 (en) * | 1998-05-13 | 2001-09-18 | Microsoft Corporation | Dynamic load balancing among processors in a parallel computer |
US6321344B1 (en) * | 1998-12-10 | 2001-11-20 | Lucent Technologies Inc. | Reliable distributed processing system |
US6519660B1 (en) * | 1999-09-28 | 2003-02-11 | International Business Machines Corporation | Method, system and program products for determining I/O configuration entropy |
US6574748B1 (en) * | 2000-06-16 | 2003-06-03 | Bull Hn Information Systems Inc. | Fast relief swapping of processors in a data processing system |
US7480911B2 (en) * | 2002-05-09 | 2009-01-20 | International Business Machines Corporation | Method and apparatus for dynamically allocating and deallocating processors in a logical partitioned data processing system |
US7290260B2 (en) * | 2003-02-20 | 2007-10-30 | International Business Machines Corporation | Dynamic processor redistribution between partitions in a computing system |
US7275180B2 (en) * | 2003-04-17 | 2007-09-25 | International Business Machines Corporation | Transparent replacement of a failing processor |
US7496915B2 (en) * | 2003-04-24 | 2009-02-24 | International Business Machines Corporation | Dynamic switching of multithreaded processor between single threaded and simultaneous multithreaded modes |
US20040216101A1 (en) * | 2003-04-24 | 2004-10-28 | International Business Machines Corporation | Method and logical apparatus for managing resource redistribution in a simultaneous multi-threaded (SMT) processor |
US6990545B2 (en) * | 2003-04-28 | 2006-01-24 | International Business Machines Corporation | Non-disruptive, dynamic hot-plug and hot-remove of server nodes in an SMP |
US8171480B2 (en) * | 2004-01-27 | 2012-05-01 | Network Appliance, Inc. | Method and apparatus for allocating shared resources to process domains according to current processor utilization in a shared resource processor |
US8984517B2 (en) * | 2004-02-04 | 2015-03-17 | Intel Corporation | Sharing idled processor execution resources |
US7266540B2 (en) * | 2004-03-04 | 2007-09-04 | International Business Machines Corporation | Mechanism for dynamic workload rebalancing in a multi-nodal computer system |
US8156490B2 (en) * | 2004-05-08 | 2012-04-10 | International Business Machines Corporation | Dynamic migration of virtual machine computer programs upon satisfaction of conditions |
JP2006072591A (ja) * | 2004-09-01 | 2006-03-16 | Hitachi Ltd | 仮想計算機制御方法 |
-
2006
- 2006-07-31 US US11/461,153 patent/US7461241B2/en not_active Expired - Fee Related
-
2007
- 2007-06-05 CN CN2007101088626A patent/CN101118503B/zh not_active Expired - Fee Related
- 2007-07-25 JP JP2007192766A patent/JP5071913B2/ja not_active Expired - Fee Related
-
2008
- 2008-11-07 US US12/266,610 patent/US7664940B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2008033933A (ja) | 2008-02-14 |
CN101118503B (zh) | 2010-04-14 |
US20080028413A1 (en) | 2008-01-31 |
US20090070563A1 (en) | 2009-03-12 |
US7664940B2 (en) | 2010-02-16 |
JP5071913B2 (ja) | 2012-11-14 |
US7461241B2 (en) | 2008-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101118503B (zh) | 再分配处理环境的物理处理器的方法和系统 | |
CN100495345C (zh) | 用于在逻辑分区之间共享操作系统内核的方法和系统 | |
CN100580631C (zh) | 用于替换故障物理处理器的方法和装置 | |
CN1834950B (zh) | 具有活动和非活动执行核心的多核处理器 | |
CN100410872C (zh) | 用于增强的运行时间主机支持的方法和设备 | |
US8612977B2 (en) | Wake-and-go mechanism with software save of thread state | |
US7774636B2 (en) | Method and system for kernel panic recovery | |
CN102567128B (zh) | 系统复位 | |
US20070150713A1 (en) | Methods and arrangements to dynamically modify the number of active processors in a multi-node system | |
CN110275722A (zh) | 用于升级应用的方法、装置、设备和存储介质 | |
CN110083494B (zh) | 在多核心环境中管理硬件错误的方法和装置 | |
US20110173631A1 (en) | Wake-and-Go Mechanism for a Data Processing System | |
US20110173593A1 (en) | Compiler Providing Idiom to Idiom Accelerator | |
US20090199189A1 (en) | Parallel Lock Spinning Using Wake-and-Go Mechanism | |
JP5476481B2 (ja) | ノード故障の対処 | |
JP2009230577A (ja) | ソフトウェアアップデート管理プログラム、ソフトウェアアップデート管理装置、およびソフトウェアアップデート管理方法 | |
JP6288275B2 (ja) | 仮想化基盤管理装置、仮想化基盤管理システム、仮想化基盤管理方法、及び、仮想化基盤管理プログラム | |
US20200081716A1 (en) | Controlling Accesses to a Branch Prediction Unit for Sequences of Fetch Groups | |
CN101620573B (zh) | X86体系结构内存管理单元虚拟化方法 | |
CN102597972A (zh) | 虚拟计算机系统、区域管理方法及程序 | |
US7934073B2 (en) | Method for performing jump and translation state change at the same time | |
JP3170472B2 (ja) | レジスタ・リマップ構造を有する情報処理システム及び方法 | |
US10592329B2 (en) | Method and electronic device for continuing executing procedure being aborted from physical address where error occurs | |
GB2400942A (en) | Processor type determination using reset vector | |
CN112612503A (zh) | 一种软件的国际化资源扩展方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100414 Termination date: 20200605 |