Re: Page replacement algorithm in buffer cache

From: Greg Smith <greg(at)2ndQuadrant(dot)com>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Page replacement algorithm in buffer cache
Date: 2013-03-24 13:11:38
Message-ID: 514EFB8A.80306@2ndQuadrant.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 3/22/13 8:45 AM, Ants Aasma wrote:
> However, I think the main issue isn't finding new algorithms that are
> better in some specific circumstances. The hard part is figuring out
> whether their performance is better in general.

Right. The current page replacement method works as expected. Many
frequently accessed pages accumulate a usage count of 5 before the clock
sweep hits them. Pages that are accessed once and not again before the
clock sweep are evicted. There are several theoretically better ways to
approach this. Anyone who hasn't already been working on this for a few
years is very unlikely to come up with a brand new idea, one that hasn't
already been tested in the academic research.

But the real blocker here isn't ideas, it's creating benchmark workloads
to validate any change. Right now I see the most promising work that
could lead toward the "performance farm" idea as all of the Jenkins
based testing that's been going on recently. Craig Ringer has using
that for 2ndQuadrant work here, Peter Eisentraut has been working with
it:
http://petereisentraut.blogspot.com/2013/01/postgresql-and-jenkins.html
and the PostGIS project uses it too. There's some good momentum brewing
there.

When we have regular performance testing with a mix of workloads--I have
about 10 in mind to start--at that point we could start the testing
performance changes to the buffer replacement. Until then this whole
area is hard to touch usefully. You have to assume that any tuning you
do for one type of workload might accidentally slow another. Starting
with a lot of baseline workloads is the only way to move usefully
forward when facing that problem.

--
Greg Smith 2ndQuadrant US greg(at)2ndQuadrant(dot)com Baltimore, MD
PostgreSQL Training, Services, and 24x7 Support www.2ndQuadrant.com

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Greg Stark 2013-03-24 13:29:55 Re: Limiting setting of hint bits by read-only queries; vacuum_delay
Previous Message Ants Aasma 2013-03-24 13:10:01 Re: Page replacement algorithm in buffer cache