37 std::optional<T>
const &result) {
38 assert(1 == boost::mpi::all_reduce(comm,
static_cast<int>(!!result),
40 "Incorrect number of return values");
41 if (comm.rank() == 0) {
46 comm.recv(boost::mpi::any_source, 42, value);
50 comm.send(0, 42, *result);