Accéder au contenu.
Menu Sympa

starpu-devel - Re: [Starpu-devel] Moving Workers from One Context To Another in Real Time

Objet : Developers list for StarPU

Archives de la liste

Re: [Starpu-devel] Moving Workers from One Context To Another in Real Time


Chronologique Discussions 
  • From: Andra Hugo <andra.hugo@inria.fr>
  • To: gabrielgazolla@gmail.com
  • Cc: starpu-devel@lists.gforge.inria.fr
  • Subject: Re: [Starpu-devel] Moving Workers from One Context To Another in Real Time
  • Date: Tue, 28 Mar 2017 09:39:18 +0200 (CEST)
  • 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>

Hi Gabriel,

You can call starpu_sched_ctx_add_workers and starpu_sched_ctx_remove_workers. If you call only starpu_sched_ctx_add_workers without removing the workers from the other context, the workers will be shared between the two contexts and do round robin when poping tasks.

Does this answer your question?

Best,
Andra

De: "Gabriel Gazolla" <gabrielgazolla@gmail.com>
À: starpu-devel@lists.gforge.inria.fr
Envoyé: Mardi 28 Mars 2017 02:12:03
Objet: [Starpu-devel] Moving Workers from One Context To Another in Real        Time

Hello StarPU Team,

I have an interesting question, I hope you can help me...

Imagine this situation:

I have two contexts: Context 1 (CPU1, CPU2, CPU3) and Context 2 (GPU1)
With starPU paused i submit 900 tasks to Context 1 and 100 tasks to Context 2.
After I submit all of them, I resume, so all the tasks can start to execute.
i put the function starpu_task_wait_for_all(); to wait for all the tasks to finish.

Now comes the tricky part:

I already know that Context 2 is going to finish light years faster than Context 1, I would like to move all workers from Context 2 to the Context 1, so the workers on Context 2 can help Context 1 finish faster. Is it possible to do it ? or do I need to wait for the barrier starpu_task_wait_for_all(); ?

===
I tried to do this with starpu_sched_ctx_set_inheritor, starpu_sched_ctx_finished_submit() and starpu_sched_ctx_delete().....but I think it doesnt work on the described situation, since I need to wait for the barrier starpu_task_wait_for_all() to one context inherit the workers of another context, am I right? or is there a way how to do it like on the described situation in real time?

Thanks for any help or commentaries!

Best,

Joao




_______________________________________________
Starpu-devel mailing list
Starpu-devel@lists.gforge.inria.fr
https://lists.gforge.inria.fr/mailman/listinfo/starpu-devel




Archives gérées par MHonArc 2.6.19+.

Haut de le page