Re: [OMPI users] MPI_Isend with no recieve

2014-07-16 Thread Matthieu Brucher
The problem is that for the moment, the implementation uses Isend/Irecv, but you don't know what will happen in the future (hopefully, it will use something else). If your program bypasses the required call to MPI_Iscatterv, then you only have one option: implement MPI_Iscatterv yourself, with only

Re: [OMPI users] MPI_Isend with no recieve

2014-07-16 Thread Ziv Aginsky
Thanks a lot. You are right I am using MPI_Iscatterv, in a domain decomposition code, but the problem is that for the domain which I have no data to send fro, the program will jump the routine. I can not redesign the whole program. Do you know what will happen to send call with zero size buffer? Ca

Re: [OMPI users] MPI_Isend with no recieve

2014-07-16 Thread Matthieu Brucher
If you are using Iscatterv (I guess it is that one), it handles the pairs itself. You shouldn't bypass it because you think it is better. You don't know how it is implemented, so just call Iscatterv for all ranks. 2014-07-16 14:33 GMT+01:00 Ziv Aginsky : > I know the standard, but what if I can no

Re: [OMPI users] MPI_Isend with no recieve

2014-07-16 Thread Ziv Aginsky
I know the standard, but what if I can not bypass the send message. For example if I have MPI_Iscatter and for some ranks the send buffer has zero size. At those ranks it will jump the MPI_Iscatter routine, which means I have some zero size send and no receive. On Wed, Jul 16, 2014 at 3:28 PM,

Re: [OMPI users] MPI_Isend with no recieve

2014-07-16 Thread Matthieu Brucher
Hi, The easiest would also to bypass the Isend as well! The standard is clear, you need a pair of Isend/Irecv. Cheers, 2014-07-16 14:27 GMT+01:00 Ziv Aginsky : > I have a loop in which I will do some MPI_Isend. According to the MPI > standard, for every send you need a recv > > If one or sev

[OMPI users] MPI_Isend with no recieve

2014-07-16 Thread Ziv Aginsky
I have a loop in which I will do some MPI_Isend. According to the MPI standard, for every send you need a recv If one or several of my MPI_Isend have zero size buffer, should I still have the mpi_recv or I can do it without recv? I mean on the processor which I should recv the data I know prio