Everything is the title.
My team and I are currently working on a project and we are using MPI. In one place, we are doing a MPI_send resquesting for a resource with a timeout. If the resource is available, we return 1 and if not and the timeout ended, we return 0.
We tried using the signals like SIGALRM, but it doesn’t work because every new request cancel the old ones by setting a new alarm.
Thanks for your answer !!
You should investigate the non-blocking point-to-point communication primitives such as
MPI_Isend,MPI_IrecvandMPI_Iprobe. You can then implement the timeout yourself, and useMPI_Cancelif you wish.