并行服务器和 MPI 故障排除

本节介绍了使用并行服务器和 MPI 发布版时的一些故障排除提示。

指定并行主机时生成无效项

  • 确保指定主机名的拼写和配置正确。

命令行选项失败

  • 确保 GUI 中显示的命令行与“命令行参考”中所述的选项保持一致。请参见命令行参考

Windows 集群不能正常工作

  • 在所有机器上使用相同的安装路径安装可用的最新 Simcenter STAR-CCM+ 版本,并确保正确选择和设置 MPI 组件。
  • 确保已按照在 Windows 上注册分布式模拟凭据中所述注册凭据。
  • 确认可以在每台机器上启动串行和本地并行服务器。
  • 启动多主机并行服务器,每次尝试一台主机。Windows 中不支持启动远程服务器,因此启动多主机并行服务器时,必须在本地主机上运行主进程。
  • 如果不起作用,则确保防火墙设置不影响集群通信。如果问题依然存在,可以使用 -v 选项从命令行启动服务器以获得调试输出,如下所示:

    "<STAR-CCM+_INSTALL_DIR>\starccm+" -server -on host1,host2 -v

    其中 host1host2 是要运行软件的两台机器,其中有一台是当前本地机器。

共享内存限制太低

Linux 工作站经常被配置为具有较低的可用共享内存量限制。此设置限制 MPI 使用的库能够锁住 (Pin) 多少内存。即使仅使用单个主机,这些库也可能输出警告消息,且它们通常表示限制设置得太低 - 即使库没有被使用。将工作站设为具有较高的限制(最好为无限制)。

对于 Open MPI,限制设得太低时存在回退机制。在这种情况下,Simcenter STAR-CCM+ 将生成警告消息。决定内存限制时,考虑该回退机制可能会降低通信性能。“Open MPI 常见问题”描述了更改该限制的方法。(请参见问题答案:系统管理员(或用户)如何更改锁定的内存限制?

用户进程限制太低

Linux 工作站上的“用户进程”限制会限制用户可以创建的进程数量。对于并行运行来说,如果此限制太低,则会导致意料之外的行为,例如无法通过 SSH 连接到正在运行模拟的计算主机。如果遇到此类行为,可提高工作站或集群节点上的用户进程限制。

进程数较多时 TCP 网络出现的问题

通常,TCP 网络并非设计用于大规模并行工作负载,因此通过 TCP 运行 Simcenter STAR-CCM+ 时,如果进程数较多则可能会出现明显的并行效率损失。为了避免此类网络上出现并行效率较差和其他相关缩放问题,Simcenter STAR-CCM+ 仅支持通过 TCP 运行最多 500 个内核。仍可尝试大规模运行,但如果遇到可用性或效率问题,请考虑使用高性能网络(如 InfiniBand、OmniPath 或 Elastic Fabric Adapter)取代 TCP 进行大规模模拟。

AWS EFA 系统中的性能不佳

使用 Elastic Fabric Adapter (EFA) 在 AWS 系统中运行时,默认 Open MPI 可能会导致性能不佳。考虑评估 Intel MPI (-mpi intel) 能否提高模拟和设置的性能。