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


Groups > comp.programming.threads > #4261 > unrolled thread

Lockfree bounded LIFO stack and FIFO queue is here..

Started bySky89 <Sky89@sky68.com>
First post2018-05-12 19:33 -0400
Last post2018-05-12 19:49 -0400
Articles 2 — 1 participant

Back to article view | Back to comp.programming.threads


Contents

  Lockfree bounded LIFO stack and FIFO queue is here.. Sky89 <Sky89@sky68.com> - 2018-05-12 19:33 -0400
    Re: Lockfree bounded LIFO stack and FIFO queue is here.. Sky89 <Sky89@sky68.com> - 2018-05-12 19:49 -0400

#4261 — Lockfree bounded LIFO stack and FIFO queue is here..

FromSky89 <Sky89@sky68.com>
Date2018-05-12 19:33 -0400
SubjectLockfree bounded LIFO stack and FIFO queue is here..
Message-ID<pd7fi8$1sg$2@dont-email.me>
Hello,


Lockfree bounded LIFO stack and FIFO queue is here..

Description:

A fast Lockfree FIFO queue and a fast Lockfree LIFO Stack, they are 
bounded, the Lockfree FIFO queue was correct and enhanced by Amine 
Moulay Ramdane.

Read the following paper:

https://arxiv.org/pdf/1311.3200.pdf

This paper suggests a simple solution to this problem. We show that, for 
a large class of lock- free algorithms, under scheduling conditions 
which approximate those found in commercial hardware architectures, 
lock-free algorithms behave as if they are wait-free. In other words, 
programmers can keep on designing simple lock-free algorithms instead of 
complex wait-free ones, and in practice, they will get wait-free 
progress. It says on the Analysis of the Class SCU(q, s):

"Given an algorithm in SCU(q, s) on k correct processes under a uniform 
stochastic scheduler, the system latency is O(q + s*sqrt(k), and the 
individual latency is O(k(q + s*sqrt(k))."

So i think lockfree algorithms are very interesting to work with.

The size of the queue must be passed to the constructor and it must be 
the power of 2.


You can download them from:

https://sites.google.com/site/aminer68/lockfree-bounded-stack-and-queue


Language: FPC Pascal v2.2.0+ / Delphi 7+: http://www.freepascal.org/

Operating Systems: Windows, Mac OSX , Linux on (x86)...

Required FPC switches: -O3 -Sd

-Sd for delphi mode....

Required Delphi switches: -$H+

{$DEFINE CPU32} and {$DEFINE Windows32} for 32 bit systems

{$DEFINE CPU64} and {$DEFINE Windows64} for 64 bit systems



Thank you,
Amine Moulay Ramdane.


[toc] | [next] | [standalone]


#4262

FromSky89 <Sky89@sky68.com>
Date2018-05-12 19:49 -0400
Message-ID<pd7gfg$1sg$16@dont-email.me>
In reply to#4261
On 5/12/2018 7:33 PM, Sky89 wrote:
> Hello,
> 
> 
> Lockfree bounded LIFO stack and FIFO queue is here..
> 
> Description:
> 
> A fast Lockfree FIFO queue and a fast Lockfree LIFO Stack, they are 
> bounded, the Lockfree FIFO queue was correct and enhanced by Amine 
> Moulay Ramdane.

I correct a typo:

I mean: the Lockfree FIFO queue was corrected and enhanced
         by Amine Moulay Ramdane.

> 
> Read the following paper:
> 
> https://arxiv.org/pdf/1311.3200.pdf
> 
> This paper suggests a simple solution to this problem. We show that, for 
> a large class of lock- free algorithms, under scheduling conditions 
> which approximate those found in commercial hardware architectures, 
> lock-free algorithms behave as if they are wait-free. In other words, 
> programmers can keep on designing simple lock-free algorithms instead of 
> complex wait-free ones, and in practice, they will get wait-free 
> progress. It says on the Analysis of the Class SCU(q, s):
> 
> "Given an algorithm in SCU(q, s) on k correct processes under a uniform 
> stochastic scheduler, the system latency is O(q + s*sqrt(k), and the 
> individual latency is O(k(q + s*sqrt(k))."
> 
> So i think lockfree algorithms are very interesting to work with.
> 
> The size of the queue must be passed to the constructor and it must be 
> the power of 2.
> 
> 
> You can download them from:
> 
> https://sites.google.com/site/aminer68/lockfree-bounded-stack-and-queue
> 
> 
> Language: FPC Pascal v2.2.0+ / Delphi 7+: http://www.freepascal.org/
> 
> Operating Systems: Windows, Mac OSX , Linux on (x86)...
> 
> Required FPC switches: -O3 -Sd
> 
> -Sd for delphi mode....
> 
> Required Delphi switches: -$H+
> 
> {$DEFINE CPU32} and {$DEFINE Windows32} for 32 bit systems
> 
> {$DEFINE CPU64} and {$DEFINE Windows64} for 64 bit systems
> 
> 
> 
> Thank you,
> Amine Moulay Ramdane.
> 
> 
> 

[toc] | [prev] | [standalone]


Back to top | Article view | comp.programming.threads


csiph-web