Re: Small catcache optimization

From: Bruce Momjian <bruce(at)momjian(dot)us>
To: Andres Freund <andres(at)2ndquadrant(dot)com>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Small catcache optimization
Date: 2014-02-01 02:30:07
Message-ID: 20140201023007.GC31141@momjian.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, Sep 5, 2013 at 09:13:23PM +0200, Andres Freund wrote:
> Hi,
>
> Heikki's catcache rehashing stuff reminded me that I'd posted an
> optimization to catcache (20121220153555(dot)GH4303(at)awork2(dot)anarazel(dot)de) some
> time back which I didn't have energy to pursue at that point.
>
> I've brushed the patch up a bit and verified it still gives be a
> performance improvement. It's still about 2% in a readonly pgbench on my
> elderly laptop.
>
> There's basically two tricks in the patch:
> 1) Don't always copy the cache's ScanKey to the stack. Instead pass
> an array of arguments around. That get's rid of a good amount of
> memcpy()ing in the common, cached case.
> 2) If we have to memcpy() because we need to pass a ScanKey to
> systable_*, copy only cache->cc_nkey * sizeof(ScanKeyData) instead of
> always copying the maximum size.
>
> I'd be nicer to get rid of the mostly copied HeapKeyTestArg, but I don't
> immediately see how.

Where are we on this?

--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com

+ Everyone has their own god. +

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Greg Stark 2014-02-01 02:32:21 Re: Recovery inconsistencies, standby much larger than primary
Previous Message Bruce Momjian 2014-02-01 02:28:55 Re: Bugfix and new feature for PGXS