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


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

Finally my conclusion

Started byaminer <aminer@toto.net>
First post2014-04-28 12:47 -0700
Last post2014-04-29 12:49 -0700
Articles 2 — 2 participants

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


Contents

  Finally my conclusion aminer <aminer@toto.net> - 2014-04-28 12:47 -0700
    Re: Finally my conclusion "Chris M. Thomasson" <no@spam.invalid> - 2014-04-29 12:49 -0700

#2292 — Finally my conclusion

Fromaminer <aminer@toto.net>
Date2014-04-28 12:47 -0700
SubjectFinally my conclusion
Message-ID<ljm0n9$7pu$1@news.albasani.net>
Hello,

I have spook about the following algorithm of Chriss Thomasson:

https://groups.google.com/forum/#!topic/lock-free/acjQ3-89abE/discussion

and i have said that it is the best of its kind, but that's not
true, why ? read this, i have said the following:


"Since the Chriss Thomasson algorithm is more parrallelized on the 
producer() side so the "c.state = state" will be wrote in parallel by 
many threads to the local caches or write-back caches,  so this will 
higher the throughput of the push() side, but even if the push() side is 
faster , notice that under contention the throughtput is limited by the 
throughput of the pop() side."

and read also this:

"but notice with me that in my concurrent FIFO queue that uses the two 
lock algorithm  since almost all the variables that generate data 
movement between the caches or between the memory system and the caches 
are located inside the critial section, that means they will generate 
less contention than the Chriss Thomasson algorithm, hence the two locks 
algorithm is more efficient than the Chriss Thomasson algorithm cause it 
lowers the contention efficiently, this is why even if my two locks 
algorithm uses more variables (4 in total) that generate data movement 
between caches or between the memory and the caches than the Chriss 
Thomasson algorithm that is using only 3 variables, this why the two 
locks algorithm is scoring the same throughput on the pop() side as the 
Chriss Thomasson algorithm , that means that the two locks algorithm is 
more efficient when it comes to "contention" than the Chriss Thomasson 
algorithm."


Other than that my two locks algorithm is starvation-free, so
i think the Chriss Thomasson algorithm is not the best, my two locks
algorithm is also very efficient and performant.

You see? the two locks algorithm is also amazing !


You can download my two locks concurrent FIFO queue that is 
starvation-free from:


http://pages.videotron.com/aminer/



Thank you,
Amine Moulay Ramdane.

[toc] | [next] | [standalone]


#2299

From"Chris M. Thomasson" <no@spam.invalid>
Date2014-04-29 12:49 -0700
Message-ID<ljovo0$md4$1@speranza.aioe.org>
In reply to#2292
> "aminer"  wrote in message news:ljm0n9$7pu$1@news.albasani.net... [...]
> Other than that my two locks algorithm is starvation-free, so
> i think the Chriss Thomasson algorithm is not the best, my two locks
> algorithm is also very efficient and performant.
> [...]

Ummmmm...

wrt the "Two Lock" algorithm, well if it is _anything_ like:

https://www.cs.rochester.edu/research/synchronization/pseudocode/queues.html


PLEASE, stop and ponder... Yes the example I gave you is dynamic.

However, it is rather trivial to convert this into a bounded array
based system...


I already benched against this thing and other array based analogs of
the two lock algo. My queue completely decimates it. So much so that
I had to just stop it from executing because it took to long to even begin
to compare to the bakery algorithm I came up with.


Before you go completely _crazy_ animer, I tested it against an array
based analog of the two lock algo. The bakery algo still beats the living
sh%$ out of it.

BTW, Dmitry Vyukov's queue also __completely__ destroys any two lock
algorithm I throw at it.


So, what the %fu%cking^& hell are you rambling about?!

You have to learn how to calm down damn it!

And so do I...

;^/



BTW, There is only one `s' in Chris!



Serenity Now; Serenity Now!!

:^o




Killfile?

:^o 

[toc] | [prev] | [standalone]


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


csiph-web