Forums before death by AOL, social media and spammers... "We can't have nice things"
|    soc.culture.quebec    |    More than just pale imitations of France    |    108,436 messages    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
|    Message 107,666 of 108,436    |
|    World90 to All    |
|    My inventions of a new variants of Scala    |
|    09 Mar 21 13:30:01    |
      From: toto@toto.toto              Hello...                     My inventions of a new variants of Scalable RWLocks that are       starvation-free and fair were updated to version 5.0..              I think they are stable now.              Author: Amine Moulay Ramdane              Description:              Here is my inventions of 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 of 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.              And i have included two units that are called MREWEx and       LighweightMREWEx that include TMultiReadExclusiveWriteSynchronizer and       TLightweightMREW classes that are scalable and stavation-free and fair       since they are using my Scalable RWLocks that are starvation-free and       fair, please take a look at them inside the source code of my units.              I have also used my following implementation of FNV1a hash function to       make my new variants of RWLocks scalable (since FNV1a is a hash       algorithm that has good dispersion):              function FNV1aHash(key:int64): UInt64;              var              i: Integer;              key1:uint64;              const              FNV_offset_basis: UInt64 = 14695981039346656037;              FNV_prime: UInt64 = 1099511628211;              begin              //FNV-1a hash              Result := FNV_offset_basis;              for i := 1 to 8 do              begin              key1:=(key shr ((i-1)*8)) and $00000000000000ff;              Result := (Result xor key1) * FNV_prime;              end;              end;                            You can download them from my website here:              https://sites.google.com/site/scalable68/new-variants-of-scalable-rwlocks                            Thank you,       Amine Moulay Ramdane.              --- SoupGate-Win32 v1.05        * Origin: you cannot sedate... all the things you hate (1:229/2)    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
(c) 1994, bbs@darkrealms.ca