增强众核处理器的可靠性的制作方法

文档序号:6570590阅读:194来源:国知局

专利名称::增强众核处理器的可靠性的制作方法增强众核处理器的可靠性
背景技术
:本发明的实施例涉及多处理器系统,尤其涉及改善这种多处理器系统中的可靠性。计算机系统正日益变得复杂,并开始包括高级处理器(包括多核(multicore)处理器)。已经提出了具有两个处理器核心的双核处理器,这两个处理器核心并发地执行指令。预期在将来,处理器可以被制造成包括额外的核心,例如,多于两个的核心。当前路线图包括具有四个和八个核心的处理器。此外,长久以来一直期望处理器将演进到众核(many-core)环境,其中,在单个处理器封装中、甚至在封装的单个基板或管芯(die)上具有许多核心。因此,预期在将来可以提供具有8个、16个、32个、64个、128个或更多核心的处理器。除了与这种众核处理器相关的复杂性之外,对可靠性的关注也日益增加。特别地,由于各种技术相关的问题,众核处理器中的核心的故障率比单核或双核处理器的更高。虽然对于这些较大的故障率存在多种原因,但所有这些原因组合在一起,使得众核处理器的核心的使用寿命一代一代被縮短。这种使用寿命的减少可归结于多个降级(degradation)来源,包括电迁移、应力迁移、时间相关电介质击穿(TDDB)、负偏压温度不稳定性(NBTI)和热循环。这些故障机制中的大部分会在高温时表现出,目卩,温度越高,核心的平均无故障时间(MTTF)越低。处理器或其核心的故障率一般被称作一定时间内的故障数(failuresintime,FIT),其是109小时内的预期故障数。利用FIT值,可得到MTTF,其为1/FIT。对于各种技术而言,假定在固定条件(例如温度、电压、频率和利用率)下的稳态运行时获得MTTF。因此,增加这些参数中的任一个都将导致使用寿命可靠性的进一步降低。图1是根据本发明一个实施例的众核处理器的方框图。图2是根据本发明一个实施例的方法的流程图。图3是根据本发明一个实施例的核心分配方法的流程图。图4是根据本发明一个实施例的核心重新分配方法的流程图。图5是根据本发明一个实施例的可靠性最大化方法的流程图。图6是根据本发明一个实施例的多处理器系统的方框图。具体实施例方式本发明的实施例可以用于改善半导体器件的可靠性,尤其是包括例如众核处理器这样的处理器的可靠性。在不同的实现中,可以实现用于为执行指令而分配众核处理器中的核心的多种方案。这些分配方案可以基于各种运行参数来选择要激活或启用的核心。在选择要激活的核心时所考虑的一个特定运行参数是温度。因为很多半导体故障机制在高温时表现出,因此温度与核心MTTF和众核可靠性有直接的关系。因此,本发明的实施例可以实现核心粒度的机制,以管理温度从而最大化众核可靠性。在最大化这种可靠性的同时,实施例还可以考虑在分配核心的过程中的核心降级和进程变化。除了核心分配方案之外,本发明的实施例可以在例如当前启用的核心遇到故障或另外无法以期望的运行级别继续处理时执行重新分配。在各个实施例中,重新分配方案还可以考虑基于温度的分析,以从一组可用的备用核心(sparecore)中选择一个或多个核心用作活动的或启用的核心。进一步而言,本发明的实施例还可以基于处理负载来选择要激活的核心。例如,为了改善彼此通信的进程的性能,紧密耦合的进程可以被调度到彼此紧密关联的核心上,以最小化通信路径。在众核处理器上,核心温度对邻近核心具有相当大的横向影响。例如,如果两个邻近核心同时在工作,则它们的平均温度相比它们由一个或多个备用核心分隔开的情形要更高。备用核心(或故障核心)吸收由活动核心产生的热量,使得活动核心上的温度降低。作为例子,考虑具有16个活动核心和16个备用核心的32核心的众核处理器。利用根据本发明的实施例的分配虔新分配方案,可以实现彻底降低的核心温度。例如,相比平等地激活的连续核心,棋盘图案(例如,1个联机(online),1个备用)能在降低的温度下运行。以此方式,可以改善众核环境下的核心可靠性,延长了众核处理器的使用寿命。取决于所期望的结构,不同的实施例可以用不同的方式实现。在一些实施例中,专用硬件可用于选择并控制众核处理器的核心。在其它实施例中,可以实现纯粹基于软件的方法。当然,可以对纯硬件和软件方案做出变更,其中一些专用硬件以及在专用硬件上运行的软件和/或其它处理资源被一同使用。例如,在一些实施例中,微控制器可以存在,以执行一个或多个算法,所述算法可以以控制器的微码来实现。在其它实施例中,算法可以以在众核处理器的专用核心上或所选择的核心或其部分上执行的软件来实现。分配/重新分配方案可以基于每一个核心(即,核心粒度)来最小化核心故障率,从而最大化众核可靠性。在一些实现中,众核处理器可以具有相当多个保持为备用的核心。在核心故障的情形下,一个备用核心可以从可用的备用池中被选出,并可被选中以最大化众核可靠性。大多数核心故障机制具有很强的温度依赖性,并且作为一般的规则,核心故障率在高温时增加。因此,考虑了温度的核心分配/重新分配方案可以增加众核处理器可靠性。在一些实施例中,能够实现众核使用模型,该模型能使保证目标使用寿命的持续的性能级别最大化。类似地,该模型能最大化使用寿命,保证了目标级别的性能。这些模型提供了初始核心分配以及在核心故障时或在系统无法提供期望性能时的核心重新配置,它们考虑到了进程变化和时间相关的频率降级。此外,在一些实施例中,对于其中不同的核心相互通信的应用,可以使性能与可靠性相平衡。现在参照图1,示出根据本发明一个实施例的众核处理器的框图。如图1所示,处理器IO包括多个单独核心15。更具体地,图1的实施例示出了一种配置,其包括经由互连结构30耦合的8x8核心阵列。虽然以图1的实施例中的这种具体实现示出,但需要理解的是,本发明的范围并不受此限制,在其它实施例中可以提出其它配置,例如一维、二维或三维网格或一维、二维或三维环面配置。此外,虽然在图1的实施例中示出64个单独核心,但需要理解的是,在不同的实现中众核处理器可以包括更多或更少的这种核心。每个核心15可以是相对小的核心,至少与单核或双核处理器相比是如此。在各个实施例中,每一个核心15可以包括局部存储器(localmemory)(例如,高速缓冲存储器),并可以进一步耦合到共享存储器。特别地,如图1所示,共享存储器20是全局共享存储器,其可以经由互连结构30耦合到单独核心15。虽然为了说明的简便而没有在图1中示出,但需要理解的是,处理器IO可以包括其它部件,例如输入/输出(I/0)接口、互连、总线、逻辑组件等。可以基于各种算法来选择要激活的核心15。为了实现这种激活,互连结构30可以也是可配置的,从而能够实现激活的核心15之间改进的连通性,增加了通信速度。现在参照图2,示出了根据本发明一个实施例的方法的流程图。如图2所示,方法100可以用于分配众核处理器的核心,以达到期望的性能级别。在各个实施例中,方法100可以在例如专用微控制器、其它逻辑或处理器核心中执行。如图2所示,方法100可以开始于识别出众核处理器中的可用核心(方框110)。例如,在初始化时或在其它时间,可以将轮询请求发送至所有核心,并且可以从能够作出响应的那些核心(即,非故障核心)接收到响应。仍参照图2,接下来,可以将处理器内的第一组核心分配为活动状态(方框120)。在一些实施例中,将核心分配到第一组是基于一个核心相对于其它活动核心的位置。也就是说,在各个实施例中,对于要启用的核心的分析可以考虑邻近核心的状态。以此方式,可以选择启用具有最小数目的活动邻近核心的核心,从而能够实现运行温度降低,这是因为从活动核心消散的温度可以通过接近该活动核心的故障核心或备用核心来消散。可以分配第一组核心,直到达到给定的性能级别。性能级别可以采用不同的形式,例如每秒的指令数或其它测量方式。需注意的是,基于被激活用于运行的第一组核心15(图1中所示),可以对将核心耦合在一起的互连结构进行配置或重新配置。更具体地,可以选择性地控制互连结构,以改善第一组核心之间的通信。在一个实施例中,可以将形成互连结构的开关配置成以有效的方式连接第一组核心。仍参照图2,接下来,可以将第二组核心分配为备用状态(方框130)。也就是说,当通过启用第一组核心中的数个核心而实现了期望的性能级别吋,可以将剩下的可用核心置于具有备用状态的第二组中。如以下将进一步讨论的,可以稍后将这种备用核心从第二组移到第一组中。仍参照图2,在将可用核心分配到第一和第二组中(例如,在初始化时)之后,可以继续众核处理器的正常操作。在这样的操作期间,可以在轮询操作后或在接收到信号后的特定间隔时,确定发生了核心故障(菱形140)。如果发生核心故障的话,控制返回至如上所述的方框110。因此,上述的流程可以再次被执行,以重新分配一个或多个核心来替换故障核心。仍参照图2,如果在菱形140处确定没有发生核心故障,则控制转到菱形150。在此可以确定性能级别是否有变化。可能出现两种性能级别变化。一种变化可以是例如来自用户的对于不同的期望性能级别的指示。例如,用户可能期望更强的性能来执行更多复杂的操作。第二种性能变化可以表示众核处理器的实际性能级别已改变,例如由于一个或多个核心不再以其之前的频率运行。因此,如果在菱形150处确定这种性能级别变化,则控制返回到方框110,以重新分配一个或多个核心。如果在菱形150处确定没有这种性能级别变化,则控制返回至上述的菱形140。虽然用图2的实施例中的这种具体实现进行了描述,但需要明白的是,本发明的范围并不受此限制。虽然图2的方法阐述了用于分配和重新分配核心的一般过程,但在一些实施例中,可以实现不同的算法来分配和重新分配核心。在一些实施例中,例如,利用贪婪优化方法,两种方案都可实现对活动核心的类似选择。然而,在其它实施例中,分配和重新分配方案可实现不同的核心选择方法。现在参照图3,示出根据本发明一个实施例的核心分配方案的流程图。如图3所示,方法200可以开始于接收核心状态信息(方框210)。例如,当众核处理器加电时,每个核心可以发送表示成功加电和可用性以及当前最大运行频率的信号。接下来在方框220,所有良好状况的核心可以被初始化为备用核心(方框220)。因此,备用列表可以被保持为最初由众核处理器中存在的多个良好状况的核心构成。接下来,可以确定当前性能是否小于目标性能级别(菱形230)。性能级别可以对应于期望能运行的良好状况的核心的数目、每秒的指令数或其它这样的度量。如果确定性能级别不小于目标级别,则方法200可以结束。否则,控制从菱形230转到方框240。在此,可以基于如这里所述的可靠性最大化算法来分配核心(方框240)。需要注意的是,在进行这种分配后,可以相应地对将核心耦合在一起的互连结构进行配置。也就是说,可以基于一种寻求能最大化众核处理器的可靠性的算法来激活一个核心。可实现^用于最大化众核可靠性的不同方式。然而,在很多实施例中,可以以如下方式来分配核心该方式努力降低众核处理器的总体温度,或至少降低众核处理器的一个或多个活动核心的运行温度。如下文进一步描述的,在不同的实施例中可以实现这种可靠性最大化算法的各种具体实施。仍参照图3,控制从方框240转到方框250。这里,可以将所选择的核心标识为是活动的。例如,在一个实施例中,可以以位图或其它存储机制实现的核心位置图可以具有对应于设定成活动状态的活动核心的表项,以将该核心标识为是活动的。接着控制转到方框260。这里,可以递减备用核心计数(方框260)。如图3所示,控制从方框260转回上述的菱形230。虽然用图3的实施例中的该具体实现进行了描述,但需要明白的是,本发明的范围并不受此限制,而是仍可执行其它分配核心的方式。在一些实施例中,图3的方法200可以在每次众核处理器加电时执行。然而,方法200还可以在各种其它时间时来实现,例如在处理器重置或其它这样的事件时。现在参照图4,示出根据本发明一个实施例的重新分配方法的流程图。与上述关于图3的方法200—样,图4的方法300可以通过微控制器、专用逻辑、众核处理器的核心或以其它方式来执行。如图4所示,方法300可以开始于接收核心故障信息(方框310)。例如,将要发生故障的核心可以发送故障信号。或者,一种轮询方法可以周期性地对各个核心进行轮询,例如依据看门狗定时器机制。如果一个核心没有响应这种轮询,则会指示故障。在接收到这种故障信息后,该发生故障的核心可以被识别为故障核心(方框320)。例如,可以用故障信息来更新核心图(例如位图等)。接下来,控制可以转到菱形330。这里,可以确定众核处理器的性能(考虑到故障)是否小于目标级别(菱形330)。如果不是,则方法300可以结束。否则,控制从菱形330转到方框340。这里,可以基于可靠性最大化算法来分配核心(方框340)。此外,可以相应地重新配置互连结构。控制从方框340转到方框350。这里,可以将所选择的核心标识为是活动的。然后控制转到方框360,这里可以递减备用核心计数(方框360)。如图4所示,控制从方框360转回到上述的菱形330。如上所述,不管是在分配模式下或是在重新分配模式下,实施例可以在选择要激活的核心的过程中实现可靠性最大化算法,现在参照图5,示出根据本发明一个实施例的可靠性最大化方法的流程图。如图5所示,方法400可以开始于选择(例如备用核心列表中的)备用核心来进行分析(方框410)。该分析可以开始于识别待分析的核心的邻近核心(方框420)。根据给定的处理器布局和给定核心的位置,在一些实施例中,给定的核心可以具有与它邻近的一到四个核心。相应地,在方框420中,可以识别出这些邻近核心。接下来,可以确定出具有故障状态或备用状态的邻近核心的数目(方框430)。控制从方框430转到菱形440。这里,可以确定,对于所选择的核心,在方框430所确定出的数目(即邻近数目)是否大于当前最佳核心数目(菱形440)。也就是说,可以将当前邻近数目与之前分析的具有最高数目(个邻近的备用或故障核心)的核心的值相比较。如果所选择的核心具有较大的数目,则控制转到方框450,在此将所选择的核心设定为最佳核心。然后控制从方框450或菱形440转到菱形460。这里,可以确定是否有额外的备用核心仍需分析(菱形460)。如果是的话,则控制返回到上述的方框410。否则,控制转到方框470。这里,可以将所识别出的最佳核心进行分配(方框470)。也就是说,选择了具有最少数目的邻近活动核心的核心。这样,由于邻近的故障核心或备用核心可以帮助所选择的活动核心进行散热,因此对于所选择的核心以及作为整体的众核处理器,能实现温度的降低。虽然用图5的实施例中的这个具体实现来进行描述,但需要理解的是,本发明的范围不受此限制。在一些实施例中,算法可以选择要激活哪些核心以便最大化众核可靠性,而同时保证目标性能。微控制器可以综合收集关于哪些核心已发生故障以及哪些核心当前处于联机或备用状态的信息。在一个实施例中,此信息可以被保持为微控制器上的位图。在另一个实施例中,故障可以表示彻底的核心故障,或即使在降低的频率上核心仍可继续运转。由于与老化相关的效应,例如氧化物厚度问题或NBTI效应,使得p-沟道金属氧化物半导体(PMOS)晶体管的门限电压随着时间逐渐增加,所以降级的核心可能无法在其初始频率上运行,但能在较低频率上运行。随着核心被进行分配/重新分配,微控制器上的核心位图可以被进行更新。在不同的实施例中,该算法可以以软件来实现,并运行为一个核心上的内核进程或用户进程。或者该算法可以以硬件来实现(例如简单的内嵌核心/只读存储器(ROM)对),并作为微控制器的一部分。在任一情形下,该机制的功率影响可能是最小的,因为相对来说不经常运行该算法(例如,在核心发生故障或实质工作负荷改变时)。在一个实施例中,该算法具有两部分初始核心分配部分,其选择哪些核心需联机(即,处于活动或启用状态);以及重新配置部分,其在核心发生故障时决定应激活哪个备用核心以便最大化众核可靠性。该算法可进一步(例如在重新配置部分中)处理通信进程并将它们分派给核心以便使性能最大化。现在参考表1,示出的是根据本发明一个实施例的算法的伪代码表示。表l<table>tableseeoriginaldocumentpage14</column></row><table><table>tableseeoriginaldocumentpage15</column></row><table>如表1所示,该分配部分(COREALLOCATION)可以选择核心,直到达到预设的性能目标。该性能目标可以对应于用户可获取的核心的数目(例如,基于处理器的平均售卖价格)。代替的是,该性能目标可以是众核处理器的总计算功率的抽象概念,其使得可以考虑进程变化和核心降级。由于这些问题,一些核心可能会比其它核心慢。在这种实施例中,通过每一核心的片内变化探针(in-dievariationprobe,IDVP),可以将核心速度报告给微控制器。由微控制器存储每一核心的速度以用于核心分配循环中。仍参考表1,在核心发生故障时启动该重新配置部分(CORERECONFIGURATIONS—个(或多个)备用核心可以联机,直到达到目标性能。需要注意的是,该重新分配还可以考虑核心频率降级。当通过核心的IDVP或通过预测性核心里程监控电路将此报告给微控制器时,在微控制器存储器中更新核心速度,并在核心重新配置循环中考虑降级。如果由于降级使得当前性能下降到目标性能之下,则使得更多核心联机。如表1的实施例所示,核心分配和重新分配部分都使用相同的函数r-"丽M—CO巾,即温度感知函数,其选择要被置于联机的备用核心。函数r-mi^^cw^使用贪婪优化方法,该方法从可用的备用核心集中选择最佳备用核心,以最大化众核可靠性。在表l的实施例中,最佳核心是具有最少的联机邻居的核心。在检查候选核心的邻居的过程中,需要注意的是也考虑故障核心,因为它们与备用核心具有类似的散热特性。此外,还需注意的是,由于生产问题(yieldissues)(如果存在的话)而导致的故障核心也被认为是候选核心的邻居,因此扩大了用于增加正在运转的核心的可靠性的优化机会。作为次级考虑,出于性能原因,将会处理核心对核心的通信。因此,在选择联机核心之后,如果存在进程间通信,则启动可选的次级优化过程。在一些实现中,操作系统(OS)可以将此数据提供给微控制器。该优化过程(即表1中的函数M/m'mz'ze—comwwm'ca"on)能通过使用主动优化方式分配正在通信的进程给彼此紧密接近的核心来改善性能。以一个联机核心开始,将下一个正在通信的进程分配给最接近的核心。该分配可以重复进行,直到所有期望的核心都联机。在其它实施例中,温度感知算法可以被禁用,以便为彼此密切通信的多个进程(例如,紧密耦合的进程)分配彼此紧密接近的多个核心。因此,根据本发明实施例的分配/重新分配机制可以通过OS/应用控制来开启和关闭。例如,如果通信-计算比很高,则可以关闭所述机制,核心以彼此更紧密接近的方式进行分配以增加性能,而可靠性是次级目标。然而,在其它实施例中,在众核处理器使用寿命的大部分耗损阶段中,可以启用该机制,因为在此阶段中核心故障率将会较高。可以以很多不同的系统类型来实现实施例。现在参考图6,示出根据本发明实施例的多处理器系统的框图。如图6所示,该多处理器系统是点对点互连系统,并且包括经由点对点互连550耦合的第一处理器570和第二处理器580。然而,在其它实施例中,该多处理器系统可以是另一种总线架构,例如多点总线或另一种这样的实现。如图6所示,处理器570和580中的每一个处理器都可以是包括第一和第二处理器核心(即处理器核心574a和574b以及处理器核心584a和584b)的众核处理器,虽然在特定实施例中可以存在其它核心和可能地更多其它核心。处理器570和580中的每一个处理器可以进一步分别包括控制器575和585,所述控制器可以用作分配器以分配众核处理器的核心。在各种实现中,控制器575和585(其可以是根据包括分配程序的内嵌ROM进行编程的微控制器)可以基于温度感知算法将多个核心分成多组,但是其它实现也是可能的。虽然在图6的实施例中没有具体示出,但控制器575和585可包括存储器,用于存储位图或其它图信息,其标识出处理器570和580中存在的核心和每一个这种核心的状态(例如活动的、备用的或故障的)。仍参考图6,第一处理器570还包括存储器控制中心(MCH)572和点对点(P-P)接口576和578。类似地,第二处理器580包括MCH582和P-P接口586及588。如图6所示,MCH572和582将处理器耦合到各自的存储器,即存储器532和存储器534,所述存储器可以是本地附接到各自的处理器的部分主存储器。在一些实现中,至少一些全局存储器可以在处理器570和580内实现。在一些实施例中,多处理器系统的操作系统(OS)可以在第一处理器570和第二处理器580中的一个或多个上执行。该OS可以包括调度程序,以调度不同处理器和其核心上的进程。在一些实现中,控制器575和585提供包括活动、备用和故障核心的标识的图信息。利用该信息,调度程序然后可以将进程引导入第一处理器570或第二处理器580中的一个或另一个或其核心中/将进程从第一处理器570或第二处理器580中的一个或另一个或其核心引导出。此外,该调度程序可以基于所分配的核心实现其它控制功能,例如核心分配,以降低正在通信的进程之间的距离。在其它实施例中,可以通过控制器575和585或者在处理器570和580中的其它位置处实现这种调度。第一处理器570和第二处理器580可以分别经由P-P互连552和554耦合到芯片组590。如图6所示,芯片组590包括P-P接口594和598。此外,芯片组590包括接口592,以耦合芯片组590和高性能图形引擎538。在一个实施例中,高级图形端口(AGP)总线539可以用于将图形引擎538耦合到芯片组590。AGP总线539可符合由加利福尼亚SantaClara的英特尔公司在1998年5月4日发布的加速图形端口接口规格的修订版2.0。另外,点对点互连539可以耦合这些部件。继而,芯片组590可以经由接口596耦合到第一总线516。在一个实施例中,第一总线516可以是外围部件互连(PCI)总线,如由1995年6月的PCI本地总线规格的产品版本修订版2.1所定义的,或是例如PCIExpress总线或另一种第三代输入/输出(i/o)互连总线这样的总线,但是本发明的范围并不受此限制。如图6所示,各种I/O设备514连同总线桥518可以耦合到第一总线516,总线桥518将第一总线516耦合到第二总线520。在一个实施例中,第二条总线520是少针脚型(LPC)总线。各种设备可以耦合到第二总线520,在一个实施例中,包括例如键盘/鼠标522、通信设备526和可包括代码530的数据存储单元528。此外,音频1/0524可以耦合到第二总线520。实施例可以以代码来实现,并可存储于存储介质上,在所述存储介质上已存储有指令,所述指令用于对系统进行编程以执行所述指令。存储介质可以包括但不限于任何类型的盘(包括软盘、光盘、光盘只读存储器(CD-ROM)、可重写光盘(CD-RW)和磁光盘)、半导体器件(例如只读存储器(ROM)、随机存取存储器(RAM)(例如动态随机存储存储器(DRAM)、静态随机存储存储器(SRAM》、可擦除可编程只读存储器(EPROM)、闪存、电可擦除可编程只读存储器(EEPROM))、磁卡或光卡、或适用于存储电子指令的任何其它类型的介质。虽然已就有限的实施例描述了本发明,但本领域的技术人员会明白其多种修改和变型。所附权利要求旨在涵盖了所有这些修改和变型,因为它们落入了本发明的实质和范围内。权利要求1、一种方法,包括识别众核处理器的多个可用核心;将所述多个可用核心的第一子集分配为启用状态以执行进程,并将所述多个可用核心的第二子集分配为备用状态;以及将关于所述分配的信息存储在存储装置中。2、如权利要求l所述的方法,还包括基于对具有最少数目的处于所述启用状态的邻近核心的核心的识别,分配所述第一子集。3、如权利要求l所述的方法,还包括将所述信息存储在与控制器相关联的位图中,所述位图对应于所述众核处理器中的核心的布局,其中所述控制器分配所述第一子集和第二子集。4、如权利要求l所述的方法,还包括接收关于所述第一子集中的故障核心的故障信息,并将所述第二子集中的核心重新分配为所述第一子集中的核心。5、如权利要求4所述的方法,还包括基于对所述第二子集中具有最少数目的属于所述第一子集的邻近核心的核心的识别,重新分配所述第二子集中的该核心。6、如权利要求l所述的方法,还包括基于所述第一子集中的第一核心和所述第一子集中的第二核心之间的距离,将第一进程分派给所述第一核心,而将第二进程分派给所述第二核心,其中所述第一进程和所述第二进程彼此通信。7、如权利要求1所述的方法,还包括通过所述第二子集和所述众核处理器的故障核心来消散由所述第一子集产生的热量。8、如权利要求1所述的方法,还包括分配所述第一子集,来最大化所述众核处理器的可靠性度量。9、如权利要求8所述的方法,还包括基于所述众核处理器的运行的通信-计算比,禁止分配所述第一子集,来最大化所述可靠性度量。10、一种装置,包括众核处理器,包括位于管芯上的多个核心,所述众核处理器包括分配器,用以选择第一组核心处于活动状态,以及选择第二组核心处于备用状态,其中所述分配器用于基于所述第一组核心位于所述管芯上的位置来选择所述第一组核心。11、如权利要求10所述的装置,其中,所述分配器用于在所述第一组核心中的核心发生故障之后,选择所述第二组核心中的核心以将其包括在所述第一组核心中。12、如权利要求ll所述的装置,其中,所述分配器用于识别所述第二组核心中具有最少数目的属于所述第一组核心的邻近核心的核心。13、如权利要求10所述的装置,其中,所述分配器用于将第一进程调度至所述第一组核心中的第一核心,以及将第二进程调度至所述第一组核心中的第二核心,其中所述第一进程和所述第二进程彼此通信。14、如权利要求10所述的装置,其中,所述众核处理器还包括用于存储核心状态信息的存储装置,所述核心状态信息包括所述多个核心的位置和对应的状态信息。15、如权利要求14所述的装置,其中,所述分配器用于在所述第一组核心中的核心发生故障之后访问所述存储装置,并基于所述核心状态信息,选择所述第二组核心中的核心以用于重新配置至所述第一组核心。16、如权利要求10所述的装置,其中,所述分配器包括所述众核处理器中的专用核心。17、如权利要求IO所述的装置,其中,所述分配器包括微控制器,所述微控制器包括用于存储分配程序的只读存储器(ROM)。18、一种制品,包括包含指令的机器可读存储介质,所述指令如果由机器执行,则使得所述机器执行包括以下步骤的方法接收关于处理器的第一核心的故障信息;以及基于温度感知算法,选择所述处理器的至少一个备用核心,以使得能够执行指令。19、如权利要求18所述的制品,其中,选择所述至少一个备用核心还包括选择多个核心,直到达到所述处理器的目标性能级别。20、如权利要求19所述的制品,其中,所述方法还包括接收核心运行参数信息,并使用所述核心运行参数信息来选择多个核心直到达到所述目标性能级别,所述核心运行参数信息包括时间相关的最大运行频率。21、如权利要求18所述的制品,其中,所述方法还包括通过使用所述温度感知算法来选择所述至少一个备用核心,来降低所述处理器的运行温度o22、如权利要求18所述的制品,其中,所述方法还包括通过所述温度感知算法来选择所述至少一个备用核心,所述至少一个备用核心具有最少数目的处于启用状态的邻近核心。23、如权利要求18所述的制品,其中,所述方法还包括在不使用所述温度感知算法的情况下选择所述至少一个备用核心,以改善所述处理器的性能,所述处理器包括众核处理器。24、如权利要求18所述的制品,其中,所述方法还包括基于所启用的核心子集中的第一核心和所启用的核心子集中的第二核心之间的距离,将第一进程分派给所述第一核心,将第二进程分派给所述第二核心,其中所述第一进程和所述第二进程彼此通信。25、一种系统,包括众核处理器,包括经由互连结构耦合的多个核心,所述众核处理器包括控制器,用以分配第一核心子集来进行运行,以及分配第二核心子集作为备用,其中所述控制器用于基于相对于所述第一核心子集的邻近核心的激活状态,分配所述第一核心子集;以及动态随机存取存储器(DRAM),其耦合到所述众核处理器。26、如权利要求25所述的系统,其中,所述控制器用于在所述第一核心子集中的一个核心发生故障时,选择所述第二核心子集中具有最少数目的属于所述第一核心子集的邻近核心的核心,以将其包括在所述第一核心子集中。27、如权利要求25所述的系统,其中,所述控制器用于在第一运行模式下根据温度感知算法以及在第二运行模式下不根据所述温度感知算法,将第一进程调度至所述第一核心子集中的第一核心,以及将第二进程调度至所述第一核心子集中的第二核心。28、如权利要求25所述的系统,其中,所述控制器还包括用于存储核心状态信息的存储装置,所述核心状态信息包括所述多个核心的位置和对应的激活状态信息。29、如权利要求25所述的系统,其中,基于所述第一核心子集的分配,所述互连结构可重新配置。30、如权利要求25所述的系统,其中,所述控制器包括只读存储器(ROM),所述只读存储器包括分配程序。全文摘要在一个实施例中,本发明包括一种方法,用于识别众核处理器中的可用核心,将第一核心子集分配为启用状态,将第二核心子集分配为备用状态,并在存储装置中存储关于该分配的信息。在某些实施例中,将核心分配为启用状态可以是基于温度感知算法。还描述并主张了其它实施例。文档编号G06F1/16GK101390067SQ200680053450公开日2009年3月18日申请日期2006年2月28日优先权日2006年2月28日发明者A·冈萨雷斯,J·阿韦利亚,O·云萨尔,O·埃尔金,X·韦拉申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1