Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.80) (envelope-from ) id 1Uzv1r-0007cJ-3O for pgsql-performance@arkaria.postgresql.org; Thu, 18 Jul 2013 20:42:23 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.80) (envelope-from ) id 1Uzv1p-0002s4-Uo for pgsql-performance@arkaria.postgresql.org; Thu, 18 Jul 2013 20:42:21 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtp (Exim 4.80) (envelope-from ) id 1Uzv1o-0002rx-PN for pgsql-performance@postgresql.org; Thu, 18 Jul 2013 20:42:20 +0000 Received: from smtp2.peak6.com ([38.98.137.9]) by magus.postgresql.org with esmtp (Exim 4.80) (envelope-from ) id 1Uzv1h-0004au-Pq for pgsql-performance@postgresql.org; Thu, 18 Jul 2013 20:42:18 +0000 X-AuditID: 0a02cb20-b7f216d000002f75-56-51e85320317b Received: from sswchi5pcas2.peak6.net (Unknown_Domain [10.100.13.24]) by smtp2.peak6.com (Symantec Messaging Gateway) with SMTP id 2C.7C.12149.02358E15; Thu, 18 Jul 2013 15:42:09 -0500 (CDT) Received: from [10.10.201.64] (10.10.201.64) by sswchi5pcas2.peak6.net (10.100.13.25) with Microsoft SMTP Server (TLS) id 14.3.123.3; Thu, 18 Jul 2013 15:42:08 -0500 Message-ID: <51E85320.8080708@optionshouse.com> Date: Thu, 18 Jul 2013 15:42:08 -0500 From: Shaun Thomas Reply-To: Organization: Peak6 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130623 Thunderbird/17.0.7 MIME-Version: 1.0 To: Greg Smith CC: Josh Berkus , Subject: Re: PostgreSQL settings for running on an SSD drive References: <51C35E6C.1090705@consistentstate.com> <51C36256.6040502@optionshouse.com> <51C366CE.10206@agliodbs.com> <51E74D31.2010601@2ndQuadrant.com> In-Reply-To: <51E74D31.2010601@2ndQuadrant.com> Content-Type: text/plain; charset="UTF-8"; format=flowed content-transfer-encoding: 7bit X-Originating-IP: [10.10.201.64] X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprJKsWRmVeSWpSXmKPExsXClcIroasY/CLQYPYnLotbfU9ZLD5sm8Ru cX3mOWYHZo/fdw8yedy/tZ7Z48K+aewBzFENjDaJeXn5JYklqQopqcXJtkr+BSWZ+XnFHvml xakKLpnFyTmJmbmpRUoKmSm2SsZKCgU5icmpual5JbZKiQUFqXkpSnZcChjABqgsM08hNS85 PyUzL91WyTPYX9fCwtRS11DJLh4ZJHSyZDTO/spasEyo4t6rh+wNjIf5uhg5OCQETCS+zNbr YuQEMsUkLtxbz9bFyMUhJHCAUWLbvKWMEM5KRokLxw+zgVTxCuhLPL7TzApiswioSvyavI4F xGYT0JWY1L8CrEZIQEWi7+wNJhCbX0BYYt+HJmaQZaICYRJXfqtCjBGUODnzCVirCNCYta8f g5UzC7hLPHv9hhnEFhZwk9g4/wMzxA09TBL/Zt9gB0lwAt3w9/p9qAYLicVvDrJD2PIS29/O YYa4QVViRfNENojPFCT+X3nHNIFRZBaS3bOQtM9C0r6AkXkVo3hxWWJyRqZZQXFuSYGRXkFq YraZXl5qySZGUPwznVbYwbi5x+oQowAHoxIP7wemF4FCrIllxZW5hxglOJiVRHjX/nweKMSb klhZlVqUH19UmpNafIjRBxhmE5mlRJPzgakpryTe0NjUwNTS1NDU3NTQCIewkjjvPqZlgUIC 6cDkk52aWpBaBDOOiYNTqoFRNy3g9tauefv7vq27Y2zzi/l+1quw6tDd1SVdpsndv2IlRIIW l1w9NGfehaYzjOZNKXKhK/SXuASqmvhbL2RmOiD2Wtm+V2nfD+FvMn2TZ1Q+ETIOK5wqf3TH AqbisNPHspYI+/3+aqm41n/O2uVdHInZNpKPJsxJOTdD5/WL3MVr+pTNvjQrsRRnJBpqMRcV JwIA+mW2WiwDAAA= X-Pg-Spam-Score: -1.9 (-) List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgsql-performance Precedence: bulk Sender: pgsql-performance-owner@postgresql.org On 07/17/2013 09:04 PM, Greg Smith wrote: > I'm working on a completely replacement of that guide, one that actually > gives out a full set of advice. Right now I'm between their product > cycles, I'm expecting new hardware again here soon. Me too. It's interesting that they seem to be focusing more on using the cards as a caching layer instead of a directly readable device. I still need to test that use case. > This involves a modified PostgreSQL though. It's not for the > squeamish or for a production system. I'd volunteer, but we're actually using EDB. Unless you can convince EDB to supply similar binaries as you have, I can't get equivalent tests. :( > I also don't think random_page_cost = seq_page_cost is the best setting, > even though it did work out for Shaun. The hardware is fast enough that > you can make a lot of mistakes without really paying for them though, > and any query tuning like that is going to be workload dependent. It's > impossible to make a single recommendation here. Very, very true. I actually prefer using different values, and before 9.1, we had random at 1.5, and sequential at 1.0. Some of our query plans were being adversely affected, and didn't go back to normal until I reduced random cost to 1.0. I can't explain why that would happen, but it's not too surprising given that we jumped from 8.2 to 9.1. Since we're mainly focused on stability right now, getting the old performance back was the main concern. I haven't revisited the setting since that initial upgrade and correction, so it's hard to know what the "right" setting really is. Like you said, there is a lot of room for tuning based on system usage. > There are a good number of single and dual socket Intel systems where > "1/2 the speed of memory" is about right. There are systems where > the ratio will be closer to 1:1 or 1:4 though. Doh, yeah. It also depends on the FusionIO generation and tier you're working with. Some of their newer/bigger cards with more controller chips can (purportedly) push upwards of 6GB/s, which is a tad faster than the 800MB/s (measured) of our ancient gen-1 cards. Too many variables. -_- -- Shaun Thomas OptionsHouse | 141 W. Jackson Blvd. | Suite 500 | Chicago IL, 60604 312-676-8870 sthomas@optionshouse.com ______________________________________________ See http://www.peak6.com/email_disclaimer/ for terms and conditions related to this email -- Sent via pgsql-performance mailing list (pgsql-performance@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-performance