Date: Sat, 13 May 2006 10:37:40 -0400 From: Kris Kennaway <kris@obsecurity.org> To: Dmitry Pryanishnikov <dmitry@atlantis.dp.ua> Cc: freebsd-stable@FreeBSD.org, Kris Kennaway <kris@obsecurity.org> Subject: Re: RELENG_4 -> 5 -> 6: significant performance regression Message-ID: <20060513143740.GA46313@xor.obsecurity.org> In-Reply-To: <20060513084236.W74146@atlantis.atlantis.dp.ua> References: <20060427160536.M96305@atlantis.atlantis.dp.ua> <20060427181226.GA66431@xor.obsecurity.org> <20060428122448.K57436@atlantis.atlantis.dp.ua> <20060428182818.GA10410@xor.obsecurity.org> <20060512161836.R75964@atlantis.atlantis.dp.ua> <20060513020051.GB18438@xor.obsecurity.org> <20060513084236.W74146@atlantis.atlantis.dp.ua>
next in thread | previous in thread | raw e-mail | index | archive | help
--/04w6evG8XlLl3ft Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, May 13, 2006 at 08:59:01AM +0300, Dmitry Pryanishnikov wrote: >=20 > Hello! >=20 > On Fri, 12 May 2006, Kris Kennaway wrote: > >>>>>> %Sys %Intr %Idl > >>>>>>RELENG_6 + rl0 45 40 15 > >>>>>>RELENG_6 + fxp0 45 35 20 > >>> > >>>> %Sys %Intr %Idl "time md5 -t" wall clock time > >>>>RELENG_6 + rl0 34 24 42 1:43 > >>>>RELENG_6 + fxp0 30 20 50 1:40 > >> > >>is caused by just these: > >> > >>options INVARIANTS > >>options INVARIANT_SUPPORT > > > >So what is the overall status? I am not clear what your results are. >=20 > Results for RELENG_6+rl0 are >=20 > %Sys %Intr %Idl > 34 24 42 >=20 > without INVARIANTS, and >=20 > %Sys %Intr %Idl > 45 40 15 >=20 > with them. Other options like QUOTA and "makeoptions > CONF_CFLAGS=3D-fno-builtin" make almost no difference. So, under my test > conditions, the best % of idle CPU time under RELENG_6 is 42%, while unde= r=20 > RELENG_4 we had >=20 > %Sys %Intr %Idl > 14 14 72 >=20 > under the same conditions (and with INVARIANTS!) ;( OK, thanks. In order to understand the differences you will need to proceed to detailed profiling traces as I previously mentioned. With respect to INVARIANTS, you just need to get used to the fact that running thousands of checks for bugs is incompatible with running at optimal speed. The effect is cumulative over time: as more checks are added (and since they are essentially never removed), checks that are individually very cheap become collectively quite expensive. It is not feasible to only enable the subset of the thousands of checks that are going to find the most bugs. Kris --/04w6evG8XlLl3ft Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.3 (FreeBSD) iD8DBQFEZe80Wry0BWjoQKURAnE3AKC2JqMmMidnVqf6pAAV1tFXKANCbQCfSOdb mE8Oa98cysvAPz6q7N9d4Fw= =eUb5 -----END PGP SIGNATURE----- --/04w6evG8XlLl3ft--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060513143740.GA46313>