Re: [WIP Patch] Using 128-bit integers for sum, avg and statistics aggregates

From: Heikki Linnakangas <hlinnakangas(at)vmware(dot)com>
To: Andres Freund <andres(at)2ndquadrant(dot)com>, Arthur Silva <arthurprs(at)gmail(dot)com>
Cc: Andreas Karlsson <andreas(at)proxel(dot)se>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: [WIP Patch] Using 128-bit integers for sum, avg and statistics aggregates
Date: 2014-10-28 13:54:30
Message-ID: 544FA016.9040304@vmware.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 10/28/2014 03:24 PM, Andres Freund wrote:
> On 2014-10-28 11:05:11 -0200, Arthur Silva wrote:
>> On Sat, Oct 25, 2014 at 12:38 PM, Andreas Karlsson <andreas(at)proxel(dot)se>
>> As far as I'm aware int128 types are supported on every major compiler when
>> compiling for 64bit platforms. Right?
>
> Depends on what you call major. IIRC some not that old msvc versions
> don't for example. Also, there's a couple 32 platforms with int128 bit
> support. So I think we should just add a configure test defining the
> type + a feature macro.

It wouldn't be too hard to just do:

struct {
int64 high_bits;
uint64 low_bits;
} pg_int128;

and some macros for the + - etc. operators. It might be less work than
trying to deal with the portability issues of a native C datatype for this.

- Heikki

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Stephen Frost 2014-10-28 13:55:25 Re: superuser() shortcuts
Previous Message Andrew Dunstan 2014-10-28 13:49:29 Re: jsonb generator functions