Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.programming.threads > #2326

Re: A new node based scalable and fair and starvation-free lock is coming...

From "Chris M. Thomasson" <no@spam.invalid>
Newsgroups comp.programming.threads, comp.programming
Subject Re: A new node based scalable and fair and starvation-free lock is coming...
Date 2014-05-11 18:13 -0700
Organization Aioe.org NNTP Server
Message-ID <lkp782$kb5$1@speranza.aioe.org> (permalink)
References <lkp138$s1h$1@news.albasani.net>

Cross-posted to 2 groups.

Show all headers | View raw


"aminer"  wrote in message news:lkp138$s1h$1@news.albasani.net... 

> Hello,
> A new node based fair and starvation-free lock is coming...
> I have invented this lock today and i will post it today or tomorrow...
[...]

Starvation-free node based queue. Humm... I am interested in
the algorithm!  :^)

Can you please try to run the algorithm against a verification
tool like Relacy and/or ThreadSanitizer!

If I like it, I might code it up in C++ and run it through
Relacy myself.

;^)


Also, have you read up on any of the hybrid versions?

Each node contains an array. So, you can get unbounded
access, and still get decent performance from using the
per-node array...


Also, using spinlocks in user code is a bit sketchy...

All of the calls to Sleep(0) make be a bit uneasy to say
the least.

FWIW, this is why I use a set of eventcounts to handle any
conditional waiting. Therefore, I do not need to spin. BTW,
using spinlocks in user land code can be a bit sketchy...

You can use an eventcount to get rid of any nasty spin-
waiting.

Back to comp.programming.threads | Previous | Next — Previous in thread | Find similar | Unroll thread


Thread

A new node based scalable and fair and starvation-free lock is coming... aminer <aminer@toto.net> - 2014-05-11 19:28 -0700
  Re: A new node based scalable and fair and starvation-free lock is coming... "Chris M. Thomasson" <no@spam.invalid> - 2014-05-11 18:13 -0700

csiph-web