X-Original-To: pgsql-performance-postgresql.org@localhost.postgresql.org Received: from localhost (av.hub.org [200.46.204.144]) by postgresql.org (Postfix) with ESMTP id C917E9DCBD1 for ; Thu, 9 Mar 2006 22:23:30 -0400 (AST) Received: from postgresql.org ([200.46.204.71]) by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024) with ESMTP id 34707-05 for ; Thu, 9 Mar 2006 22:23:34 -0400 (AST) X-Greylist: delayed 01:40:47.508336 by SQLgrey- Received: from qsrv01ps.mx.bigpond.com (qsrv01ps.mx.bigpond.com [144.140.82.181]) by postgresql.org (Postfix) with ESMTP id 529239DCB97 for ; Thu, 9 Mar 2006 22:23:25 -0400 (AST) Received: from [192.168.248.100] (really [149.167.166.208]) by omta05ps.mx.bigpond.com with ESMTP id <20060309235136.LAEH14751.omta05ps.mx.bigpond.com@[192.168.248.100]>; Thu, 9 Mar 2006 23:51:36 +0000 Message-ID: <4410BF88.5080001@bigpond.net.au> Date: Fri, 10 Mar 2006 09:51:36 +1000 From: David Brown User-Agent: Mozilla Thunderbird 1.0RC1 (Windows/20041201) X-Accept-Language: en-us, en MIME-Version: 1.0 To: Andre Felipe Machado CC: pgsql-performance@postgresql.org Subject: Re: firebird X postgresql 8.1.2 windows, performance comparison References: <20060307162842.M37264@techforce.com.br> <1141782015.1610.40.camel@localhost.localdomain> In-Reply-To: <1141782015.1610.40.camel@localhost.localdomain> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Scanned: by amavisd-new at hub.org X-Spam-Status: No, score=1.358 required=5 tests=[DNS_FROM_RFC_ABUSE=0.479, DNS_FROM_RFC_WHOIS=0.879] X-Spam-Score: 1.358 X-Spam-Level: * X-Archive-Number: 200603/104 X-Sequence-Number: 17541 Andre Felipe Machado wrote: >It seems that Firebird windows can use adequately as much ram it finds >and postgresql windows can not. > > PostgreSQL relies on the OS cache to utilize RAM. Make sure that most of the RAM is 'available' so Windows can do its thing. effective_cache_size should be set correspondingly high - at least 65535. shared_buffers should be as low as you can get away with (allowing for multiple users). 16384 is 12.5% of your RAM and far too high. AFAIK, PostgreSQL still doesn't differentiate between index blocks and data blocks. >work_mem reduced time almost 66%. >But work_mem easily can exhaust ram with many users connected, as each >connection query will use this amount of memory (if I can remember). >How much it can grow at this 1 gbram win machine? > > work_mem has to be just big enough to allow hash joins to operate efficiently. This varies from query to query and can be set in your code accordingly. However, the 1024 default is just too low for most applications and you'll probably find even 4096 is a huge improvement. You need to find the minimum that delivers acceptable performance in most queries and boost it for selected queries as required. BTW, which version of Firebird is this?