Paul,

i made PR #4331 https://github.com/open-mpi/ompi/pull/4431 in order to implement this.

in order to enable passive wait, you simply need to

mpirun --mca mpi_poll_when_idle true ...


fwiw, when you use mpi_yield_when_idle, Open MPI does (highly oversimplified)

for (...) sched_yield();


as you already noted, top show 100% cpu usage (a closer look shows the usage is in the kernel and not user space).

that being said, since the process is only yielding, the other running processes will get most of their time slices,

and hence the system remains pretty responsive.


Can you please give this PR a try ?

the patch can be manually downloaded at https://github.com/open-mpi/ompi/pull/4431.patch


Cheers,


Gilles


On 10/12/2017 12:37 AM, Paul Kapinos wrote:
Dear Jeff,
Dear All,

we know about *mpi_yield_when_idle* parameter [1]. We read [2]. You're right,
if an MPI application is waiting a long time for messages,
perhaps its message passing algorithm should be re-designed
... but we cannot spur the ParaView/VTK developer to rewrite their software
famous for busy-wait on any user mouse move with N x 100% CPU load [3].

It turned out that
a) (at least some) spin time is on MPI_Barrier call (waitin' user interaction)
b) for Intel MPI and MPICH we found a way to disable this busy wait [4]

c) But, for both 'pvserver' and minimal example (attached), we were not able to
stop the busy waiting with Open MPI: setting *mpi_yield_when_idle* parameter to
'1' just seem to move the spin activity from userland to kernel, with staying at
100%, cf. attached screenshots and [5]. The behaviour is the same for 1.10.4 and
2.0.2.

Well, The Question: is there a way/a chance to effectively disable the busy wait
using Open MPI?

Best,

Paul Kapinos

[1] http://www.open-mpi.de/faq/?category=running#force-aggressive-degraded
[2] 
http://blogs.cisco.com/performance/polling-vs-blocking-message-passingprogress
[3]
https://www.paraview.org/Wiki/Setting_up_a_ParaView_Server#Server_processes_always_have_100.25_CPU_usage
[4]
https://public.kitware.com/pipermail/paraview-developers/2017-October/005587.html
[5]
https://serverfault.com/questions/180711/what-exactly-do-the-colors-in-htop-status-bars-mean





_______________________________________________
devel mailing list
devel@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/devel

_______________________________________________
devel mailing list
devel@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/devel

Reply via email to