Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 6 Apr 2012 13:54:03 -0400
From:      Arnaud Lacombe <lacombar@gmail.com>
To:        Attilio Rao <attilio@freebsd.org>
Cc:        freebsd-performance@freebsd.org, FreeBSD Current <freebsd-current@freebsd.org>
Subject:   Re: Scheduler + IPC performance on FreeBSD 7.4, 8.2, 9.0 and -CURRENT
Message-ID:  <CACqU3MV=2Whd2rWgnxzxehiRSqmi03j22U32c0gcvC%2B=zwzGKA@mail.gmail.com>
In-Reply-To: <CAJ-FndDFHaKBPozhkBd6DxGo6F4UCs=9YGg0uMpB_S8iJ8Om0w@mail.gmail.com>
References:  <CACqU3MXOM1WOPkinxfs2YJmGbgx8-gAmUbK4L3epKPg6OpQXAw@mail.gmail.com> <CAJ-FndDFHaKBPozhkBd6DxGo6F4UCs=9YGg0uMpB_S8iJ8Om0w@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Hi,

On Fri, Apr 6, 2012 at 10:58 AM, Attilio Rao <attilio@freebsd.org> wrote:
> Il 05 aprile 2012 19:03, Arnaud Lacombe <lacombar@gmail.com> ha scritto:
>> Hi folks,
>>
>> Over the past months, I ran on a couple of unused box the
>> `hackbench'[HACKBENCH] benchmark used by the Linux folks for tracking
>> down various kind of regression/improvement. `hackbench' is a
>> scheduler + IPC test (socket xor pipe). It creates producers/consumers
>> groups and let a variable quantity of small messages flow happily.
>> Producers and consumers are either processes xor threads.
>>
>> Tested platforms were
>> =A0- Atom D510, Intel, (incomplete)
>> =A0- Core 2 Quad Q9560, Intel
>> =A0- Soekris net5501, AMD (incomplete)
>> =A0- Xeon E5645, Intel (incomplete)
>> =A0- Xeon E5620 (dual package), Intel
>> =A0- Xeon E5-1650 (pending completion)
>> =A0- Vortex86, DMP
>>
>> Tested kernel were:
>> =A0- FreeBSD 7.4-RELEASE
>> =A0- FreeBSD 8.2-RELEASE
>> =A0- FreeBSD 9.0-RC3 and FreeBSD 9.0-RELEASE
>> =A0- FreeBSD 10-CURRENT as of r231573
>
> Which means you run 10-CURRENT with all the kernel debugging options
> on and MALLOC_DEBUG on?
>
I already answered that question. Namely:

<<
note: rule [I] is alleviated for -CURRENT kernels, which were built
with the same alteration made to GENERIC during the CURRENT->RELEASE
transition (ie. WITNESS and a couple of other option disabled).
>>

this translates into the following patch (for amd64):

diff --git a/sys/amd64/conf/GENERIC b/sys/amd64/conf/GENERIC
index 8db8e27..9d61f25 100644
--- a/sys/amd64/conf/GENERIC
+++ b/sys/amd64/conf/GENERIC
@@ -67,20 +67,6 @@ options      MAC                     # TrustedBSD
MAC Framework
 #options       KDTRACE_HOOKS           # Kernel DTrace hooks
 options        INCLUDE_CONFIG_FILE     # Include this file in kernel

-# Debugging support.  Always need this:
-options        KDB                     # Enable kernel debugger support.
-# For minimum debugger support (stable branch) use:
-#options       KDB_TRACE               # Print a stack trace for a panic.
-# For full debugger support use this instead:
-options        DDB                     # Support DDB.
-options        GDB                     # Support remote GDB.
-options        DEADLKRES               # Enable the deadlock resolver
-options        INVARIANTS              # Enable calls of extra sanity chec=
king
-options        INVARIANT_SUPPORT       # Extra sanity checks of
internal structures, required by INVARIANTS
-options        WITNESS                 # Enable checks to detect
deadlocks and cycles
-options        WITNESS_SKIPSPIN        # Don't run witness on
spinlocks for speed
-options        MALLOC_DEBUG_MAXZONES=3D8 # Separate malloc(9) zones

 - Arnaud

> Attilio
>
>
> --
> Peace can only be achieved by understanding - A. Einstein



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CACqU3MV=2Whd2rWgnxzxehiRSqmi03j22U32c0gcvC%2B=zwzGKA>