X-Original-To: pgsql-performance-postgresql.org@localhost.postgresql.org Received: from localhost (av.hub.org [200.46.204.144]) by svr1.postgresql.org (Postfix) with ESMTP id 0A8BAD78B8 for ; Mon, 21 Nov 2005 04:13:11 -0400 (AST) Received: from svr1.postgresql.org ([200.46.204.71]) by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024) with ESMTP id 81741-09 for ; Mon, 21 Nov 2005 08:13:11 +0000 (GMT) X-Greylist: from auto-whitelisted by SQLgrey- Received: from mail.Mi8.com (d01gw03.mi8.com [63.240.6.42]) by svr1.postgresql.org (Postfix) with ESMTP id 19771D94E5 for ; Mon, 21 Nov 2005 04:13:07 -0400 (AST) Received: from 172.16.1.112 by mail.Mi8.com with ESMTP (- Welcome to Mi8 Corporation www.Mi8.com (D3)); Mon, 21 Nov 2005 03:12:58 -0500 X-Server-Uuid: E847189C-FC88-4913-9CD4-DE66914F83C0 Received: from MI8NYCMAIL06.Mi8.com ([172.16.1.175]) by D01SMTP02.Mi8.com with Microsoft SMTPSVC(6.0.3790.211); Mon, 21 Nov 2005 03:12:58 -0500 Received: from 208.54.15.129 ([208.54.15.129]) by MI8NYCMAIL06.Mi8.com ( [172.16.1.219]) via Exchange Front-End Server mi8owa.mi8.com ( [172.16.1.104]) with Microsoft Exchange Server HTTP-DAV ; Mon, 21 Nov 2005 03:12:57 -0500 User-Agent: Microsoft-Entourage/11.2.1.051004 Date: Mon, 21 Nov 2005 00:12:55 -0800 Subject: Re: Hardware/OS recommendations for large databases ( From: "Luke Lonergan" To: "Alan Stange" cc: "Greg Stark" , "Dave Cramer" , "Joshua Marsh" , pgsql-performance@postgresql.org Message-ID: Thread-Topic: [PERFORM] Hardware/OS recommendations for large databases ( Thread-Index: AcXtjSIct5lGn9A0TIO+AtPmVX3wYQA5j3wv In-Reply-To: <437FFEF0.9090409@rentec.com> MIME-Version: 1.0 X-OriginalArrivalTime: 21 Nov 2005 08:12:58.0110 (UTC) FILETIME=[61E6E9E0:01C5EE73] X-WSS-ID: 6F9F5E002BW10867735-01-01 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Virus-Scanned: by amavisd-new at hub.org X-Spam-Status: No, score=1.253 required=5 tests=[RCVD_NUMERIC_HELO=1.253] X-Spam-Score: 1.253 X-Spam-Level: * X-Archive-Number: 200511/418 X-Sequence-Number: 15675 Alan, On 11/19/05 8:43 PM, "Alan Stange" wrote: > Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn > sdd 343.73 175035.73 277.55 5251072 8326 > > while doing a select count(1) on the same large table as before. > Subsequent iostat output all showed that this data rate was being > maintained. The system is otherwise mostly idle during this measurement. Yes - interesting. Note the other result using XFS that I posted earlier where I got 240+MB/s. XFS has more aggressive readahead, which is why I used it. > Can you explain again why you think there's an IO ceiling of 120MB/s > because I really don't understand? OK - slower this time: We've seen between 110MB/s and 120MB/s on a wide variety of fast CPU machines with fast I/O subsystems that can sustain 250MB/s+ using dd, but which all are capped at 120MB/s when doing sequential scans with different versions of Postgres. Understand my point: It doesn't matter that there is idle or iowait on the CPU, the postgres executor is not able to drive the I/O rate for two reasons: there is a lot of CPU used for the scan (the 40% you reported) and a lack of asynchrony (the iowait time). That means that by speeding up the CPU you only reduce the first part, but you don't fix the second and v.v. With more aggressive readahead, the second problem (the I/O asynchrony) is handled better by the Linux kernel and filesystem. That's what we're seeing with XFS. - Luke