Parallel processing 外壳关闭时未终止mpi主进程

Parallel processing 外壳关闭时未终止mpi主进程,parallel-processing,mpi,openmpi,Parallel Processing,Mpi,Openmpi,我正在使用mpi以并行模式运行,我注意到发生了一些奇怪的事情 如果关闭启动进程的shell,则从进程将被终止,但主进程不会: (带开壳) (带封闭外壳) 我唯一注意到的是主进程的状态从Sl+变为Rl。R代表“running/runnable”,S代表“可中断睡眠(等待事件完成)”;l表示该进程是多线程的,并且它位于前台进程组中(参见示例) 如果我在串行模式下启动同一个脚本,当shell关闭时,进程将正常终止 这是一个已知的mpi错误吗?如果没有,原因可能是什么 (我使用的是OpenMPI版本1.

我正在使用mpi以并行模式运行,我注意到发生了一些奇怪的事情

如果关闭启动进程的shell,则从进程将被终止,但主进程不会:

(带开壳)

(带封闭外壳)

我唯一注意到的是主进程的状态从Sl+变为Rl。R代表“running/runnable”,S代表“可中断睡眠(等待事件完成)”;l表示该进程是多线程的,并且它位于前台进程组中(参见示例)

如果我在串行模式下启动同一个脚本,当shell关闭时,进程将正常终止

这是一个已知的mpi错误吗?如果没有,原因可能是什么

(我使用的是OpenMPI版本1.10.2)

更新

事实上,我已经意识到结果在某种程度上是不可复制的。到目前为止,我有3种不同的结果:

  • 当外壳关闭时,主从被杀死
  • 外壳关闭时,只杀死奴隶
  • 外壳关闭时不会终止任何进程

  • 您的MPI实现是什么?最好添加相应的标记。@Zulan已添加。它是开放的MPI 1.10.2,这似乎是一个实现问题,版本有点过时。尝试更新到最新版本。
    valesori@eris:~$ ps aux | grep lammps
    valesori  3985  0.2  0.0 208124  7508 pts/26   Sl+  13:59   0:00 mpirun -np 4 lammps -in in.create_bonds
    valesori  3987 96.9  0.2 406148 21956 pts/26   Rl   13:59   0:09 lammps -in in.create_bonds
    valesori  3988 94.2  0.2 406060 22192 pts/26   Rl   13:59   0:09 lammps -in in.create_bonds
    valesori  3989 98.5  0.2 406040 21888 pts/26   Rl   13:59   0:09 lammps -in in.create_bonds
    valesori  3991 94.2  0.2 406044 21944 pts/26   Rl   13:59   0:09 lammps -in in.create_bonds
    valesori  4102  0.0  0.0  14228   936 pts/27   S+   13:59   0:00 grep lammps
    
    valesori@eris:~$ ps aux | grep lammps
    valesori  3985 15.1  0.1 208124  8244 ?        Rl   13:59   0:04 mpirun -np 4 lammps -in in.create_bonds
    valesori  4285  0.0  0.0  14228   924 pts/27   S+   13:59   0:00 grep lammps