0

我编写并编译了一些二进制文件并通过 SSH 将它们上传到在远程超级计算机上运行的 linux 服务器,如果二进制文件是用英特尔的 MPI 库编译的,但是如果远程 linux 服务器没有安装相应的 MPI 库在那里,如果我将所需的英特尔 MPI 动态链接库文件上传到 linux 服务器,二进制文件会正确执行吗?

4

3 回答 3

2

我建议你在目标超级计算机上编译二进制文件(在你 SSH 之后)。这样你就可以保证至少所有的库在编译时都存在,如果你需要修改 LD_LIBRARY_PATH 来选择正确的库。

于 2013-01-31T02:57:21.493 回答
0

是的,它会起作用,请查看 Intel 的Redistributing Libraries When Deploying Applications文档。还要确保使用编译器的交叉编译选项来匹配超级计算机的 CPU 架构。

于 2013-09-30T19:23:21.173 回答
0

有时。

几点

  1. 许多程序(例如 MATLAB)将允许用户指定自己的 MPI 库。闭源程序应该能够指定自己的 MPI。
  2. MPI针对集群进行了高度优化,它往往是集群的一个卖点。
  3. 许多集群以 2 种模式运行,优化模式和集群兼容模式。前者只运行供应商 MPI,后者支持 OpenMPI 和其他 MPI。对于博学,在前者中,许多常见的system()调用可能会失败。
于 2013-01-31T03:07:51.987 回答