Int8 on 64-bitThis is a featured page

Int8 is currently a pass-by-ref type: that is, a Datum containing an int8 value is really a pointer to a region of memory that holds the actual integer value. When sizeof(Datum) == 4, this is our only option: an int8 is too big to directly represented in a Datum.

But on 64-bit platforms, we can just store the int8 value in the Datum itself. This would be a significant performance win in some circumstances. The trickiness would be to avoid breaking existing code that uses int8 so that client code won't be aware of the exact representation of the int8 type.

A similar improvement could probably be made to float4 and float8 (we could even make float4 unconditionally pass-by-value, AFAICS).

Interested hackers:
  • Neil Conway


No user avatar
neilc
Latest page update: made by neilc , Jun 23 2006, 12:38 AM EDT (about this update About This Update neilc Edited by neilc

124 words added

view changes

- complete history)
Keyword tags: None (edit keyword tags)
More Info: links to this page

Anonymous  (Get credit for your thread)


There are no threads for this page.  Be the first to start a new thread.