【发布时间】:2013-07-23 08:15:28
【问题描述】:
我正在尝试创建一个 Java GUI 来控制和运行 MPI 进程。我可以从命令行运行 MPI 进程,但无法通过 Java Process Builder 运行。
进程开始后我立即收到以下错误:
[SCI053_VM003:02928] ..\..\openmpi-1.6.4\opal\event\event.c: ompi_evesel->dispatch() failed.
我怀疑存在环境问题,但我不确定如何诊断。我已将 java 进程构建器看到的环境以及 mpiexec 进程看到的环境打印到日志中,但我没有发现任何问题!?!?
所有代码和输出日志都贴在gist
我正在尝试使用为MPI4PY 打包的 OpenMPI 1.6.4 在 Windows 环境中运行
似乎主要是一个 OpenMPI 问题,所以我发布到 UserList,但希望能在任何我能得到它的地方得到帮助...
大卫
PS - 我能够在我的 MacOS 环境中运行 Java 程序来启动和运行相同的代码,但是我使用 brew 安装的 MPICH2。
【问题讨论】:
-
我今天将测试使用 python 子进程调用 mpiexec。如果这被证明是一个可行的中介 Java ProcessBuilder => Python Subprocess => OpenMPI MPIExec => 运行我的并行应用程序......我会使用它,但它并不能真正回答我的问题(或赏金)
-
更新:我写了一个简短的 python 程序来调用 mpiexec 或你传递的任何命令。它在命令行中效果很好:
-
更新:我写了一个简短的 python 程序来调用 mpiexec 或你传递的任何命令。 gist.github.com/dstuebe/6170563 它非常适合作为从命令行运行任何程序的间接方式,但是当我在 Java 中的 ProcessBuilder 中使用它时,它会以同样的方式失败!
标签: java python windows processbuilder openmpi