Received: from magus.postgresql.org (magus.postgresql.org [87.238.57.229]) by mail.postgresql.org (Postfix) with ESMTP id BC91612FE952 for ; Thu, 5 Apr 2012 12:50:11 -0300 (ADT) Received: from [2001:1528:137::f1] (helo=mail.gransy.com) by magus.postgresql.org with esmtp (Exim 4.72) (envelope-from ) id 1SFowr-0008Gb-DU for pgsql-performance@postgresql.org; Thu, 05 Apr 2012 15:50:10 +0000 Received: from antispam.gransy.com (antispam.gransy.com [77.78.104.124]) by mail.gransy.com (Postfix) with ESMTP id 77C8F508550 for ; Thu, 5 Apr 2012 17:49:56 +0200 (CEST) Received: from mail.gransy.com ([82.208.29.194]) by antispam.gransy.com (antispam.gransy.com [77.78.104.124]) (amavisd-new, port 10024) with ESMTP id txGOfZccWnGK for ; Thu, 5 Apr 2012 17:49:56 +0200 (CEST) Received: by mail.gransy.com (Postfix, from userid 5000) id 6321550861E; Thu, 5 Apr 2012 17:49:56 +0200 (CEST) Received: from [192.168.1.237] (ip-78-45-133-255.net.upcbroadband.cz [78.45.133.255]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.gransy.com (Postfix) with ESMTPSA id 4AA30508550 for ; Thu, 5 Apr 2012 17:49:56 +0200 (CEST) Message-ID: <4F7DBF24.5010402@fuzzy.cz> Date: Thu, 05 Apr 2012 17:49:56 +0200 From: Tomas Vondra User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:11.0) Gecko/20120312 Thunderbird/11.0 MIME-Version: 1.0 CC: "pgsql-performance@postgresql.org" Subject: Re: H800 + md1200 Performance problem References: <920BB532-C321-45A3-851E-8B688A5963F7@yahoo.com> <4F7AF966.20809@fuzzy.cz> <4F7B3AEC.4000204@fuzzy.cz> <4F7CA614.8060008@fuzzy.cz> <1333631401.49335.YahooMailNeo@web171401.mail.ir2.yahoo.com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Host-Lookup-Failed: Reverse DNS lookup failed for 2001:1528:137::f1 (failed) X-Pg-Spam-Score: -0.1 (/) X-Archive-Number: 201204/69 X-Sequence-Number: 46715 On 5.4.2012 17:17, Cesar Martin wrote: > Well, I have installed megacli on server and attach the results in file > megacli.txt. Also we have "Dell Open Manage" install in server, that can > generate a log of H800. I attach to mail with name lsi_0403. > > About dirty limits, I have default values: > vm.dirty_background_ratio = 10 > vm.dirty_ratio = 20 > > I have compared with other server and values are the same, except in > centos 5.4 database production server that have vm.dirty_ratio = 40 Do the other machines have the same amount of RAM? The point is that the values that work with less memory don't work that well with large amounts of memory (and the amount of RAM did grow a lot recently). For example a few years ago the average amount of RAM was ~8GB. In that case the vm.dirty_background_ratio = 10 => 800MB vm.dirty_ratio = 20 => 1600MB which is all peachy if you have a decent controller with a write cache. But turn that to 64GB and suddenly vm.dirty_background_ratio = 10 => 6.4GB vm.dirty_ratio = 20 => 12.8GB The problem is that there'll be a lot of data waiting (for 30 seconds by default), and then suddenly it starts writing all of them to the controller. Such systems behave just as your system - short strokes of writes interleaved with 'no activity'. Greg Smith wrote a nice howto about this - it's from 2007 but all the recommendations are still valid: http://www.westnet.com/~gsmith/content/linux-pdflush.htm TL;DR: - decrease the dirty_background_ratio/dirty_ratio (or use *_bytes) - consider decreasing the dirty_expire_centiseconds T.