Received: from localhost (unknown [200.46.204.187]) by postgresql.org (Postfix) with ESMTP id DEDA39FC59A; Thu, 25 Oct 2007 19:38:10 -0300 (ADT) Received: from postgresql.org ([200.46.204.71]) by localhost (mx1.hub.org [200.46.204.187]) (amavisd-maia, port 10024) with ESMTP id 01179-08-2; Thu, 25 Oct 2007 19:37:48 -0300 (ADT) X-Greylist: from auto-whitelisted by SQLgrey-1.7.5 X-Greylist: from auto-whitelisted by SQLgrey-1.7.5 Received: from oxford.xeocode.com (unknown [87.127.95.196]) by postgresql.org (Postfix) with ESMTP id 15E5C9FC99E; Thu, 25 Oct 2007 19:37:36 -0300 (ADT) Received: from localhost ([127.0.0.1] helo=oxford.xeocode.com) by oxford.xeocode.com with esmtp (Exim 4.67) (envelope-from ) id 1IlBKX-0004CB-IN; Thu, 25 Oct 2007 23:37:33 +0100 To: "Jignesh K. Shah" Cc: , Subject: Re: 8.3beta1 testing on Solaris In-Reply-To: <4720FB72.8060800@sun.com> (Jignesh K. Shah's message of "Thu\, 25 Oct 2007 16\:24\:18 -0400") User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.1 (gnu/linux) X-Draft-From: ("nnimap+mail01.enterprisedb.com:INBOX.performance" 2947) References: <4720FB72.8060800@sun.com> From: Gregory Stark Organization: EnterpriseDB Date: Thu, 25 Oct 2007 23:37:33 +0100 Message-ID: <87640u95xu.fsf@oxford.xeocode.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Virus-Scanned: Maia Mailguard 1.0.1 X-Archive-Number: 200710/289 X-Sequence-Number: 27311 "Jignesh K. Shah" writes: > CLOG data is not cached in any PostgreSQL shared memory segments and hence > becomes the bottleneck as it has to constantly go to the filesystem to get > the read data. This is the same bottleneck you discussed earlier. CLOG reads are cached in the Postgres shared memory segment but only NUM_CLOG_BUFFERS are which defaults to 8 buffers of 8kb each. With 1,000 clients and the transaction rate you're running you needed a larger number of buffers. Using the filesystem buffer cache is also an entirely reasonable solution though. That's surely part of the logic behind not trying to keep more of the clog in shared memory. Do you have any measurements of how much time is being spent just doing the logical I/O to the buffer cache for the clog pages? 4MB/s seems like it's not insignificant but your machine is big enough that perhaps I'm thinking at the wrong scale. I'm really curious whether you see any benefit from the vxid read-only transactions. I'm not sure how to get an apples to apples comparison though. Ideally just comparing it to CVS HEAD from immediately prior to the vxid patch going in. Perhaps calling some function which forces an xid to be allocated and seeing how much it slows down the benchmark would be a good substitute. -- Gregory Stark EnterpriseDB http://www.enterprisedb.com