|Subject:||Benchmarks of 5.4 and 6.0 on a 6-CPU host (HP Netserver LT 6000r)|
|From:||David Landgren (dav...@landgren.net)|
|Date:||Jan 12, 2006 2:29:23 am|
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
# 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
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.
-- "It's overkill of course, but you can never have too much overkill."