> Sequent had an interesting hint they cooked up with Oracle. (Or maybe it
> was the other way around.) As I recall they called it 'twotask.'
> Essentially Oracle clients processes spend a lot of time exchanging
> information with its server process. It usually makes sense to bind them
> to the same CPU in an SMP (and especially NUMA) machine. (Probably
> obvious to most of the folks on the group, but it is generally lots
> better to essentially communicate through the cache and local memory
> than across the NUMA bus.)
This is similar in theory to why we used to have the sync option on
wake_up for pipes... it does work.
We don't need a scheduler "hint" for this, though. A big loud command
"bind me to this processor!" would do fine, and in 2.5 we have that:
just have one of the tasks do:
sched_setaffinity(0, sizeof(unsigned long), 1);
sched_setaffinity(other_guys_pid, sizeof(unsigned long), 1);
and both will be affined to CPU 1.
Robert Love
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/