English
Related papers

Related papers: Concurrent Hash Tables: Fast and General?(!)

200 papers

Perfect hash functions can potentially be used to compress data in connection with a variety of data management tasks. Though there has been considerable work on how to construct good perfect hash functions, there is a gap between theory…

Data Structures and Algorithms · Computer Science 2007-05-23 Fabiano C. Botelho , Rasmus Pagh , Nivio Ziviani

Linked lists have long served as a valuable teaching tool in programming. However, the question arises: Are they truly practical for everyday program use? In most cases, it appears that array-based data structures offer distinct advantages,…

Data Structures and Algorithms · Computer Science 2024-08-29 Benoît Sonntag , Dominique Colnet

While separate chaining is a common strategy for resolving collisions in a hash table taught in most textbooks, compact hashing is a less common technique for saving space when hashing integers whose domain is relatively small with respect…

Data Structures and Algorithms · Computer Science 2019-05-02 Dominik Köppl

Consistent hashing is used in distributed systems and networking applications to spread data evenly and efficiently across a cluster of nodes. In this paper, we present MementoHash, a novel consistent hashing algorithm that eliminates known…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-02-28 Massimo Coluzzi , Amos Brocco , Alessandro Antonucci , Tiziano Leidi

Large-scale, parallel clusters composed of commodity processors are increasingly available, enabling the use of vast processing capabilities and distributed RAM to solve hard search problems. We investigate Hash-Distributed A* (HDA*), a…

Artificial Intelligence · Computer Science 2015-03-20 Akihiro Kishimoto , Alex Fukunaga , Adi Botea

As the data size in Machine Learning fields grows exponentially, it is inevitable to accelerate the computation by utilizing the ever-growing large number of available cores provided by high-performance computing hardware. However, existing…

Machine Learning · Computer Science 2021-04-23 Kun Li , Liang Yuan , Yunquan Zhang , Gongwei Chen

This paper presents a family of algorithms for fast subset filtering within ordered sets of integers representing composite keys. Applications include significant acceleration of (ad-hoc) analytic queries against a data warehouse without…

Databases · Computer Science 2015-02-26 Alexander Russakovsky

Supervised hashing methods are widely-used for nearest neighbor search in computer vision applications. Most state-of-the-art supervised hashing approaches employ batch-learners. Unfortunately, batch-learning strategies can be inefficient…

Computer Vision and Pattern Recognition · Computer Science 2015-11-11 Fatih Cakir , Sarah Adel Bargal , Stan Sclaroff

The lock-free, ordered, linked list is an important, standard example of a concurrent data structure. An obvious, practical drawback of textbook implementations is that failed compare-and-swap (CAS) operations lead to retraversal of the…

Data Structures and Algorithms · Computer Science 2020-11-02 Jesper Larsson Träff , Manuel Pöter

Consensus is an often occurring problem in concurrent and distributed programming. We present a programming language with simple semantics and build-in support for consensus in the form of communicating transactions. We motivate the need…

Programming Languages · Computer Science 2013-05-08 Carlo Spaccasassi , Vasileios Koutavas

Garbage Collection in concurrent data structures, especially lock-free ones, pose multiple design and consistency challenges. In this instance, we consider the case of concurrent sets. A set is a collection of elements, where the elements…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-07-24 Jonathan Marbaniang , Shekhar Bhandakkar , Sathya Peri

Similarity search is critical for many database applications, including the increasingly popular online services for Content-Based Multimedia Retrieval (CBMR). These services, which include image search engines, must handle an overwhelming…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-10-16 Thiago S. F. X. Teixeira , George Teodoro , Eduardo Valle , Joel H. Saltz

Randomized algorithms are often enjoyed for their simplicity, but the hash functions employed to yield the desired probabilistic guarantees are often too complicated to be practical. Here we survey recent results on how simple hashing…

Data Structures and Algorithms · Computer Science 2017-01-04 Mikkel Thorup

Hashmap is a fundamental data structure in computer science. There has been extensive research on constructing hashmaps that minimize the number of collisions leading to efficient lookup query time. Recently, the data-dependant approaches,…

Data Structures and Algorithms · Computer Science 2024-04-16 Abolfazl Asudeh , Nima Shahbazi , Stavros Sintos

Distributed locking mechanisms are fundamental to ensuring data consistency and integrity in distributed systems. This paper presents a comprehensive analysis of distributed locking algorithms, focusing on their performance characteristics…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-04-07 Andre Rodriguez , William Osborn

The \emph{Order-Maintenance} (OM) data structure maintains a total order list of items for insertions, deletions, and comparisons. As a basic data structure, OM has many applications, such as maintaining the topological order, core numbers,…

Data Structures and Algorithms · Computer Science 2024-10-15 Bin Guo , Emil Sekerinski

We present fast strongly universal string hashing families: they can process data at a rate of 0.2 CPU cycle per byte. Maybe surprisingly, we find that these families---though they require a large buffer of random numbers---are often faster…

Databases · Computer Science 2018-09-24 Owen Kaser , Daniel Lemire

A number of concurrent, relaxed priority queues have recently been proposed and implemented. Results are commonly reported for a throughput benchmark that uses a uniform distribution of keys drawn from a large integer range, and mostly for…

Data Structures and Algorithms · Computer Science 2016-03-17 Jakob Gruber , Jesper Larsson Träff , Martin Wimmer

Continual learning could shift the machine learning paradigm from data centric to model centric. A continual learning model needs to scale efficiently to handle semantically different datasets, while avoiding unnecessary growth. We…

Machine Learning · Computer Science 2020-10-13 Ahmad Berjaoui

We consider the dictionary problem in external memory and improve the update time of the well-known buffer tree by roughly a logarithmic factor. For any \lambda >= max {lg lg n, log_{M/B} (n/B)}, we can support updates in time O(\lambda /…

Data Structures and Algorithms · Computer Science 2011-04-15 John Iacono , Mihai Pǎtraşcu