How can i make MPI process notify the others about an error for example, specially on an MPI program where all the MPI processees are independant from each others ( There no synchronisation between the different MPI processees ) ?
Thanks
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
I find your idea of an MPI program in which all the processes are independent very strange. I think that, by definition, all the processes in an MPI program are not independent, they are all, for example, in the same communicator after you have called MPI_INIT so they all ‘know’ of each others existence. You may have written your code so that the processes do not synchronise after that, but the means still exist for processes to communicate with each other.
One mechanism to look into (which does require synchronisation) is MPI_BCAST (broadcast). Another approach would be to use MPI_ISEND, the non-blocking send operation but, sooner or later, one process or another will have to receive and your sending process ought to test whether the send has succeeded or not.