#Paper file extension 2016 series#
In a series of benchmarks on a state-of-the-art 64-way Niagara II multi- core machine, a concurrent version of hopscotch proves to be highly scal-able, delivering in some cases 2 or even 3 times the throughput of today’s most efficient concurrent hash algorithm, Lea’s ConcurrentHashMap from.
The resulting algorithms provide tables with very low synchronization overheads and high cache hit ratios.
The new hopscotch algorithms are based on a novel hopscotch multi-phased probing and displacement technique that has the flavors of chaining, cuckoo hashing, and linear probing, all put together, yet avoids the limitations and overheads of these former approaches. We present a new class of resizable sequential and concur-rent hash map algorithms directed at both uni-processor and multicore machines. ‘Hopscotch Hashing’ by Maurice Herlihy, Nir Shavit, and Moran Tzafrir - CoreCLR source reference
#Paper file extension 2016 code#
In this paper, we describe a new variant of redblack trees that meets many of the original design goals and leads to substantially simpler code for insert/delete, less than one-fourth as much code as in implementations in common use. However, many of these implementations have sacrificed some of the original design goals (primarily in order to develop an effective implementation of the delete operation, which was incompletely specified in the original paper), so a new look is worthwhile. Red-black trees are described in standard textbooks and are the underlying data structure for symbol-table implementations within C++, Java, Python, BSD Unix, and many other modern systems. The red-black tree model for implementing balanced search trees, introduced by Guibas and Sedgewick thirty years ago, is now found throughout our computational infrastructure. ‘Left Leaning Red Black trees’ by Robert Sedgewick - CoreCLR source reference Note: I’ve deliberately left out links to specifications, standards documents or RFC’s, instead concentrating only on Research Papers. If I’ve missed any that you know of, please leave a comment below! NET language, runtime and compiler source code. However, instead of looking at Java and the JVM, I’ll be looking at references to research papers in the. This post is completely inspired by (or ‘copied from’ depending on your point of view) a recent post titled JAVA PAPERS (also see the HackerNews discussion).