Siddha, Suresh B
1e9f28fa1e
[PATCH] sched: new sched domain for representing multi-core
...
Add a new sched domain for representing multi-core with shared caches
between cores. Consider a dual package system, each package containing two
cores and with last level cache shared between cores with in a package. If
there are two runnable processes, with this appended patch those two
processes will be scheduled on different packages.
On such systems, with this patch we have observed 8% perf improvement with
specJBB(2 warehouse) benchmark and 35% improvement with CFP2000 rate(with 2
users).
This new domain will come into play only on multi-core systems with shared
caches. On other systems, this sched domain will be removed by domain
degeneration code. This new domain can be also used for implementing power
savings policy (see OLS 2005 CMP kernel scheduler paper for more details..
I will post another patch for power savings policy soon)
Most of the arch/* file changes are for cpu_coregroup_map() implementation.
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
Cc: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-03-27 08:44:43 -08:00
..
irq
[PATCH] warn if free_irq() is called from IRQ context
2006-03-26 08:56:53 -08:00
power
[PATCH] swswsup: return correct load_image error
2006-03-26 08:56:55 -08:00
.gitignore
acct.c
[PATCH] move capable() to capability.h
2006-01-11 18:42:13 -08:00
audit.c
[PATCH] fix audit_init failure path
2006-03-20 14:08:55 -05:00
audit.h
[PATCH] sem2mutex: audit_netlink_sem
2006-03-20 14:08:55 -05:00
auditfilter.c
[PATCH] sem2mutex: audit_netlink_sem
2006-03-20 14:08:55 -05:00
auditsc.c
Merge branch 'audit.b3' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current
2006-03-25 09:24:53 -08:00
capability.c
[PATCH] refactor capable() to one implementation, add __capable() helper
2006-03-25 08:22:56 -08:00
compat.c
[PATCH] consolidate sys32/compat_adjtimex
2006-03-26 08:56:57 -08:00
configs.c
cpu.c
BUG_ON() Conversion in kernel/cpu.c
2006-03-24 18:45:21 +01:00
cpuset.c
[PATCH] cpuset: remove useless local variable initialization
2006-03-24 07:33:24 -08:00
dma.c
exec_domain.c
[PATCH] Fix module refcount leak in __set_personality()
2006-03-24 07:33:30 -08:00
exit.c
[PATCH] sem2mutex: tty
2006-03-23 07:38:11 -08:00
extable.c
fork.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial
2006-03-26 09:41:18 -08:00
futex.c
hrtimer.c
[PATCH] hrtimers: remove data field
2006-03-26 08:57:03 -08:00
intermodule.c
[PATCH] missing license tag in intermodule
2006-02-05 11:06:52 -08:00
itimer.c
[PATCH] hrtimers: remove data field
2006-03-26 08:57:03 -08:00
kallsyms.c
Kconfig.hz
Kconfig.preempt
kexec.c
[PATCH] move capable() to capability.h
2006-01-11 18:42:13 -08:00
kfifo.c
kmod.c
kprobes.c
[PATCH] kretprobe instance recycled by parent process
2006-03-26 08:57:04 -08:00
ksysfs.c
[PATCH] fix build error if CONFIG_SYSFS=n
2006-03-24 07:33:31 -08:00
kthread.c
[PATCH] find_task_by_pid() needs tasklist_lock
2006-03-25 08:22:57 -08:00
Makefile
Merge branch 'audit.b3' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current
2006-03-25 09:24:53 -08:00
module.c
[PATCH] Remove MODULE_PARM
2006-03-25 08:22:52 -08:00
mutex-debug.c
[PATCH] fix/simplify mutex debugging code
2006-01-11 08:14:16 -08:00
mutex-debug.h
mutex.c
[PATCH] mutex: trivial whitespace cleanups
2006-01-10 14:27:59 -08:00
mutex.h
panic.c
[PATCH] pause_on_oops command line option
2006-03-23 07:38:16 -08:00
params.c
[PATCH] kernel/params.c: make param_array() static
2006-03-25 08:22:52 -08:00
pid.c
posix-cpu-timers.c
posix-timers.c
[PATCH] hrtimers: remove data field
2006-03-26 08:57:03 -08:00
printk.c
[PATCH] console_setup() depends (wrongly?) on CONFIG_PRINTK
2006-03-24 07:33:27 -08:00
profile.c
[PATCH] sem2mutex: kernel/
2006-03-23 07:38:10 -08:00
ptrace.c
[PATCH] fix zap_thread's ptrace related problems
2006-02-15 11:05:43 -08:00
rcupdate.c
[PATCH] rcu_process_callbacks: don't cli() while testing ->nxtlist
2006-03-24 07:33:20 -08:00
rcutorture.c
[PATCH] Remove MODULE_PARM
2006-03-25 08:22:52 -08:00
relay.c
[PATCH] relay: consolidate sendfile() and read() code
2006-03-23 19:58:45 +01:00
resource.c
sched.c
[PATCH] sched: new sched domain for representing multi-core
2006-03-27 08:44:43 -08:00
seccomp.c
signal.c
[PATCH] sigprocmask: kill unneeded temp var
2006-03-23 07:38:15 -08:00
softirq.c
[PATCH] on_each_cpu(): disable local interrupts
2006-03-22 07:53:59 -08:00
softlockup.c
[PATCH] timer irq driven soft watchdog fix
2006-03-25 08:22:48 -08:00
spinlock.c
[PATCH] BUILD_LOCK_OPS: cleanup preempt_disable() usage
2006-03-23 07:38:16 -08:00
stop_machine.c
sys.c
[PATCH] Use unsigned int types for a faster bsearch
2006-03-25 08:23:01 -08:00
sys_ni.c
[PATCH] Fix compile for CONFIG_SYSVIPC=n or CONFIG_SYSCTL=n
2006-02-20 20:00:11 -08:00
sysctl.c
[PATCH] Range checking in do_proc_dointvec_(userhz_)jiffies_conv
2006-03-24 07:33:20 -08:00
time.c
[PATCH] hrtimers: remove nsec_t typedef
2006-03-26 08:57:03 -08:00
timer.c
[PATCH] remove pps support
2006-03-25 08:23:02 -08:00
uid16.c
[PATCH] move capable() to capability.h
2006-01-11 18:42:13 -08:00
user.c
[PATCH] free_uid() locking improvement
2006-03-24 07:33:20 -08:00
wait.c
workqueue.c
[SCSI] add execute_in_process_context() API
2006-02-27 23:34:40 -06:00