From owner-freebsd-smp@FreeBSD.ORG Thu Jan 12 10:28:50 2006 Return-Path: X-Original-To: freebsd-smp@freebsd.org Delivered-To: freebsd-smp@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7962216A41F for ; Thu, 12 Jan 2006 10:28:50 +0000 (GMT) (envelope-from david@landgren.net) Received: from sferics.mongueurs.net (sferics.mongueurs.net [81.80.147.197]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1DBD943D46 for ; Thu, 12 Jan 2006 10:28:47 +0000 (GMT) (envelope-from david@landgren.net) Received: from [127.0.0.1] (exo.bpinet.com [81.80.147.206]) by sferics.mongueurs.net (Postfix) with ESMTP id E5132AC6F for ; Thu, 12 Jan 2006 11:28:45 +0100 (CET) Message-ID: <43C62F16.8030401@landgren.net> Date: Thu, 12 Jan 2006 11:27:34 +0100 From: David Landgren Organization: The Lusty Decadent Delights of Imperial Pompeii User-Agent: Thunderbird 1.5 (Windows/20051201) MIME-Version: 1.0 To: freebsd-smp@freebsd.org Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Benchmarks of 5.4 and 6.0 on a 6-CPU host (HP Netserver LT 6000r) X-BeenThere: freebsd-smp@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD SMP implementation group List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Jan 2006 10:28:50 -0000 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."