Tom Lane <[EMAIL PROTECTED]> 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.)


---------------------------(end of broadcast)---------------------------
TIP 7: don't forget to increase your free space map settings

Reply via email to