一种中央处理器cpu热移除、热添加方法及装置的制造方法_3

文档序号:9921938阅读:来源:国知局
器上可以运行业务系统以及控制系统,可以由业务系统进行检测,并判断出存在风险或者已经出现故障的CPU。其中,业务系统是指运行在该第一 CPU拓扑上,主要处理业务任务的系统,而控制系统可以是运行在该CPU拓扑某个特定的CPU或者控制器上,主要用于控制该(PU拓扑的系统。
[0058]还可以是在第一CPU拓扑运行过程中,任务量较小,需要停止部分CPU的工作来节省资源时,第一CPU拓扑确定需要停止工作的CPU。第一CHJ拓扑向控制器发送第一指示信息,通知控制器需要移除的CPU的标识。其中,可以根据CPU的性能,移除耐久性差或者其他性能较差的CPU。
[0059]还可以是控制器通过用户接口接收第一指示信息。例如,当需要对CTU进行更换时,用户可以通过用户接口输入需要更换的(PU的标识。
[0060]控制器还可以通过对第一拓扑中的CPU进行检测,判断出已经故障的CPU,例如,可以检测CPU是否能够正常通电。
[0061 ]另外,可以用CPU的标识来区分不同的CPU,其中,CPU的标识可以是Socket ID(插座的ID)等,能够对CPU起到标识作用的信息。
[0062]需要说明的是,区别于前述第一CPU拓扑的其他CPU或控制器,为了描述简明,统称为控制器。
[0063]S720,确定多个CPU中与第一 CPU符合预设条件的至少一个第二 CPU。
[0064]在确定多个CPU中与所述第一CPU符合预设条件的至少一个第二 CPU时可以有如下实现方式:
[0065]方式一,同一个拓扑结构的CPU,可以采用相同类型的CPU。一般CPU模块具有多个端口,一个CPU上的每个端口可以有不同的端口号,但相同类型的CPU,不同的CPU之间的端口号是相同的,可以确定通过相同的端口号互连的CPU为一个CPU组,在确定多个CPU中与第一 CPU符合预设条件的至少一个第二 CPU时,控制器可以确定与第一 CPU通过相同的端口号相互连接的至少一个第二CPU。例如,如图8所示,这个拓扑结构就是一个具有8颗CPU的拓扑,其中的SX(X = 0,1...7)中的X指的就是Socket ID,其中另外每条连线两端的O,I,2实际代表的是QPI端口号,从图8中可以看出,由相同的端口号相连的CPU组分别为,SO与S2都是通过端口 2连接;SI与S3,S4与S6,S5与S7,也都是通过端口 2连接,他们两两构成CPU组,当S5出现故障时,找到端口2连接的CPU,也就是S7,将S5与S7都移除,剩下的CPU便可以成为一个稳定的拓扑结构。其中,需要说明的是,CPU的分组是依据稳定的拓扑结构规则进行分组的。
[0066]方式二,控制器确定第一CPU在第一CPU拓扑的位置,以及在第一CPU拓扑中,与第一 CPU处于至少一个对称位置上的第二 CPU,或者与第一 CPU处于至少一个对称位置上,且直接连接的任意一个第二CPU。其中,对称可以是中心对称或者是轴对称。例如,图3中的拓扑,与CPU 101处于对称位置的有三个,两个轴对称,一个中心对称,可以将者三个全部移除,也可以只移除与其直接连接的任意一个。
[0067]方式三,服务器中每个CPU可以有至少一个备份CPU,控制器可以确定第一 CPU的至少一个备份第二 CPU,例如,可以对第一 CPU拓扑中的CPU进行分组,并将CPU组的信息预存在服务器中,所述控制器可以确定控制器确定与第一CPU属于同一CPU组的至少一个第二CPU。再例如,如图6所示的拓扑中的CPU,可以两两分成一组,构成四个CPU组,可以将这些CPU组中的CPU的标识对应存储,当需要确定一个需要移除的CPU时,找到对应存储的另一个CPU—并移除即可。
[0068]在确定与第一CPU符合预设条件的至少一个第二 CPU时,可以由服务器的业务系统进行确定。也可以是,服务器上的业务系统将需要移除的CPU的标识传输给控制系统(例如,0S(0perating System,操作系统)、B10S(Basic Input Output System,基本输入输出系统)、BMC(Baseboard Management Controller,管理控制器)或其它软件),由控制系统来判断出不包含第一(PU的第二CPU拓扑,并将需要移除的CPU的标识传输给业务系统,由业务系统移除相应的(PU得到第二 CPU拓扑。
[0069]S730,向第一CPU拓扑发送第二指示信息。其中,第二指示信息用于指示移除第一(PU以及至少一个第二 CPU,得到第二 CPU拓扑,并运行所述第二 CPU拓扑。
[0070]在移除CPU后,服务器需要以第二CPU拓扑进行工作,例如,可以在第二CPU上运行业务系统。
[0071]需要说明的是,移除CPU包括,系统回收分配给该CPU的资源,例如,释放分配给该CPU的资源,或者,将分配给该CPU上的资源移到其他的CPU或CPU拓扑上,例如移到第二 CPU拓扑上,还可以将第二CPU拓扑中的CPU中,也就是除了需要移除的CPU后剩下的CPU中,删除与需要移除的CHJ的逻辑连接,还可以重新设置第二 CPU拓扑中的CPU,使得其能够以第二CPU拓扑进行工作。进一步地,还可以对需要移除的CPU断电。通过上述方式,在第二 CPU拓扑的CPU中,不存在指向第一CPU和至少一个第二CPU的信息,也就是说,在系统运行时,不会出现需要第一 CHJ和至少一个第二 CPU执行的任务,到第一 CPU和至少一个第二 CPU的通道也已经断开,所以第二 CPU拓扑能够稳定的运行。
[0072]本发明实施例在具体实施过程中,CPU拓扑的CPU之间可以通过中间节点的连接,其中,中间节点可以是CPU和/或外部节点控制器XNC,例如图1或图6所示的拓扑结构。
[0073]另外,本发明实施例中的CPU拓扑可以包括偶数个CPU(例如,8个、6个),相应的,移除后的CPU拓扑依然为偶数个。
[0074]应该知道的是,第一CPU拓扑,第二 CPU拓扑皆为稳定的拓扑结构。
[0075]通过本发明实施例,当CPU出现故障或者有需要时,可以在不影响正常的系统运行的情况下,移除该CPU,且保证移除后的CPU拓扑依然稳定,提高了用户体验。
[0076]对于具有非全互联的CPU拓扑的服务器,不仅需要服务器具备连续服务的能力,同时也需要服务器具备灵活扩展的能力,这种扩展一方面可以是在硬件资源或者性能不足的情况通过增加服务器的硬件资源以扩展系统资源,增强服务器的性能,此能力称之为扩容,下面提供了一种(PU拓扑扩容的方法。
[0077]图9为本发明实施例提供的一种中央处理器CPU热添加方法示意图,如图9所示,该方法可以运行在一个具有非全互联的CPU拓扑的多路服务器上,具体下述步骤的指令可以由该非全互联的CPU拓扑某个特定的CPU,或者区别于该非全互联的CPU拓扑的其他CPU或控制器上执行,执行下述步骤所需要的指令可以存储在存储器中。该方法可以包括如下步骤:
[0078]S910,确定第一指示信息。其中,第一指示信息用于指示添加第三CPU,该第三CPU不在当前运行的第三CPU拓扑中。
[0079]用户在对第三CPU安装完成后,可以通过用户接口输入指令,控制器可以接收该指令,其中,该指令可以携带有第三CR]的标识。
[0080]或者,在对需要添加的CPU安装完成后,通过感应器触发特定的电信号,控制器可以接收该信号,然后根据该电信号的指示,获取第三CPU的标识。其中,CTU的标识可以是Socket ID(插座的ID)等,能够对CPU起到标识作用的信息。例如,通过不同的插槽触发的电信号可以是不同的,可以通过电信号判断是哪个插槽安装上了 CPU。或者,不同的插槽上触发的电信号可以是相同的,可以在接收到这个电信号后,服务器便得知有新的CPU安装,可以通过业务系统或者控制系统进行判断,确定出新安装的CPU的标识。
[0081 ] S920,确定与第三CPU符合预设条件的至少一个第四CPU是否已经安装。
[0082]确定与第三CPU符合预设条件的至少一个第四CPU是否已经安装。可以有如下的具体实现方式。
[0083]方式一,该方式的原理与图7所示的步骤S720中方式二的原理相同可以参照理解。其中,具体步骤为,控制器确定第四CPU拓扑中与第三CPU处于至少一个对称位置上的第二CPU是否已经安装。
[0084]方式二,该方式的原理与图7所示的步骤S720中方式三的原理相同可以参照理解。其中,具体步骤为,处理器可以确定第一CPU的至少一个备份CPU是否安装,例如,第四CPU拓扑包括多个CHJ组,该多个CPU组的信息可以预存在服务器中,控制器确定与第三CPU属于同一 CPU组的至少一个第四CPU是否已经安装。
[0085]其中,第三CPU拓扑可能需要添加一组CPU才能够得到一个稳定的拓扑,在确定热添加指示信息时,可能仅有一个CPU的标识,那么业务系统需要确定,该CPU的标识对应的其他CPU的在位情况,当该CPU以及与其对应的CPU全部都安装时,再执行下述步骤。
[0086]S930,若是,向第三CPU拓扑发送第二指示信息。其中,该第二指示信息用于指示添加第三CPU以及至少一个第四CPU,得到第四CPU拓扑,并运行所述第四CPU拓扑。
[0087]其中,第三CPU拓扑在接收到第二指示信息后,可以为第三CPU以及至少一个第四CHJ分配资源,建立第三CPU和至少一个第四CPU与
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1