Newsgroups: comp.parallel.mpi
From: rdaoud@magnus.acs.ohio-state.edu (Raja B Daoud)
Subject: Re: non-blocking error code
Organization: Ohio Supercomputer Center
Date: 21 Jun 1995 03:27:27 GMT
Message-ID: <3s83iv$hv0@charm.magnus.acs.ohio-state.edu>

R Clint Whaley <rwhaley@cupid.cs.utk.edu> wrote:
>   info = MPI_Isend(buff, length, dest, TAG, comm, &NBID);
>   while(info != MPI_SUCCESS)
>   {
>      MPI_Error_class(info, &errclass);
>      if (errclass != OutOfResources) ERROR_EXIT;
>      info = MPI_Isend(buff, length, dest, TAG, comm, &NBID); 
>   }

How about if MPI_Isend() returns any error, you then call MPI_Send()
and block?  If MPI_Send() returns an error then exit.  This way you
avoid the busy loop.  There is no error class defined specifically
for this case, MPI_ERR_INTERN could be many things other than
"no resources (envelopes) left".

--Raja

-=-
Raja Daoud				raja@tbag.osc.edu
Ohio Supercomputer Center		http://www.osc.edu/lam.html

