Hello again my dear FreePascal and Lazarus community..
Question:
Amine, and what about your scalable RWLock that you have implemented ?
here it is:
http://pages.videotron.com/aminer/rwlock1.html
You have to understand something, if
you take a look at OmniThread from Gabr that was implemented for the
Delphi community , here it is:
http://otl.17slon.com/
If you download the zipfile of OmniThread
and you take a look at the lockfree RWLock that Gabr wrote and that is
called TMREW, you will notice that this RWLock is using a CAS on a
global variable, hence this is expensive , so if
you want TMREW to scale, the time of the RWLock's READ section must be
bigger that the time to
execute a those CASes on a global variable with cache misses, and that's
not good, so this
is why i have implemented my scalable RWLock that scales even if the
RWLOCK's READ section is small.
You can dowload my scalable RWLock from:
http://pages.videotron.com/aminer/rwlock1.html
Thank you,
Amine Moulay Ramdane,.