Re: Lockless queue of waiters in LWLock
| От | Andres Freund |
|---|---|
| Тема | Re: Lockless queue of waiters in LWLock |
| Дата | |
| Msg-id | 20221105193240.7vmjirvrlj5qse5h@awork3.anarazel.de обсуждение исходный текст |
| Ответ на | Re: Lockless queue of waiters in LWLock (Alexander Korotkov <aekorotkov@gmail.com>) |
| Ответы |
Re: Lockless queue of waiters in LWLock
|
| Список | pgsql-hackers |
Hi, On 2022-11-05 12:05:43 +0300, Alexander Korotkov wrote: > On Fri, Nov 4, 2022 at 10:07 PM Andres Freund <andres@anarazel.de> wrote: > > The use of cmpxchg vs lock inc/lock add/xadd is one of the major reasons why > > lwlocks are slower than a spinlock (but obviously are better under contention > > nonetheless). > > > > > > I have a benchmark program that starts a thread for each physical core and > > just increments a counter on an atomic value. > > Thank you for this insight! I didn't know xadd is much cheaper than > cmpxchg unless there are retries. The magnitude of the effect is somewhat surprising, I agree. Some difference makes sense to me, but... > I also wonder how cmpxchg becomes faster with higher concurrency. If you're referring to the leading 32/64 that's not concurrency, that's 32/64bit values. Sorry for not being clearer on that. Greetings, Andres Freund
В списке pgsql-hackers по дате отправления: