Intel® MPI Library
Get help with building, analyzing, optimizing, and scaling high-performance computing (HPC) applications.

Lost message with MPI_Improbe

dsi-intel_d_
Beginner
412 Views

Hi,

The attached code (compiled with mpic++) will work as expected up to 15 MPI process, but will loop with 16 or more.

Apparently MPI_Improbe fails to find the message:

 

[alainm@pollux test]$ mpirun --version
Intel(R) MPI Library for Linux* OS, Version 2018 Update 3 Build 20180411 (id: 18329)
Copyright 2003-2018 Intel Corporation.
[alainm@pollux test]$

[alainm@pollux test]$ mpirun -n 15 ./truc
Proc 0 sent msg 2 to Proc 1
Proc 0 got msg 2 from proc 14
Proc 1 sent msg 2 to Proc 2
[...]
Proc 14 sent msg 2 to Proc 0
Proc 14 got msg 2 from proc 13
[alainm@pollux test]$

[alainm@pollux test]$ mpirun -n 16 ./truc | grep "Proc 10"  # same output with other procs
Proc 9 sent msg 2 to Proc 10
Proc 10 sent msg 2 to Proc 11
Proc 10 haven't got msg 2 from proc 9 yet
Proc 10 haven't got msg 2 from proc 9 yet
Proc 10 haven't got msg 2 from proc 9 yet
[...]
Proc 10 haven't got msg 2 from proc 9 yet

[...]

The code work just fine with Open MPI.

Fun fact, running the code whit -check_mpi trigger the bug even with 2 proc.

Am I doing something wrong ?

Thanks,

Alain

 

 

 

 

0 Kudos
0 Replies
Reply