在 运行 不同操作系统的服务器上设置高性能计算集群

Setting up a high performance computing cluster on servers that run different OSs

在我的实验室中,我们有几台用于模拟程序的服务器,但它们是独立工作的。现在我想将它们组合成一个集群,使用 MPICH 让它们进行通信。但是存在一个问题,就是这些服务器有不同的操作系统。有的是Redhat,有的是Ubuntu。而且在MPICH的主页上看到这两个不同操作系统的下载地址不一样,请问是否可以搭建不同操作系统的集群呢?以及如何去做?

我不想重新安装这些服务器的原因是这些服务器上的数据太多,当我问这个问题时它们正在使用中。

要让它正常工作是不可行的。您应该能够在不同的发行版上手动安装相同版本的 MPI 实现。他们甚至可以适当地互相交谈。但是一旦你尝试 运行 实际的应用程序,使用动态库,你就会遇到不同版本的共享库、glibc 等的麻烦。你会很想 link 静态地或构建不同的二进制文件不同的分布。归根结底,您将 运行 追逐一个又一个问题。

作为侧节点,将一些服务器与 MPI 组合在一起并不能构成高性能计算集群。例如,HPC 系统具有复杂的高性能互连和高性能并行文件系统。

另请注意,您的典型 HPC 应用程序将 运行 在异构硬件上表现不佳(因为每个节点都有不同的 CPU / 内存配置)。