Two questions:
I have a group of manager processes, each of which uses MPI_Comm_spawn() to create individual worker processes one at a time.
Occasionally, a worker has to exit and is replaced by another worker via MPI_Comm_spawn(). If the exiting worker calls MPI_Finalize(),
will it sit there waiting for all other managers and workers in MPI_COMM_WORLD to do the same, or will it wait only for the manager
that created its inter-communicator to call MPI_Finalize?
In either case, maybe it is better for the worker to NOT call MPI_Finalize at all so that it doesn’t sit there taking up a core’s resources
while it waits for the others. What are the implications of not calling MPI_Finalize in the workers?
Thanks,
Kurt