Re: better atomics - v0.6

From: andres(at)anarazel(dot)de (Andres Freund)
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Heikki Linnakangas <hlinnakangas(at)vmware(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>, Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>, Peter Geoghegan <pg(at)heroku(dot)com>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org>, Ants Aasma <ants(at)cybertec(dot)at>
Subject: Re: better atomics - v0.6
Date: 2014-09-24 16:57:56
Message-ID: 20140924165756.GS2521@awork2.anarazel.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 2014-09-24 12:44:09 -0400, Tom Lane wrote:
> Andres Freund <andres(at)2ndquadrant(dot)com> writes:
> > On 2014-09-24 18:55:51 +0300, Heikki Linnakangas wrote:
> >> There doesn't seem to be any hardware implementations of that in the patch.
> >> Is there any architecture that has an instruction or compiler intrinsic for
> >> that?
>
> > You can implement it rather efficiently on ll/sc architectures. But I
> > don't really think it matters. I prefer add_until (I've seen it named
> > saturated add before as well) to live in the atomics code, rather than
> > reimplement it in atomics employing code. I guess you see that
> > differently?
>
> I think the question is more like "what in the world happened to confining
> ourselves to a small set of atomics".

I fail to see why the existance of a wrapper around compare-exchange
(which is one of the primitives we'd agreed upon) runs counter to
the agreement that we'll only rely on a limited number of atomics on the
hardware level?

> I doubt either that this exists
> natively anywhere, or ethat it's so useful that we should expect platforms
> to have efficient implementations.

It's useful for my work to get rid of most LockBufHdr() calls (to
manipulate usagecount locklessly). That's why I added it. We can delay
it till that patch is ready, but I don't really see the benefit.

Greetings,

Andres Freund

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

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Kevin Grittner 2014-09-24 17:25:52 Re: add modulo (%) operator to pgbench
Previous Message Andrew Gierth 2014-09-24 16:44:52 Re: Final Patch for GROUPING SETS