summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorPeter Zijlstra2009-01-14 12:39:19 +0100
committerIngo Molnar2009-01-15 12:00:09 +0100
commite52fb7c097238d34f4d8e2a596f8a3f85b0c0565 (patch)
treef846443fdf7888583b4b0ff0ddd0be1be4b37df6 /lib
parentsched: introduce avg_wakeup (diff)
downloadkernel-qcow2-linux-e52fb7c097238d34f4d8e2a596f8a3f85b0c0565.tar.gz
kernel-qcow2-linux-e52fb7c097238d34f4d8e2a596f8a3f85b0c0565.tar.xz
kernel-qcow2-linux-e52fb7c097238d34f4d8e2a596f8a3f85b0c0565.zip
sched: prefer wakers
Prefer tasks that wake other tasks to preempt quickly. This improves performance because more work is available sooner. The workload that prompted this patch was a kernel build over NFS4 (for some curious and not understood reason we had to revert commit: 18de9735300756e3ca9c361ef58409d8561dfe0d to make any progress at all) Without this patch a make -j8 bzImage (of x86-64 defconfig) would take 3m30-ish, with this patch we're down to 2m50-ish. psql-sysbench/mysql-sysbench show a slight improvement in peak performance as well, tbench and vmark seemed to not care. It is possible to improve upon the build time (to 2m20-ish) but that seriously destroys other benchmarks (just shows that there's more room for tinkering). Much thanks to Mike who put in a lot of effort to benchmark things and proved a worthy opponent with a competing patch. Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Signed-off-by: Mike Galbraith <efault@gmx.de> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'lib')
0 files changed, 0 insertions, 0 deletions