sched: optimize RT affinity
authorGregory Haskins <ghaskins@novell.com>
Fri, 25 Jan 2008 20:08:11 +0000 (21:08 +0100)
committerIngo Molnar <mingo@elte.hu>
Fri, 25 Jan 2008 20:08:11 +0000 (21:08 +0100)
commit6e1254d2c41215da27025add8900ed187bca121d
treef68081e3b87d44c20a1b2739cf0119d8624208b0
parent318e0893ce3f524ca045f9fd9dfd567c0a6f9446
sched: optimize RT affinity

The current code base assumes a relatively flat CPU/core topology and will
route RT tasks to any CPU fairly equally.  In the real world, there are
various toplogies and affinities that govern where a task is best suited to
run with the smallest amount of overhead.  NUMA and multi-core CPUs are
prime examples of topologies that can impact cache performance.

Fortunately, linux is already structured to represent these topologies via
the sched_domains interface.  So we change our RT router to consult a
combination of topology and affinity policy to best place tasks during
migration.

Signed-off-by: Gregory Haskins <ghaskins@novell.com>
Signed-off-by: Steven Rostedt <srostedt@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
kernel/sched_rt.c