本节仍在开发中,随着我的集群的使用而不断演进,但到目前为止,我们倾向于编写自己的消息传递例程集,以便在不同机器上的进程之间进行通信。
许多应用程序,尤其是在计算基因组学领域,都是大规模且易于并行化的,这意味着可以通过在机器之间平均分配任务来实现完美的分发(例如,当使用对单个基因/蛋白质进行操作的技术分析整个基因组时,每个处理器可以一次处理一个基因/蛋白质,而与其他处理器无关)。
到目前为止,我们还没有发现需要使用专业的队列系统,但这显然高度依赖于您希望运行的应用程序类型。
对于我们运行的最重要的程序(我们的 从头算 蛋白质折叠模拟程序),以 Pentium 3 1 GHz 处理器机器作为参考,平均而言
Xeon 1.7 GHz processor is about 22% slower
Athlon 1.2 GHz processor is about 36% faster
Athlon 1.5 GHz processor is about 50% faster
Athlon 1.7 GHz processor is about 63% faster
Xeon 2.4 GHz processor is about 45% faster
Xeon 2.7 GHz processor is about 80% faster
Opteron 1.4 GHz processor is about 70% faster
Opteron 1.6 GHz processor is about 88% faster
是的,Athlon 1.5 GHz 比 Xeon 1.7 GHz 快,因为 Xeon 每个时钟周期 (IPC) 只执行六条指令,而 Athlon 执行九条 IPC(请自行计算!)。然而,这是一个非常不严谨的比较,因为可执行文件分别在机器上编译(因此,例如数学库的质量会产生影响),并且支持硬件也不同。
这些机器在硬件和软件方面都非常稳定,一旦调试完成(通常新批次的机器中有些会有硬件问题),就会在非常重的负载下持续运行。下面给出一个常见的例子。重启通常发生在断路器跳闸时。
2:29pm up 495 days, 1:04, 2 users, load average: 4.85, 7.15, 7.72