ULE/SCHED_SMP diff for 7.0
Jeff Roberson
jroberson at chesapeake.net
Wed Jul 18 22:43:42 UTC 2007
On Wed, 18 Jul 2007, Dmitry Morozovsky wrote:
> On Mon, 16 Jul 2007, Jeff Roberson wrote:
>
> JR> http://people.freebsd.org/~jeff/ule.diff
> JR>
> JR> This patch is scheduled for inclusion in 7.0. I would like anyone who cares
> JR> to run it to validate that it does not create any stability or performance
> JR> regression over the existing ULE. This patch replaces ULE with SCHED_SMP,
> JR> which will now no longer exist as a seperate fork of ULE.
> JR>
> JR> Briefly, this is still a very suitable scheduler for uniprocessor machines
> JR> while providing stronger affinity and other performance improvements for
> JR> multiprocessor machines.
> JR>
> JR> Even "works for me!" type responses are welcome so I know roughly how many
> JR> people have tested before I commit this close to release.
>
> Works for me with MSI S420 lapton (core2duo T2400) on fresh -CURRENT/i386
> CPU: Genuine Intel(R) CPU T2400 @ 1.83GHz (1833.41-MHz 686-class CPU)
>
> However, make -j3 buildworld buildkernel (trimmed GENERIC) time degraded by 7%:
>
> marck at mck-s420:/var/tmp> ministat before after
> x before
> + after
> +------------------------------------------------------------------------------+
> | x + |
> | x + |
> |x x x + + +|
> ||__MA____| |__A__| |
> +------------------------------------------------------------------------------+
> N Min Max Median Avg Stddev
> x 5 36.33 36.77 36.45 36.486 0.16637307
> + 5 38.87 39.23 39.03 39.042 0.12774976
> Difference at 95.0% confidence
> 2.556 +/- 0.216322
> 7.00543% +/- 0.59289%
> (Student's t, pooled s = 0.148324)
>
> before = kernel with SCHED_4BSD, after = SCHED_ULE with your patchset. Both
> are without WITNESS/INVARIANTS.
Hi Dmitry,
Can you test with http://people.freebsd.org/~jeff/sched_ule.c? I believe
this will somewhat improve the situation with buildkernel. I have tested
with my own core2duo laptop. The first run after reboot is now about 7%
faster than before. Subsequent runs are not improved as much. Only 2-3%.
You can also try tuning sysctl kern.sched.steal_thresh down as low as 1 to
see how much this may help. Unfortunately lower values tend to really
hurt other tests.
Thanks,
Jeff
>
> Sincerely,
> D.Marck [DM5020, MCK-RIPE, DM3-RIPN]
> ------------------------------------------------------------------------
> *** Dmitry Morozovsky --- D.Marck --- Wild Woozle --- marck at rinet.ru ***
> ------------------------------------------------------------------------
> _______________________________________________
> freebsd-current at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe at freebsd.org"
>
More information about the freebsd-current
mailing list