Quantcast
Channel: Clusters and HPC Technology
Viewing all articles
Browse latest Browse all 927

Lost message with MPI_Improbe

$
0
0

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

 

 

 

 

AttachmentSize
Downloadtext/x-c++srcprobe_bug.cpp1.15 KB

Viewing all articles
Browse latest Browse all 927

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>