0

我们在 GCE 和 EC2 上运行 OpenFOAM,发现 EC2 的速度提高了 30%,总体成本更低(由于执行时间更快)。有关指标,请参见附图。

我们认为这是因为 mpirun。在 GCE 上运行 mpirun 时,我们收到以下警告:“高性能 Open MPI 点对点消息传递模块无法找到任何相关的网络接口。将使用另一种传输方式,尽管这可能会导致性能降低。”

但是,在 EC2 上运行时,我们不会收到此警告。

有人可以帮忙吗?

为了清楚起见,我们将 GCE 荷兰数据中心的实例与法兰克福的 EC2 C5 实例进行了比较,两者均基于 Intel Skylake。

在此处输入图像描述

4

1 回答 1

1

你的假设是正确的。OpenMPI 正在节点上的硬件中搜索 InfiniBand,如果找不到,则回退到标准接口。

我们可以通过在命令行中包含 -mca btl ^openib 来告诉 mpirun 甚至永远不要检查 InfiniBand 硬件(并防止搜索不成功)。

具体来说,最初提交的命令是

mpirun -np 3 -hostfile ../mpihosts helloworld

现在应该是

mpirun -np 3 -mca btl ^openib -hostfile ../mpihosts helloworld

您还可以通过设置消除警告

--mca btl_base_warn_component_unused 0

如果这对您有用,您可以将“btl_base_warn_component_used = 0”放在 $prefix/etc/openmpi-mca-params.conf 中(即,您的侧面配置)。

于 2019-07-01T15:47:34.867 回答