2009-11-30 43 views
0

我有一台运行Linux的x86-64计算机,我想补充其他非x86-64 Linux机器。是否可以设置混合体系结构群集?

如果没有相同的体系结构,是否有可能从另一台机器的计算能力中受益?

作为第二个问题,什么样的性能增加可用,是否需要专门的软件来工作?或者,Linux可以将群集/附加机器作为附加CPU抽象出来?

+0

请澄清问题。例如,如果你想要一个编译集群,你可以建立一个编译器,编译成你想要的任何CPU目标,而不管它们实际运行的是什么。 – 2009-12-01 13:08:49

回答

1

正如Henri所说,您需要软件来照顾不同的表示。这排除了MPI,但例如NWS(您可以使用Python,R,Matlab,...)应该工作。

2

取决于软件,它可以或不可以被抽象掉。做这种事通常涉及远程过程调用,并根据您使用的库,它可以或不可以被抽象出去。

一个基本的例子是做一个RPC并给出一个整数作为参数。一些体系结构使用big-endian,另一些体系结构使用little-endian,并且RPC库必须处理此问题。

0

无论如何你都不应该依赖这个事实。您需要拥有正确的抽象层(例如,通过IP进行通信是一个很好的起点)。这部分地需要允许“服务升级”,即添加可能/或不具有与起始群集配置相同架构的较新机器。

想象一下你的老板:“好吧,我们需要把整个服务关掉,因为我们有这些新奇的机器......”(我可以听到响亮而清晰的答复)

当然,如果生产环境的问题在您的特定情况下超出范围,您可以忽略我的报价。我们只是说这将是任何大型部署的典型要求。

最后,处理对称群集总是比较容易(维护简化),但是在处理“滚动升级”时,不对称群集可能是“垫脚石”。

澄清:我从来没有躲过抽象所有东西澄清#2:通过“架构”我假设“CPU架构”,即不是“整个系统的架构”。


至于你的问题的第二部分:这一切都取决于你的软件的体系结构。

+0

我不同意。在HPC集群中,您不会突然期望您的规格改变架构。当然,也许是CPU类型或频率,内存数量,......但你不能也不应该抽象掉所有东西。否则,你如何在没有TCP/IP或电力的情况下工作? – 2009-11-30 20:17:00

+0

@Dirk:我想知道是什么让你觉得我对这个极端是不切实际的:你能不能指出我引起这种想法的陈述,以便我马上更新它? – jldupont 2009-11-30 20:22:16

相关问题