From owner-freebsd-stable@FreeBSD.ORG Sun Apr 30 17:48:12 2006 Return-Path: X-Original-To: freebsd-stable@freebsd.org Delivered-To: freebsd-stable@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B6D9216A400 for ; Sun, 30 Apr 2006 17:48:12 +0000 (UTC) (envelope-from kris@obsecurity.org) Received: from elvis.mu.org (elvis.mu.org [192.203.228.196]) by mx1.FreeBSD.org (Postfix) with ESMTP id 644B743D45 for ; Sun, 30 Apr 2006 17:48:12 +0000 (GMT) (envelope-from kris@obsecurity.org) Received: from obsecurity.dyndns.org (elvis.mu.org [192.203.228.196]) by elvis.mu.org (Postfix) with ESMTP id 072B31A4D9F; Sun, 30 Apr 2006 10:48:12 -0700 (PDT) Received: by obsecurity.dyndns.org (Postfix, from userid 1000) id C5EC955131; Sun, 30 Apr 2006 13:48:07 -0400 (EDT) Date: Sun, 30 Apr 2006 13:48:07 -0400 From: Kris Kennaway To: Chris Message-ID: <20060430174807.GA1618@xor.obsecurity.org> References: <20060427160536.M96305@atlantis.atlantis.dp.ua> <20060427181226.GA66431@xor.obsecurity.org> <20060428122448.K57436@atlantis.atlantis.dp.ua> <20060428182818.GA10410@xor.obsecurity.org> <3aaaa3a0604300205l64f19573u250a727e4c83f499@mail.gmail.com> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="Nq2Wo0NMKNjxTN9z" Content-Disposition: inline In-Reply-To: <3aaaa3a0604300205l64f19573u250a727e4c83f499@mail.gmail.com> User-Agent: Mutt/1.4.2.1i Cc: Dmitry Pryanishnikov , freebsd-stable@freebsd.org, Kris Kennaway Subject: Re: RELENG_4 -> 5 -> 6: significant performance regression X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Apr 2006 17:48:12 -0000 --Nq2Wo0NMKNjxTN9z Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sun, Apr 30, 2006 at 10:05:40AM +0100, Chris wrote: > On 28/04/06, Kris Kennaway wrote: > >On Fri, Apr 28, 2006 at 03:31:17PM +0300, Dmitry Pryanishnikov wrote: > >> > >> Hello! > >> > >> On Thu, 27 Apr 2006, Kris Kennaway wrote: > >> > >> Thanks for your suggestions, they've made a difference (though not as= =20 > >big > >> as one could hope). > >> > >> >On Thu, Apr 27, 2006 at 05:08:11PM +0300, Dmitry Pryanishnikov wrote: > >> > > >> >>makeoptions CONF_CFLAGS=3D-fno-builtin > >> > > >> >Non-default option; this may conceivably affect performance. > >> > >> The reason why I've initially included this option is the following > >> comment (NOTES from RELENG_6): > >> > >> # > >> # CONF_CFLAGS gives some extra compiler flags that are added to ${CFLA= GS} > >> # after most other flags. Here we use it to inhibit use of non-optimal > >> # gcc builtin functions (e.g., memcmp). > >> # > >> > >> I've read this: using "CONF_CFLAGS=3D-fno-builtin" inhibits use of=20 > >non-optimal > >> gcc builtin functions, so this option may be useful for getting max. > >> performance. Are this comment and my interpretation still correct now? > > > >I don't know, it needs to be tested in your particular case. > > > >> >> %Sys %Intr %Idl > >> >>RELENG_4 + rl0 14 14 72 > >> >>RELENG_4 + fxp0 14 10 76 > >> >>RELENG_5 + rl0 40 30 30 > >> >>RELENG_5 + fxp0 35 25 40 > >> >>RELENG_6 + rl0 45 40 15 > >> >>RELENG_6 + fxp0 45 35 20 > > > >> %Sys %Intr %Idl "time md5 -t" wall clock time > >> RELENG_5 + rl0 33 23 44 1:41 > >> RELENG_5 + fxp0 30 20 50 1:36 > >> > >> RELENG_6 + rl0 34 24 42 1:43 > >> RELENG_6 + fxp0 30 20 50 1:40 > >> > >> So performance now is much better then before removal of > >> > >> makeoptions CONF_CFLAGS=3D-fno-builtin > >> options INVARIANTS > >> options INVARIANT_SUPPORT > >> options QUOTA > >> > >> (I'll try to find out which one of these takes which % of overhead whe= n I > >> get free time), but still much worse then under RELENG_4, where this > >> particular (I'd say "quote common") usage pattern takes 24-28% of CPU= =20 > >time, > >> while under RELENG_5 / 6 it takes >=3D 50% ;( > > > >Thanks. Silly question: the data transfer rate is the same on both > >4.x and 6.x, right? i.e. the data transfer itself takes the same > >time? > > > >The next step is for you to run some profiling tests to see > >where the kernel is spending time, e.g. with hwpmc. > > > >Also, when you are trying to quantify performance differences, you > >need to run many copies of the test (at least 10) under identical > >conditions to account for possible variations. The ministat tool > >(/usr/src/tools/tools/ministat) is good for performing statistically > >meaningful comparisons of data sets when you have them. > > > >Kris >=20 > Does 'makeoptions DEBUG=3D-g' add any kind of performance hit or > overhead as I noticed it wasnt default in 5.4 but is in 6.0. No, the symbols are stripped from the install kernel. Kris --Nq2Wo0NMKNjxTN9z Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.3 (FreeBSD) iD8DBQFEVPhXWry0BWjoQKURAiK/AKDumwziGpGW3rZTOn5hTSm7igKvywCfaFen I7MZKSc5MpRXqupIkO32Zt8= =9LzR -----END PGP SIGNATURE----- --Nq2Wo0NMKNjxTN9z--