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>