Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 12 Jan 2006 11:27:34 +0100
From:      David Landgren <david@landgren.net>
To:        freebsd-smp@freebsd.org
Subject:   Benchmarks of 5.4 and 6.0  on a 6-CPU host (HP Netserver LT 6000r)
Message-ID:  <43C62F16.8030401@landgren.net>

next in thread | raw e-mail | index | archive | help
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."




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?43C62F16.8030401>