Accéder au contenu.
Menu Sympa

starpu-devel - Re: [Starpu-devel] [LU factorisation: gdb debug output]

Objet : Developers list for StarPU

Archives de la liste

Re: [Starpu-devel] [LU factorisation: gdb debug output]


Chronologique Discussions 
  • From: Maxim Abalenkov <maxim.abalenkov@gmail.com>
  • To: Samuel Thibault <samuel.thibault@inria.fr>
  • Cc: starpu-devel@lists.gforge.inria.fr
  • Subject: Re: [Starpu-devel] [LU factorisation: gdb debug output]
  • Date: Fri, 19 Jan 2018 11:42:57 +0000
  • Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=maxim.abalenkov@gmail.com; spf=Pass smtp.mailfrom=maxim.abalenkov@gmail.com; spf=None smtp.helo=postmaster@mail-wr0-f182.google.com
  • Ironport-phdr: 9a23:fzG4vRBJI23c4YLZ7TrvUyQJP3N1i/DPJgcQr6AfoPdwSPX7osbcNUDSrc9gkEXOFd2Cra4c0qyO6+jJYi8p2d65qncMcZhBBVcuqP49uEgeOvODElDxN/XwbiY3T4xoXV5h+GynYwAOQJ6tL1LdrWev4jEMBx7xKRR6JvjvGo7Vks+7y/2+94fcbglUmTaxe69+IAmrpgjNq8cahpdvJLwswRXTuHtIfOpWxWJsJV2Nmhv3+9m98p1+/SlOovwt78FPX7n0cKQ+VrxYES8pM3sp683xtBnMVhWA630BWWgLiBVIAgzF7BbnXpfttybxq+Rw1DWGMcDwULs5Qiqp4bt1RxD0iScHLz85/3/Risxsl6JQvRatqwViz4LIfI2ZMfxzdb7fc9wHX2pMRsZfWS9dDYyzcoUBAegOM/hWr4f6vFYBtweyBQy2CePv1jNFhHn71rA63eQ7FgHG2RQtEdUUv3XbrdX1MboZXPyuw6bSyTXMcfVW2TT66IjWbxsspvSMUqh/cMrQzEkjDRnKgU6KpozhITyV0OcNs2+F7+d7WuKvjnQoqwB1ojS12sgsjYzJi5sTx1vZ+yt5x4M1Kse5SE59edOkEZ1QtzubN4RsWM8iTXtotD41yr0HpZ67eDIFx489yx7ebPyKdZWD7BH7VOuJPzt0mHZodKi8ihuy60Ss1/PwW8qu3FpXrSdJjMHAum0D2hDP8MSKSfhw8l2/1TuAywzf8OBJLEEymKHGMZAu2KQwmYAWsUnbHi/5hkH2jKiOe0Uh4Oeo6uDnbqzop5+GK4N4kw/+Prktl8ChG+g4PQ8OX2+U+eS4yrLv51H2QLJPjvEuk6nZto7VJdgDq6KnHwNY1pwv5hW/Aju8zdgUg3oKIEhYdB+EkYTlI1TOL+r5Dfe7jVSsijBrx/XeM73kGJrMIXnDkLL7cbln8EFT0g4zws5Z55JXDbEBPun+WkD0tNPCDx85Nxa4zPrgCNV4zo8eQ36AAreFMKPOtl+F/vkvI/WWa48PoDb9NuEp6OPwgn8nh1AdebKk3Z8WaHCjAvRmOF+VYXXigtcGC2cKsRQxQPbriF2ESz5TZmy9U7gy5jEhW8qaCtL4T4WwjbjJ4Ce6FJRLYnwOXkuFFGrlc8OYW/YGYT+WPudglCYFXP6vUdly+wupsVrfwqpmK6L98CQcuJTg08Y9s+jahRA3szV+BsCQ1WKKUUl7m2oJQ3k926Up8h818UuKzaUt268QLtdU/f4cF15ibceNndw/MMj7X0f6RvnMTV+nRtu8BjRoF4A+xtYPZwB2HNDw10mfjRrvOKcckvmwPLJx6rjVhiGjKMN0ynKA364k3QF/H5l/cFa+j6s6zDD9Qo7El0LDyfSvfKUYmTHXrCKNlDrU+k5fVwF0XOPOWnVNPkY=
  • 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>

Dear Samuel,

I hope all is well with you. May I please ask you about the status of the Parallel Tasks in the current version of StarPU:

  http://starpu.gforge.inria.fr/doc/html/TasksInStarPU.html#ParallelTasks
  http://starpu.gforge.inria.fr/doc/html/TasksInStarPU.html#SPMD-modeParallelTasks

I have been thinking to use them in order to “imitate” subtasks and parallelise LU panel factorisation. Your opinion would be greatly appreciated. Thank you.

Best wishes,
Maxim

Maxim Abalenkov \\ maxim.abalenkov@gmail.com
+44 7 486 486 505 \\ http://mabalenk.gitlab.io

On 15 Jan 2018, at 18:04, Maxim Abalenkov <maxim.abalenkov@gmail.com> wrote:

Dear Samuel,

I have a very simple question. What is the overhead of using the STARPU_NONE access mode for some handles in the STARPU_DATA_MODE_ARRAY? In order to avoid using complicated offsets in my computation routines I would like to pass them a column of matrix tiles, while setting the “unused” tiles to “STARPU_NONE”. Would that create a correct DAG? Thank you and have a good evening!

Best wishes,
Maxim

Maxim Abalenkov \\ maxim.abalenkov@gmail.com
+44 7 486 486 505 \\ http://mabalenk.gitlab.io

On 10 Jan 2018, at 11:37, Maxim Abalenkov <maxim.abalenkov@gmail.com> wrote:

Dear Samuel et al.,

Thank you for your email. The problem I have at hand is a panel-wise LU factorisation. Where a panel is a column of matrix tiles and a tile denotes a block of a matrix. As a first implementation of LU factorisation I have built my algorithm around panels, where each panel gets processed by one StarPU task. Panel is a purely abstract notion. I call it a “container panel”, since it contains matrix tiles and makes working out data dependencies easier. To create these container panels I use StarPU’s concept of DATA_MODE_ARRAYs. Hence, the basic building block to resolve data dependencies "in the eyes" of StarPU is a panel. The algorithm works, but the performance is low.

Now, I would like to exploit the parallelism remaining in each container panel. I would like to operate by means of “subtasks”, where each subtask will work on a tile(s) of a panel. Would it be possible with “bubbles” that you mentioned earlier? Thank you and have a good day ahead!

Best wishes,
Maxim

Maxim Abalenkov \\ maxim.abalenkov@gmail.com
+44 7 486 486 505 \\ http://mabalenk.gitlab.io

On 8 Jan 2018, at 16:12, Samuel Thibault <samuel.thibault@inria.fr> wrote:

Hello,

Maxim Abalenkov, on mer. 03 janv. 2018 20:03:10 +0100, wrote:
a) What is the purpose of enforcing task execution on the home node? Is it
always necessary, when I use the STARPU_DATA_MODE_ARRAY in
“starpu_task_insert"? Please consider the code snippet I took from the
“fmultiple_manual.c”:

   // Enforce task execution on home node (STARPU_MAIN_RAM)
   core_starpu_codelet_zgetrf_pnl.specific_nodes = 1;

   for (int i = 0; i < STARPU_NMAXBUFS; i++) {
       core_starpu_codelet_zgetrf_pnl.nodes[i] = STARPU_MAIN_RAM;
   }

See the comment in the corresponding codelet function:

       /* This doesn't need to do anything, it's simply used to make coherency
        * between the two views, by simply running on the home node of the
        * data, thus getting back all data pieces there.  */

It's just a matter of collecting all pieces together on the same memory
node.

b) Can you please direct me to an example(s) of using StarPU subtasks (tasks
submitted by other tasks)?

I have to say I don't remember such kind of example. The problem is
that doing this kind of thing raises a lot of issues. Notably, if you
keep the default sequential consistency on data, the subtasks will
automatically be made to depend on the last submitted tasks which work
on the same data. I guess that's not what you want. Perhaps Terry and
Nathalie will have better answers with the addition of the notion of
bubble. At any rate, we need to know much better what exact semantic you
want from your subtasks, to determine what could suit your needs.

Samuel






Archives gérées par MHonArc 2.6.19+.

Haut de le page