我们有一台带有32个计算节点的IBM HPC 4.2。 我们用lsf支持编译并安装了Openmpi 1.10.1。
问题: 当我们在lsf下使用它们时,我们在IBM MPI(MPI芯片与平台或PMPI)和Openmpi之间有不同的行为。
示例: 我用两种实现编译了hello_world.c mpi示例,当我在没有lsb(没有bsub)的情况下启动执行时,我得到了
PMPI :mpirun -np 4 -hostlist "compute000 compute001" ./hello_world_pmpi.exe
你好世界!我是compute000上的4个中的第1个
你好世界!我是compute001
中的4个中的2个你好世界!我是compute001
中的第3个,共4个你好世界!我在compute000
上有4个0 Openmpi :mpirun -np 4 --host "compute000,compute001" --mca btl self,sm --mca mtl psm ./hello_world_ompi.exe
你好世界!我是compute000上的4个中的第1个
你好世界!我在compute000
中的4个中有2个你好世界!我是compute001
中的第3个,共4个你好世界!我是compute001
中的4个哪个是逻辑,但是当我使用lsf时,PMPI会发生变化,这更奇怪!我得到了
PMPI :bsub -n 4 -R "span[ptile=2]" -o pmpi-%J.out mpirun ./hello_world_pmpi.exe
cat pmpi-xxx.out ...
Hello world!我在compute017
上有0的1 Opemmpi :bsub -n 4 -R "span[ptile=2]" -o ompi-%J.out mpirun --mca btl self,sm --mca mtl psm ./hello_world_ompi.exe
cat pmpi-xxx.out ...
**你好世界!我是compute005上的4个中的1个
你好世界!我是compute010上的4个中的2个
你好世界!我在compute010
中的3个中有3个你好世界!我是compute005 **的第4个中的0
似乎只有一个PMPI实例启动而不是4个。
我对IMB(intel基准测试)和HPCC有同样的问题,他们抱怨缺少进程,没有lsf他们都工作正常,使用lsf,只有openmpi正常工作。
任何想法?
提前致谢