pgsql: Use 128-bit math to accelerate some aggregation functions.

From: Andres Freund <andres(at)anarazel(dot)de>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Use 128-bit math to accelerate some aggregation functions.
Date: 2015-03-20 09:30:42
Message-ID: E1YYtGM-0005Vr-NJ@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Use 128-bit math to accelerate some aggregation functions.

On platforms where we support 128bit integers, use them to implement
faster transition functions for sum(int8), avg(int8),
var_*(int2/int4),stdev_*(int2/int4). Where not supported continue to use
numeric as a transition type.

In some synthetic benchmarks this has been shown to provide significant
speedups.

Bumps catversion.

Discussion: 544BB5F1(dot)50709(at)proxel(dot)se
Author: Andreas Karlsson
Reviewed-By: Peter Geoghegan, Petr Jelinek, Andres Freund,
Oskari Saarenmaa, David Rowley

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/959277a4f579da5243968c750069570a58e92b38

Modified Files
--------------
src/backend/utils/adt/numeric.c | 428 ++++++++++++++++++++++++++++++++----
src/include/catalog/catversion.h | 2 +-
src/include/catalog/pg_aggregate.h | 102 ++++-----
src/include/catalog/pg_proc.h | 15 ++
src/include/utils/builtins.h | 7 +
5 files changed, 463 insertions(+), 91 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Bruce Momjian 2015-03-20 12:25:50 Re: pgsql: Allow empty target list in SELECT.
Previous Message Bruce Momjian 2015-03-20 02:38:50 pgsql: docs: mention the optimizer can increase the index usage count