Re: PrivateRefCount (for 8.3) - Mailing list pgsql-hackers

From Tom Lane
Subject Re: PrivateRefCount (for 8.3)
Date
Msg-id 21766.1164653069@sss.pgh.pa.us
Whole thread Raw
In response to PrivateRefCount (for 8.3)  ("Simon Riggs" <simon@2ndquadrant.com>)
Responses Re: PrivateRefCount (for 8.3)
Re: PrivateRefCount (for 8.3)
List pgsql-hackers
"Simon Riggs" <simon@2ndquadrant.com> writes:
> Under specific conditions, I propose to replace the array with a hash
> table, designed with a custom hash function that would map the pins held
> onto just 16 hash buckets.

> Comments?

Most likely a waste of development effort --- have you got any evidence
of a real effect here?  With 200 max_connections the size of the arrays
is still less than 10% of the space occupied by the buffers themselves,
ergo there isn't going to be all that much cache-thrashing compared to
what happens in the buffers themselves.  You're going to be hard pressed
to buy back the overhead of the hashing.

It might be interesting to see whether we could shrink the refcount
entries to int16 or int8.  We'd need some scheme to deal with overflow,
but given that the counts are now backed by ResourceOwner entries, maybe
extra state could be kept in those entries to handle it.
        regards, tom lane


pgsql-hackers by date:

Previous
From: "Jim C. Nasby"
Date:
Subject: Re: [CORE] RC1 blocker issues
Next
From: Tom Lane
Date:
Subject: Re: Configuring BLCKSZ and XLOGSEGSZ (in 8.3)