Benchmarks of 5.4 and 6.0 on a 6-CPU host (HP Netserver LT 6000r)
David Landgren
david at landgren.net
Thu Jan 12 02:28:50 PST 2006
List,
A while back, I mentioned that I was going to bring a six-processor box
(an HP Netserver LT 6000r) from 5.x to 6.0-STABLE, and someone asked for
some before and after benchmarks. With the recent spate of advisories, I
figured it was time to recompile the world, which gave me the chance to
perform the other side of the benchmark, to see how 6.0 performs.
The benchmark was of course to buildworld and buildkernel.
Back in november I was running a reasonably recent 5.4-STABLE. I first
ran the build with -j12 to give the system a workout, and then
afterwards without, for the real thing. Each time I moved /usr/obj to
/usr/obj-old, in order to have a fresh /usr/obj directory tree created
each time. (In fact, I didn't have much choice in the matter: cruft from
5.4 builds or something or other cause the very first make to fail.
Zapping /usr/obj fixed that).
In all cases the machine was very lightly loaded.
5.4-STABLE compilation times
----------------------------
# Build world, 12 processes:
time env -i make -j12 -DALWAYS_CHECK_MAKE buildworld
real 43m28.093s
user 152m18.214s
sys 41m6.976s
# Build word, normal:
time env -i make -DALWAYS_CHECK_MAKE buildworld
real 157m46.084s
user 143m20.122s
sys 17m53.311s
# Build kernel, 12 processes:
time env -i make -j12 -DALWAYS_CHECK_MAKE buildkernel KERNCONF=PROFANE
real 18m30.613s
user 30m46.221s
sys 6m0.858s
# Build kernel, normal:
time env -i make -DALWAYS_CHECK_MAKE buildkernel KERNCONF=PROFANE
real 32m51.860s
user 29m53.228s
sys 3m30.556s
6.0-STABLE compilation times
----------------------------
# Build world, 12 processes:
time env -i make -j12 -DALWAYS_CHECK_MAKE buildworld
real 43m40.423s
user 155m43.345s
sys 30m15.898s
(Of note, system time has declined by 25%)
# Build word, normal:
time env -i make -DALWAYS_CHECK_MAKE buildworld
real 160m28.020s
user 146m26.300s
sys 16m4.736s
(No difference)
# Build kernel, 12 processes:
time env -i make -j12 -DALWAYS_CHECK_MAKE buildkernel KERNCONF=PROFANE
real 18m12.984s
user 31m31.825s
sys 4m26.606s
(again, a clear reduction of 25%)
# Build kernel, normal:
time env -i make -DALWAYS_CHECK_MAKE buildkernel KERNCONF=PROFANE
real 33m30.404s
user 30m42.769s
sys 2m52.994s
(no difference)
So my naive reading of the above is yes, the kernel 6.0 is quite a bit
more efficient on multiprocessor systems, the more the machine is
loaded, the more the difference.
David Landgren
--
"It's overkill of course, but you can never have too much overkill."
More information about the freebsd-smp
mailing list