Re: Scheduler + IPC performance on FreeBSD 7.4, 8.2, 9.0 and -CURRENT

Arnaud Lacombe <[email protected]>
Newsgroups gmane.os.freebsd.current,gmane.os.freebsd.performance
Message-ID <CACqU3MV=2Whd2rWgnxzxehiRSqmi03j22U32c0gcvC+=zwzGKA@mail.gmail.com>
Hi,

On Fri, Apr 6, 2012 at 10:58 AM, Attilio Rao <[email protected]> wrote:
> Il 05 aprile 2012 19:03, Arnaud Lacombe <[email protected]> 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
>>  - Atom D510, Intel, (incomplete)
>>  - Core 2 Quad Q9560, Intel
>>  - Soekris net5501, AMD (incomplete)
>>  - Xeon E5645, Intel (incomplete)
>>  - Xeon E5620 (dual package), Intel
>>  - Xeon E5-1650 (pending completion)
>>  - Vortex86, DMP
>>
>> Tested kernel were:
>>  - FreeBSD 7.4-RELEASE
>>  - FreeBSD 8.2-RELEASE
>>  - FreeBSD 9.0-RC3 and FreeBSD 9.0-RELEASE
>>  - 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 checking
-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=8 # Separate malloc(9) zones

 - Arnaud

> Attilio
>
>
> --
> Peace can only be achieved by understanding - A. Einstein
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "[email protected]"
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.