Re: Inlining comparators as a performance optimisation - Mailing list pgsql-hackers

From Simon Riggs
Subject Re: Inlining comparators as a performance optimisation
Date
Msg-id CA+U5nMJ0FdZQzK4OK8ot+gBu4aCO0gik--6FfmwK5o97tj_=XA@mail.gmail.com
Whole thread Raw
In response to Re: Inlining comparators as a performance optimisation  (Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>)
Responses Re: Inlining comparators as a performance optimisation
Re: Inlining comparators as a performance optimisation
List pgsql-hackers
On Wed, Sep 21, 2011 at 7:51 AM, Heikki Linnakangas
<heikki.linnakangas@enterprisedb.com> wrote:
> On 21.09.2011 02:53, Peter Geoghegan wrote:
>>
>> C stdlib quick-sort time elapsed: 2.092451 seconds
>> Inline quick-sort time elapsed: 1.587651 seconds
>>
>> Does *that* look attractive to you?
>
> Not really, to be honest. That's a 25% speedup in pure qsorting speed. How
> much of a gain in a real query do you expect to get from that, in the best
> case? There's so many other sources of overhead that I'm afraid this will be
> lost in the noise. If you find a query that spends, say, 50% of its time in
> qsort(), you will only get a 12.5% speedup on that query. And even 50% is
> really pushing it - I challenge you to find a query that spends any
> significant amount of time qsorting integers.

How about almost every primary index creation?

Don't really see a reason for the negativity here. If you use that
argument no performance gain is worth it because all workloads are
mixed.

This is a marvellous win, a huge gain from a small, isolated and
easily tested change. By far the smallest amount of additional code to
sorting we will have added and yet one of the best gains.

--
 Simon Riggs                   http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services


pgsql-hackers by date:

Previous
From: Simon Riggs
Date:
Subject: Re: Inlining comparators as a performance optimisation
Next
From: Heikki Linnakangas
Date:
Subject: Re: Inlining comparators as a performance optimisation