We have to be smart, i think if we compare mesh or network of SPSCs
queues to make a scalable MPMC queue with my scalable MPMC FIFO queue,
it is as we compare oranges with apples, because strict FIFO order
can be broken in the mesh or network of SPSCs queues to make a scalable
MPMC queue. So we have to not make the comparison.
So we have to compare like apples with apples, so we have to compare
with other scalable FIFO queues, here they are:
Look at This PhD paper of a Scalable Concurrent Priority Queue
Algorithms:
http://people.csail.mit.edu/shanir/publications/SZ-priority.pdf
This queue is "not" bound, and i think it uses a mechanism such
as an elimination array..
And look at this one of a PhD paper called: Using Elimination to
Implement Scalable and Lock-Free FIFO Queues :
http://www.cs.tau.ac.il/~shanir/nir-pubs-web/Papers/SPAA2005.pdf
I think it is not good or perfect because it uses an elimination
array, so when there is no contention or no elimination it doesn't
scale.
But my fully scalable FIFO queue that i have invented has completely
"revolutionized" computer science, because it is the "perfect"
scalable FIFO queue that is fully scalable even if there is no
contention, I have implemented three versions of my scalable FIFO queue,
here they are:
1- A fully scalable FIFO queue that is bound and that is not blocking on
the producer side and that is blocking on the consumer side.
2- A fully scalable FIFO queue that is unbound and that is not blocking
on the producer side and that is blocking on the consumer side.
3- A fully scalable FIFO queue that is bound and that is blocking on the
producer side and that is blocking on the consumer side.
And i have also invented a fully scalable Threadpool.
I will sell them to Embarcadero and to other software companies such as
Microsoft and Google etc.
Also i will sell them to CAE here, because they need to scale more to
many many cores, read here to know about this company:
https://www.cray.com/blog/extreme-scaling-in-cae-applications/
Here is CAE company:
http://www.cae.com/
And i have also invented a fully scalable reference counting with
efficient support for weak references, here it is:
https://sites.google.com/site/aminer68/scalable-reference-counting-with-efficient-support-for-weak-references