Accéder au contenu.
Menu Sympa

starpu-devel - Re: [Starpu-devel] Using STARPU_COMMUTE with starpu_mpi_task_build()

Objet : Developers list for StarPU

Archives de la liste

Re: [Starpu-devel] Using STARPU_COMMUTE with starpu_mpi_task_build()


Chronologique Discussions 
  • From: Samuel Thibault <samuel.thibault@ens-lyon.org>
  • To: Xavier Lacoste <xl64100@gmail.com>
  • Cc: starpu-devel@lists.gforge.inria.fr
  • Subject: Re: [Starpu-devel] Using STARPU_COMMUTE with starpu_mpi_task_build()
  • Date: Fri, 28 Feb 2014 11:58:14 -0500
  • 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>

Xavier Lacoste, le Wed 26 Feb 2014 16:56:05 +0100, a écrit :
> Le 26 févr. 2014 à 16:30, Samuel Thibault <samuel.thibault@ens-lyon.org> a
> écrit :
> > Xavier Lacoste, le Wed 26 Feb 2014 15:43:26 +0100, a écrit :
> >> I tried to use STARPU_COMMUTE with MPI but the option gives an error
> >> when building MPI task.
> >> Indeed it does not appear in the test "if (arg_type==STARPU_R ||
> >> arg_type==STARPU_W || arg_type==STARPU_RW || arg_type==STARPU_SCRATCH ||
> >> arg_type==STARPU_REDUX" in starpu_mpi_task_insert.c
> >> Is this the only thing missing or is it more complicated ?
> >
> > On the top of my head I think it's a matter of testing against
> > arg_type & ~STARPU_COMMUTE to get it working at least. Getting it
> > optimized is probably another question, could you show us your use case?
>
> I have several task preforming a GEMM updating a data that can be executed
> in parallel.
> In shared memory mode I just used
> starpu_data_set_sequential_consistency_flag() and listed all my
> dependencies, but as it was more complicated to get the list of tasks in
> distributed, I tried STARPU_COMMUTE.
>
> So, in my algorithm, I have several GEMM tasks unlocking a GETRF+TRSM
> unlocking an other list of GEMMs etc.

Ok, and are all the GEMMs happening on the same MPI node?

Thinking about it, I tend to think that we don't want to optimize the
case where it would not be on the same MPI node, i.e. simply ignore the
STARPU_COMMUTE flag for all the MPI stuff (but of course keep it for the
actual task insertion, to get the commute effect inside MPI nodes.

> Is that what you wanted to know ?

Yes :)

Samuel





Archives gérées par MHonArc 2.6.19+.

Haut de le page