Re: equal() perf tweak - Mailing list pgsql-patches

From Bruce Momjian
Subject Re: equal() perf tweak
Date
Msg-id 200311120304.hAC345j29458@candle.pha.pa.us
Whole thread Raw
In response to Re: equal() perf tweak  (Neil Conway <neilc@samurai.com>)
Responses Re: equal() perf tweak
Re: equal() perf tweak
List pgsql-patches
Is there a TODO here?

---------------------------------------------------------------------------

Neil Conway wrote:
> Tom Lane <tgl@sss.pgh.pa.us> writes:
> > This does suggest that it might be worth making the struct layout be
> >
> >     int NodeTag;
> >     int length;
> >     foo *head;
> >     foo *tail;
> >
> > since this would avoid some padding overhead on a machine where pointers
> > are 8 bytes and need 8-byte alignment.  It probably doesn't help given
> > the current implementation of palloc, but why throw away padding
> > space?
>
> Interesting. I've heard in some shops it is standard policy to order
> the fields in all structs by their descending sizes (making allowances
> for platform-specific variations), so as to reduce padding. Do you
> think it would be worthwhile to systematically make this kind of
> reorganization throughout the backend?
>
> (Of course, we'd need to be weary of code that depends on order of the
> fields in structs, naturally -- such as the "NodeTag must be the first
> field" rule.)
>
> -Neil
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 7: don't forget to increase your free space map settings
>

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

pgsql-patches by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: Win32 patch for Makefile.shlib
Next
From: Neil Conway
Date:
Subject: Re: equal() perf tweak