我正在build立一个超级计算的Linux集群。 我们使用OpenMPI和GoToBlas2运行最新的HPCC基准testing,但结果非常糟糕。 当我使用一个进程对集群中的每个核心运行基准testing时,结果比在单个进程中运行基准testing结果差得多(超过100倍)。 这显然不是我们所期望的那种performance。 我唯一的想法就是MPI在这些进程之间传输消息的时间太长了。 有没有人有任何想法,我怎么可以优化服务器设置,使性能不吸收这么多?
我们正在使用OpenMPI v1.4.3的Rocks集群发行版。 我们的计算节点是戴尔机架式服务器,每台服务器带有两个四核英特尔至强处理器。 它们通过千兆以太网电缆连接。
当看到一个科学集群和performance这里是我看到的一些主要的瓶颈:
network-scripts主线设备的设置是什么? 你的MTU是否设定为9000? Iperf通常可以在RHEL系统上find
/apps/rhel5/iperf/bin/iperf
要运行iperf,请首先在节点上设置服务器。
/apps/rhel5/iperf/bin/iperf -s
然后从节点你想testing的链接做
/apps/rhel5/iperf/bin/iperf -c <host or IP of server>
如果成功,您将在客户端看到类似这样的输出:
------------------------------------------------------------ Client connecting to <host or IP of server>, TCP port 4200 TCP window size: 256 KByte (default) ------------------------------------------------------------ [ 3] local 123.11.123.12 port 4400 connected with 123.456.789.12 port 4200 [ ID] Interval Transfer Bandwidth [ 3] 0.0-10.0 sec 1.1 GBytes 1.01 Gbits/sec
如果没有安装它,可以很容易地从存储库的许多平台上检索,如果没有,可以从源代码下载和编译。 在每个节点上运行它,看看实际以太网线是否有问题。 之后,在所有节点上运行它,看它是否陷入了交换机。