Received: from localhost (maia-1.hub.org [200.46.204.191]) by postgresql.org (Postfix) with ESMTP id C7B259FA4A3 for ; Mon, 23 Jul 2007 15:30:20 -0300 (ADT) Received: from postgresql.org ([200.46.204.71]) by localhost (mx1.hub.org [200.46.204.191]) (amavisd-maia, port 10024) with ESMTP id 56963-08 for ; Mon, 23 Jul 2007 15:30:17 -0300 (ADT) X-Greylist: from auto-whitelisted by SQLgrey-1.7.5 Received: from mail01.enterprisedb.com (mail01.enterprisedb.com [63.246.7.168]) by postgresql.org (Postfix) with ESMTP id 322EA9FA170 for ; Mon, 23 Jul 2007 15:30:17 -0300 (ADT) thread-index: AcfNV4wXlFBYonMwTRi8WkHfx6Af2g== Received: from [192.168.0.5] ([81.6.216.155]) by mail01.enterprisedb.com with Microsoft SMTPSVC(6.0.3790.3959); Mon, 23 Jul 2007 14:30:21 -0400 Content-Class: urn:content-classes:message Importance: normal X-MimeOLE: Produced By Microsoft MimeOLE V6.00.3790.4073 Subject: Re: User concurrency thresholding: where do I look? From: "Simon Riggs" To: "Tom Lane" Cc: "Jignesh K. Shah" , "Josh Berkus" , , "Alvaro Herrera" In-Reply-To: <1545.1185214760@sss.pgh.pa.us> References: <200707190828.59088.josh@agliodbs.com> <200707191819.13899.josh@agliodbs.com> <15685.1184895926@sss.pgh.pa.us> <200707192138.39679.josh@agliodbs.com> <46A0FA31.2080208@sun.com> <12002.1184955831@sss.pgh.pa.us> <46A1055F.9010304@sun.com> <12445.1184958793@sss.pgh.pa.us> <46A11116.5030905@sun.com> <14909.1184962561@sss.pgh.pa.us> <46A1205B.8010205@sun.com> <15343.1184965054@sss.pgh.pa.us> <1185180668.4284.149.camel@ebony.site> <23848.1185199901@sss.pgh.pa.us> <1185201556.4284.243.camel@ebony.site> <25095.1185202498@sss.pgh.pa.us> <1185205663.4284.249.camel@ebony.site> <1185212261.4284.270.camel@ebony.site> <1545.1185214760@sss.pgh.pa.us> Content-Type: text/plain; charset="iso-8859-1" Date: Mon, 23 Jul 2007 19:30:48 +0100 Message-ID: <1185215448.4284.295.camel@ebony.site> MIME-Version: 1.0 X-Mailer: Evolution 2.8.2 Content-Transfer-Encoding: 7bit X-OriginalArrivalTime: 23 Jul 2007 18:30:21.0921 (UTC) FILETIME=[874DA510:01C7CD57] X-Virus-Scanned: Maia Mailguard 1.0.1 X-Archive-Number: 200707/305 X-Sequence-Number: 25989 On Mon, 2007-07-23 at 14:19 -0400, Tom Lane wrote: > "Simon Riggs" writes: > > currPos and markPos are defined as BTScanPosData, which is an array of > > BTScanPosItems. That makes BTScanOpaqueData up to 8232 bytes, which > > seems wasteful since markPos is only ever used during merge joins. Most > > of that space isn't even used during merge joins either, we just do that > > to slightly optimise the speed of the restore during merge joins. > > Ah. I was seeing it as 6600 bytes on HPPA and 6608 on x86_64, but > I forgot that both of those architectures have MAXALIGN = 8. On a > MAXALIGN = 4 machine, MaxIndexTuplesPerPage will be significantly > larger, leading to larger BTScanPosData. > > Not sure it's worth fooling with, given that these days almost everyone > who's seriously concerned about performance is probably using 64bit > hardware. One less malloc cycle per indexscan is never going to be a > measurable savings anyway... Oh sure, I was thinking to avoid Solaris' mutex by avoiding malloc() completely. -- Simon Riggs EnterpriseDB http://www.enterprisedb.com