双CPU是否提供容错功能?


16

假设我购买了两个Intel Xeon,然后将它们安装到服务器级硬件中……如果一个CPU出现故障,另一个CPU仍然可以正常工作并弥补故障,从而提供容错能力吗?

这似乎不太可能,但是我认为我会问而不是做任何假设。

Answers:


29

在普通的双插槽系统中,没有,尽管有些服务器允许热交换处理器和RAM。这些东西确实存在,但是它们处于市场的非常非常高端的位置。

这并不是什么大不了的事-服务器中所有可能发生故障的事物,处理器都位于列表的底部,紧随其后的是将主板固定在机箱上的黄铜小挡板。


1
散热膏安装不正确会导致峰值负载期间CPU过热。我敢肯定,发生这种情况的次数要多于自发黄铜冒口故障。
奇怪的想

8
@Oddthinking我想你太认真了。
彼得

5
即使使用可热插拔的CPU,系统仍然不能容忍其中一个的突然故障。假设OS内核当前正在死的CPU上执行,它不能仅在另一个CPU上恢复执行。对于可热插拔的CPU,内核必须先正常关闭该CPU。
Patrick

4
@Patrik:是的,对。您知道-WRONG;)这是高端CPU的标准行为-当然,这是大型机,CPU成本为5000+美元。他们仍然使用事务性内存,并且事务将在另一个CPU上重新启动。
TomTom '02

5
@TomTom:当然,那是我们在谈论诸如古老的TANDEM(及其现代继任者)之类的东西,而不是普通的x86-64体系结构。
Piskvor

9

谈论x86商用硬件,如果系统正在运行且CPU出现故障,则正常情况下会停止运行。但是,系统在重新启动后仍可以正常运行,尽管速度稍慢。

多数CPU都具有并行处理功能,并不是真正的容错功能。但是,如果系统能够在CPU(或更多)发生故障时仍能启动,那就很好了。

我要说的是,您的CPU发生故障的可能性比Mark Henderson所建议的要高,但可能性仍然很小。以我的经验,大多数情况是在系统频繁过热并自行关闭时发生的(在空调较差的办公室服务器机房中这很容易)。CPU不太喜欢那样。

当然,如果您有一个不错的IBM大型机或类似主机,那么热插拔CPU(板)就足够了。


嗯,但是即使是在硬重启的情况下:如果CPU#0发生故障,IIRC仍然会给您带来麻烦-没有POST,这意味着没有进一步的引导,因为只有第一个CPU用于早期启动过程。
Piskvor

我不知道是不是这样。我应该在服务器上进行测试。我以为没关系,只要有1个CPU,系统就可以正常启动。
aseq 2012年

5

如果CPU出现故障-根据其他答案,这是极不可能的-基本上,系统将无能为力。根据失败的方式,最终可能会以奇怪的方式破坏内存,或者破坏进程表,或者谁知道其他什么。如果您要使用某种活动的监视系统来监视CPU,以确保其工作正常(并且能够回滚CPU在其死机期间所做的任何更改),那么该系统也将是另一种系统可能会失败,并且以编程方式确定软件失败是非常困难的(基本上,实际上,唯一可行的方法是让另一个CPU在完全相同的时间执行完全相同的操作并比较结果-这样最终会减慢速度下来这样

也就是说,CPU故障很少发生,增加系统中的CPU数量实际上会使您的故障率上升,因为现在您可能发生的故障是两倍。您还具有其他也会发生故障的子系统,例如那些使CPU缓存保持同步的子系统,而功耗和热量输出的增加也导致了整个系统故障的因素(当然,主动冷却风扇是另一个原因)故障点)。


1
+1指出CPU倍增会增加机器的故障可能性。更多的“活动部件”意味着发生故障的机会更多。
埃文·安德森

4

您必须准确定义要处理的故障类型。如果我们将一组一起工作的内核/ CPU /计算机视为网络,则故障的一种类型是节点仅停止响应。更为严重的故障是节点开始破坏数据并将错误信息发送给其他节点时。这称为拜占庭式故障,在最坏的情况下,它会通过战略性“谎言”积极破坏网络的运行。比较容易地表明,没有系统可以处理拜占庭式的三分之一或更多节点。

您需要做的是,准确地确定您期望的故障类型,并牢记这一点来设计系统,并接受以下事实:处理任意数量的恶意节点是无法解决的。在您的情况下,如果其中一个出现故障,则至少需要四个CPU。

附带说明一下:在量子物理学中没有不可能,但是如果要等到比宇宙年龄更长的时间才能统计学上有机会观察到某种行为,我们不必说这是可能的。在设计系统时,请记住这一点。;)


2

CPU故障很少发生。故障可能会导致操作系统级别的其他问题。我不认为这是任何形式的容错。


1

另一个答案是,CPU很少发生故障,并且在一般服务器中您无法执行热交换,您可能可以做的就是将服务器留给一个CPU,直到更换了故障的CPU,当然,该过程完全脱机,您需要停止服务器


1
好吧,我不会称之为超级稀有。刚发生在我的一台服务器上。目前正在对其进行故障排除。由于风扇故障,双CPU服务器刚刚丢失了其中一个CPU。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.