Branch: refs/heads/fix_async_mpi
  Home:   https://github.com/STEllAR-GROUP/hpx
  Commit: c06142478a1aa52029e8d01f6c8cb347aca0c500
      
https://github.com/STEllAR-GROUP/hpx/commit/c06142478a1aa52029e8d01f6c8cb347aca0c500
  Author: John Biddiscombe <[email protected]>
  Date:   2021-05-27 (Thu, 27 May 2021)

  Changed paths:
    M libs/full/async_mpi/include/hpx/async_mpi/mpi_executor.hpp
    M libs/full/async_mpi/include/hpx/async_mpi/mpi_future.hpp
    M libs/full/async_mpi/src/mpi_future.cpp

  Log Message:
  -----------
  Fix a race condition in async mpi affecting limiting executor

The mpi_ring_async_executor_test occasionally failed because
the limiting executor was calling find_if on a vector that
was modified by the mpi polling thread.

Instead of allowing external checks (limiting executor) to
access the vector, we use an atomic counter that only the mpi
polling thread increments/decrements and stores the number
of futures/requests in flight. The limiting executor can safely
read this value from any thread.


  Commit: 012cbf26b34656fa4f60aad71ac5e4403435569c
      
https://github.com/STEllAR-GROUP/hpx/commit/012cbf26b34656fa4f60aad71ac5e4403435569c
  Author: John Biddiscombe <[email protected]>
  Date:   2021-05-27 (Thu, 27 May 2021)

  Changed paths:
    M libs/core/debugging/src/print.cpp
    M libs/full/async_mpi/include/hpx/async_mpi/mpi_future.hpp
    M libs/full/async_mpi/tests/unit/mpi_ring_async_executor.cpp

  Log Message:
  -----------
  Fix review comments, unused functions, fix print link error


Compare: 
https://github.com/STEllAR-GROUP/hpx/compare/6caf106f7d73...012cbf26b346
_______________________________________________
hpx-commits mailing list
[email protected]
https://mail.cct.lsu.edu/mailman/listinfo/hpx-commits

Reply via email to