Nick Piggin wrote:
Shared runqueues sound like a simplification to describe execution unitsYou are correct, however it would be a miniscule cost advantage,
which have shared resourses and null cost of changing units. You can do
that by having a domain which behaved like that, but a shared runqueue
sounds better because it would eliminate the cost of even considering
moving a process from one sibling to another.
possibly outweighed by the shared lock, and overhead of more
changing of CPUs (I'm sure there would be some cost).
Regarding the overhead of the shared runqueue lock:
Is the "lock" prefix actually required for locking between x86
siblings which share the same L1 cache?