Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 09 Dec 2011 06:03:26 -0500
From:      George Mitchell <george+freebsd@m5p.com>
To:        freebsd-stable@freebsd.org
Subject:   SCHED_ULE should not be the default
Message-ID:  <4EE1EAFE.3070408@m5p.com>

next in thread | raw e-mail | index | archive | help
dnetc is an open-source program from http://www.distributed.net/.  It
tries a brute-force approach to cracking RC4 puzzles and also computes
optimal Golomb rulers.  It starts up one process per CPU and runs at
nice 20 and is, for all intents and purposes, 100% compute bound.

Here is what happens on my system, running 9.0-PRERELEASE, with and
without dnetc running, with SCHED_ULE and SCHED-4BSD, when I run the
command:

time make buildkernel KERNCONF=WONDERLAND

(I get similar results on 8.x as well.)

SCHED_4BSD, dnetc not running:
1329.715u 123.739s 24:47.95 97.6%	6310+1987k 11233+11098io 419pf+0w

SCHED_4BSD, dnetc running:
1329.364u 115.158s 26:14.83 91.7%	6325+1987k 10912+11060io 393pf+0w

SCHED_ULE, dnetc not running:
1357.457u 121.526s 25:20.64 97.2%	6326+1990k 11234+11149io 419pf+0w

SCHED_ULE, dnetc running:
Still going after seven and a half hours of clock time, up to
compiling netgraph/bluetooth.  (Completed in another five minutes
after stopping dnetc so I could write this message in a reasonable
amount of time.)

Not everybody runs this sort of program, but there are plenty of
similar projects out there, and people who try to participate in
them will be mightily displeased with their FreeBSD systems when
they do.  Is there some case where SCHED_ULE exhibits significantly
better performance than SCHED_4BSD?  If not, I think SCHED-4BSD
should remain the default GENERIC configuration until this is fixed.
-- George Mitchell



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4EE1EAFE.3070408>