Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Here is my new variants of Scalable RWLocks that are powerful..

7 views
Skip to first unread message

amin...@gmail.com

unread,
Aug 7, 2019, 2:18:16 PM8/7/19
to
Hello,


Here is my new variants of Scalable RWLocks that are powerful..


Author: Amine Moulay Ramdane

Description:

A fast, and scalable and starvation-free and fair and lightweight Multiple-Readers-Exclusive-Writer Lock called LW_RWLockX, the scalable LW_RWLockX does spin-wait, and also a fast and scalable and starvation-free and fair Multiple-Readers-Exclusive-Writer Lock called RWLockX, the scalable RWLockX doesn't spin-wait but uses my portable SemaMonitor and portable event objects , so it is energy efficient.

The parameter of the constructors is the size of the array of the readers , so if the size of the array is equal to the number of parallel readers, so it will be scalable, but if the number of readers are greater than the size of the array , you will start to have contention, please look at the source code of my scalable algorithms to understand.


I have used my following hash function to make my new variants of RWLocks scalable:

---

function DJB2aHash(key:int64):uint64;
var
i: integer;
key1:uint64;

begin
Result := 5381;
for i := 1 to 8 do
begin
key1:=(key shr ((i-1)*8)) and $00000000000000ff;
Result := ((Result shl 5) xor Result) xor key1;
end;
end;

---



You can download them from:

https://sites.google.com/site/scalable68/new-variants-of-scalable-rwlocks



Thank you,
Amine Moulay Ramdane.


Bonita Montero

unread,
Aug 7, 2019, 3:29:42 PM8/7/19
to
Hi Amine, I just found that IBM POWER supports not only transactional
memory like Intel RTM since POWER8, but also something analogous like
HLE ("optimistic execution of lock-based applications"); the best part
of TSX. That further spares your lock-free algorithms.
0 new messages