DragonFly commits List (threaded) for 2012-09
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]
git: kernel - Improve regressions in usched_dfly (2)
commit 76568a7ceba9ae2af1d1a9b0f75699b1e1ef5e4b
Author: Matthew Dillon <dillon@apollo.backplane.com>
Date: Thu Sep 20 11:35:21 2012 -0700
kernel - Improve regressions in usched_dfly (2)
* Allow various fork() behaviors to be supported via
kern.usched_dfly.features.
* Set the default to place the newly forked process on
a random cpu instead of the current cpu.
The bsd4 scheduler had a global queue and could just signal
a random helper to pick up the thread. The dfly scheduler
has per-cpu queues and must actually enqueue the thread to
another cpu.
The bsd4 scheduler is still slightly superior here because
if the parent running on the current cpu immediately waits
for the child, the child is able to run on the current cpu.
However, randomization works quite well and this removes
nearly all of the make -j N regression.
Summary of changes:
sys/kern/usched_dfly.c | 31 +++++++++++++++++++++++++------
1 files changed, 25 insertions(+), 6 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/76568a7ceba9ae2af1d1a9b0f75699b1e1ef5e4b
--
DragonFly BSD source repository
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]