]> git.baikalelectronics.ru Git - kernel.git/commit
[PATCH] Prefetch kernel stacks to speed up context switch
authorChen, Kenneth W <kenneth.w.chen@intel.com>
Fri, 9 Sep 2005 20:02:02 +0000 (13:02 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Fri, 9 Sep 2005 20:57:31 +0000 (13:57 -0700)
commitdeca0777e36489b3c89486a6ff519e677d6072a5
tree1ef99fd4d7246b2afa16dc7d1514b6ff25fa8284
parentf2f82a394a7d59505b41e895b9751b2b4705a6d9
[PATCH] Prefetch kernel stacks to speed up context switch

For architecture like ia64, the switch stack structure is fairly large
(currently 528 bytes).  For context switch intensive application, we found
that significant amount of cache misses occurs in switch_to() function.
The following patch adds a hook in the schedule() function to prefetch
switch stack structure as soon as 'next' task is determined.  This allows
maximum overlap in prefetch cache lines for that structure.

Signed-off-by: Ken Chen <kenneth.w.chen@intel.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: "Luck, Tony" <tony.luck@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
arch/ia64/kernel/entry.S
include/asm-ia64/system.h
include/linux/sched.h
kernel/sched.c