Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
vitpro2213
searching Neon…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
6 ms
·
1.
▲
Wait-Free Multi-Array Queue
(github.com)
2 points
by
vitpro2213
2mo ago
|
0 comments
2.
▲
Multi-Array Queue: Now Lock-Free
(github.com)
3 points
by
vitpro2213
6mo ago
|
0 comments
3.
▲
by
vitpro2213
2y ago
Will have a look at it, thanks
4.
▲
by
vitpro2213
2y ago
Hi jauntywundrkind, just to make sure we have the same understanding: The smaller arrays are not "left behind" in the garbage sense - the queue will use them again and again in the next rounds. See simulator. Re-use, not Re-cycle
5.
▲
by
vitpro2213
2y ago
With ConcurrentMultiArrayQueue, there can be N threads INSIDE of the program code of the Queue, running or preempted (for a not predictable time) and you cannot control it.
6.
▲
by
vitpro2213
2y ago
Removing anything in non-blocking structures is problematic, see e.g. the referenced lecture of Professor Scott. You never know how many concurrent threads still "are" on the place you wish to remove. You would have to deal with s
7.
▲
by
vitpro2213
2y ago
Implementing Queue would mean also implementing Collection and Iterable, and this would bring pains and ugliness, especially with the concurrent code. Look e.g. at the disclaimers at the size method of java.util.concurrent.ConcurrentLinkedQ
8.
▲
by
vitpro2213
2y ago
Thanks, will look at it. I actually thought the same: Given e.g. the complex structures published in ACM papers, it would be a surprise if MultiArrayQueue would be a completely new discovery. We are not in the pioneer years of 1960's a
9.
▲
by
vitpro2213
2y ago
If you discard the old array (and allocate a bigger one before), you must also copy all enqueued material. Also this one enqueue will be mega expensive - a clear "fat tail" in the latency histogram. In MultiArrayQueue you keep all
10.
▲
Multi-Array Queue
(github.com)
104 points
by
vitpro2213
2y ago
|
32 comments