Right now, doesn't Genode just put everything on CPU 0 unless told
otherwise? It seems best for an available CPU to run the next thread that
has that CPU in its affinity space. How can that policy (or something
similarly efficient) be implemented?

On Wed, Mar 14, 2018 at 4:12 AM, Emery Hemingway <eh...@posteo.net> wrote:

> CPU balancing is pretty easy to manage at a higher level. For example,
> the Nim runtime balances additional Genode threads automatically,
> because the common high-level case is to create a thread pool for each
> CPU and push jobs to it. In other cases I assume that a thread will
> be blocked or block an external component, and running components on
> multiple CPUs only comes with the performance cost of communicating
> across multiple CPUs.
>
> https://github.com/nim-lang/Nim/blob/55a5dcf8a47a47028707c46491072c
> 438eb2f6ce/lib/system/threads.nim#L570
>
> On Tue, 13 Mar 2018 05:19:46 -0600
> Nobody III <hungryninja...@gmail.com> wrote:
>
> > It seems like we ought to have a balancer component or at least basic
> > balancing built into init. A lack of balancing is a huge performance
> > issue on modern SMP CPUs. How could we go about this? Could a server
> > do the balancing through the CPU session interface?
>
> ------------------------------------------------------------
> ------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> genode-main mailing list
> genode-main@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
>
>
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main

Reply via email to