Objet : Developers list for StarPU
Archives de la liste
- From: Nathalie Furmento <nathalie.furmento@labri.fr>
- To: Samuel Thibault <samuel.thibault@inria.fr>, Philippe SWARTVAGHER <philippe.swartvagher@inria.fr>, starpu-devel@lists.gforge.inria.fr
- Subject: Re: [Starpu-devel] Why starpu_mpi_barrier waits for all taks ?
- Date: Wed, 15 Apr 2020 13:03:47 +0200
- Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=nathalie.furmento@labri.fr; spf=Pass smtp.mailfrom=nathalie.furmento@labri.fr; spf=None smtp.helo=postmaster@v-zimmta03.u-bordeaux.fr
- List-archive: <http://lists.gforge.inria.fr/pipermail/starpu-devel/>
- List-id: "Developers list. For discussion of new features, code changes, etc." <starpu-devel.lists.gforge.inria.fr>
Philippe,
We discussed this topic, and actually found out functions
starpu_mpi_wait_for_all() and starpu_mpi_barrier() are both not correct.
The new semantics is going to be as follows :
starpu_mpi_barrier() will implement a MPI barrier (and no longer wait
for local tasks)
starpu_mpi_wait_for_all() will wait for tasks and local communications
(and no longer have a barrier)
Soon to be available in GIT.
Cheers,
Nathalie
On 14/04/2020 19:00, Nathalie Furmento wrote:
> On 14/04/2020 18:23, Samuel Thibault wrote:
>> Philippe SWARTVAGHER, le mar. 14 avril 2020 18:02:00 +0200, a ecrit:
>>> Why starpu_mpi_barrier waits for all tasks ?
>> In the way we were using it (a synchronization in the task graph), it
>> has to be so, because MPI requests can make tasks ready, which can make
>> MPI requests ready, etc. So for starpu_mpi_wait_for_all, we need that
>> behavior.
>>
>>> Could we consider creating a function starpu_mpi_barrier_unsafe(), calling
>>> directly MPI_Barrier ?
>> Actually starpu_mpi_barrier itself could have that behavior, just like
>> starpu_mpi_send/recv() don't care much about the task graph of the STF
>> flow. But we need our current implementation for
>> starpu_mpi_wait_for_all.
>>
>> Put another way, I'd say:
>>
>> - rename _starpu_mpi_barrier to _starpu_mpi_wait_for_all
>> - call _starpu_mpi_wait_for_all from starpu_mpi_wait_for_all
>> - create a new _starpu_mpi_barrier which works like you said.
>
> And also make sure to replace where it's relevant, calls to
> starpu_mpi_barrier by calls to starpu_mpi_wait_for_all()
>
> Cheers,
>
> Nathalie
>
>
> _______________________________________________
> Starpu-devel mailing list
> Starpu-devel@lists.gforge.inria.fr
> https://lists.gforge.inria.fr/mailman/listinfo/starpu-devel
--
Dr Nathalie Furmento Ingénieure de recherche CNRS
http://www.labri.fr/~furmento/ LaBRI - Université Bordeaux
- [Starpu-devel] Why starpu_mpi_barrier waits for all taks ?, Philippe SWARTVAGHER, 14/04/2020
- Re: [Starpu-devel] Why starpu_mpi_barrier waits for all taks ?, Samuel Thibault, 14/04/2020
- Re: [Starpu-devel] Why starpu_mpi_barrier waits for all taks ?, Nathalie Furmento, 14/04/2020
- Re: [Starpu-devel] Why starpu_mpi_barrier waits for all taks ?, Nathalie Furmento, 15/04/2020
- Re: [Starpu-devel] Why starpu_mpi_barrier waits for all taks ?, Nathalie Furmento, 14/04/2020
- Re: [Starpu-devel] Why starpu_mpi_barrier waits for all taks ?, Samuel Thibault, 14/04/2020
Archives gérées par MHonArc 2.6.19+.