Re: random_page_cost vs ssd?

From: Scott Carey <scott(at)richrelevance(dot)com>
To: Grzegorz Jaśkiewicz <gryzman(at)gmail(dot)com>, Jeff <threshar(at)torgo(dot)978(dot)org>
Cc: "pgsql-performance(at)postgresql(dot)org" <pgsql-performance(at)postgresql(dot)org>
Subject: Re: random_page_cost vs ssd?
Date: 2009-03-11 17:06:53
Message-ID: BDFBB77C9E07BE4A984DAAE981D19F961AE959DB8C@EXVMBX018-1.exch018.msoutlookonline.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

At 8k block size, you can do more iops sequential than random.
A X25-M I was just playing with will do about 16K iops reads at 8k block size with 32 concurrent threads.
That is about 128MB/sec. Sequential reads will do 250MB/sec. At 16k block size it does about 220MB/sec and at 32k block size there is no penalty for random access. All tests start with 'cat 3 > /proc/sys/vm/drop_caches', and work on a 32GB data set (40% of the disk).

Also, over time the actual location of the physical blocks will not map to the LBAs requested. This means that internally a sequential read is actually a random read, and that a random write is actually a sequential write. That is how the SSD's with good write performance are doing it, with advanced LBA to physical dynamic mapping.

As for the random_page_cost I'd make sure to set it virtually the same as the sequential cost. Perhaps 1 for sequential and 1.1 for random. One may also want to lower both of those values equally to be somewhat closer to the cpu costs. You want the planner to generally conserve total block access count and not favor streaming reads too much over random reads.

________________________________________
From: pgsql-performance-owner(at)postgresql(dot)org [pgsql-performance-owner(at)postgresql(dot)org] On Behalf Of Grzegorz Jaśkiewicz [gryzman(at)gmail(dot)com]
Sent: Wednesday, March 11, 2009 8:37 AM

On Wed, Mar 11, 2009 at 1:46 PM, Jeff <threshar(at)torgo(dot)978(dot)org> wrote:
> I've got a couple x25-e's in production now and they are working like a
> champ. (In fact, I've got another box being built with all x25s in it. its
> going to smoke!)
>
> Anyway, I was just reading another thread on here and that made me wonder
> about random_page_cost in the world of an ssd where a seek is basically
> free. I haven't tested this yet (I can do that next week), but logically,
> in this scenario wouldn't lowering random_page_cost be ideal or would it not
> really matter in the grand scheme of things?

Just on a side note, random access on SSD is still more expensive than
sequential, because it is designed in banks.
If you don believe me, turn off any software/OS cache , and try random
access timing against seq reads.
This gap is just much much narrower.

--
GJ

--
Sent via pgsql-performance mailing list (pgsql-performance(at)postgresql(dot)org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-performance

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Andrej 2009-03-11 19:04:17 Re: random_page_cost vs ssd?
Previous Message Grzegorz Jaśkiewicz 2009-03-11 15:37:55 Re: random_page_cost vs ssd?