Received: from maia.hub.org (unknown [200.46.208.211]) by mail.postgresql.org (Postfix) with ESMTP id A8FF1634BB7 for ; Wed, 3 Mar 2010 13:09:51 -0400 (AST) Received: from mail.postgresql.org ([200.46.204.86]) by maia.hub.org (mx1.hub.org [200.46.208.211]) (amavisd-maia, port 10024) with ESMTP id 45013-01 for ; Wed, 3 Mar 2010 17:09:39 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-bw0-f216.google.com (mail-bw0-f216.google.com [209.85.218.216]) by mail.postgresql.org (Postfix) with ESMTP id 45FDB633E5D for ; Wed, 3 Mar 2010 13:09:40 -0400 (AST) Received: by bwz8 with SMTP id 8so1369891bwz.3 for ; Wed, 03 Mar 2010 09:09:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=5es/tIQESIvcXdtoWANCdN5p4Demu8HALAepZ6qMRDY=; b=xwK30TayQkY3k4OnV0ygO/EN8f82Wmjl9UjMY3v0cN5+mZX3AZQ+M+L5o/f0zbnUW/ 1qIwnQvJHkgx63V/AOAipm48yyKZYujmxih/RaO6OB3h/ptDfk9SbuOIXq9+KF9adW6u Snw3cn19NtDGNfPqoyv6LyZ2NecrjfXgDTwH8= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; b=jvORL3Cv6LYa4THi6hwle5dYp9AJt1fgdL6O+Qunz1jRBvIi5TdvHy/prXvo/ln6jE 0bACR2TO6KiG1jNPUrlM1lqHWp3WaNBmjooCg8jDI/dLfra8phFa7+3SIDM3BW56sCsu yHs5lUnOoxvq3J+Qgi+Iibqc8pgfGayaVc1D0= MIME-Version: 1.0 Received: by 10.239.154.135 with SMTP id e7mr817779hbc.76.1267636178854; Wed, 03 Mar 2010 09:09:38 -0800 (PST) In-Reply-To: <516a4a601002251529y7d445a19w15750315db8b5bd8@mail.gmail.com> References: <516a4a601002251323udcc2b41tf5a09b968bef3a7c@mail.gmail.com> <4B86FE2A.1030205@2ndquadrant.com> <516a4a601002251529y7d445a19w15750315db8b5bd8@mail.gmail.com> Date: Wed, 3 Mar 2010 12:09:38 -0500 Message-ID: <603c8f071003030909m1a27372dm4900badeac7c17df@mail.gmail.com> Subject: Re: dbt2 performance From: Robert Haas To: Yu-Ju Hong Cc: pgsql-performance@postgresql.org Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=-2.481 tagged_above=-10 required=5 tests=AWL=0.118, BAYES_00=-2.599 X-Spam-Level: X-Archive-Number: 201003/61 X-Sequence-Number: 37886 On Thu, Feb 25, 2010 at 6:29 PM, Yu-Ju Hong wrote: > Thanks for the reply. > > On Thu, Feb 25, 2010 at 5:48 PM, Greg Smith wrote: >> >> Yu-Ju Hong wrote: >>> >>> 2. Moreover, the disk utilization was high and the "await" time from >>> iostat is around 500 ms. Could disk I/O limit the overall throughput? T= he >>> server has 2 SATA disks, one for system and postgresql and the other is >>> dedicated to logging (pg_xlog). As far as I understand, modern database >>> systems should be CPU-bound rather than I/O-bound, is it because I did = not >>> perform adequate performance tuning? >> >> dbt2 is almost exclusively disk I/O bound once the data set gets big >> enough. =A0There are some applications where most of the data fits in RA= M and >> therefore CPU performance is the limiter. =A0dbt2 is exactly the opposit= e of >> such an application though, and the idea that "modern database systems >> should be CPU bound" is not really true at all. =A0That's only the case = if the >> data you're operating on fits in RAM. =A0Otherwise, databases are just a= s I/O >> bound as they've always been. =A0Main thing that's changed is there's a = lot >> more RAM in systems nowadays. > > In my test, there was almost no disk reads (mostly disk writes), so I > assumed the size of the database didn't cause the performance bottleneck. > Maybe I was wrong. If so, should I increase shared_buffer? Well if you're writing a lot of stuff to disk you could easily be I/O limit= ed. > Assuming that dbt2 was limited by disk I/O in my experiments, do you thin= k > the numbers I got with my server configuration are reasonable? Since you've provided no details on your hardware configuration I'm not sure how anyone could express an educated opinion on this (personally I wouldn't know anyway, but others here would). > Also, would you mind giving some examples where the applications are CPU > bound? That could be useful information to me. You'll typically be CPU bound when you're not I/O bound - i.e. when the data that your accessing is small enough to fit in memory. ...Robert