English
Related papers

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

200 papers

We present an approach for efficiently taking snapshots of the state of a collection of CAS objects. Taking a snapshot allows later operations to read the value that each CAS object had at the time the snapshot was taken. Taking a snapshot…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-01-01 Yuanhao Wei , Naama Ben-David , Guy E. Blelloch , Panagiota Fatourou , Eric Ruppert , Yihan Sun

We revisit the problem of building static hash tables on the GPU and design and build three bucketed hash tables that use different probing schemes. Our implementations are lock-free and offer efficient memory access patterns; thus, only…

Data Structures and Algorithms · Computer Science 2022-12-20 Muhammad A. Awad , Saman Ashkiani , Serban D. Porumbescu , Martín Farach-Colton , John D. Owens

Data sketches are approximate succinct summaries of long streams. They are widely used for processing massive amounts of data and answering statistical queries about it in real-time. Existing libraries producing sketches are very fast, but…

Data Structures and Algorithms · Computer Science 2019-12-06 Arik Rinberg , Alexander Spiegelman , Edward Bortnikov , Eshcar Hillel , Idit Keidar , Lee Rhodes , Hadar Serviansky

Dynamic analyses are a standard approach to analyzing and testing concurrent programs. Such techniques observe program traces and analyze them to infer the presence or absence of bugs. At its core, each analysis maintains a partial order…

Programming Languages · Computer Science 2024-04-01 Hünkar Can Tunç , Ameya Prashant Deshmukh , Berk Çirisci , Constantin Enea , Andreas Pavlogiannis

HalftimeHash is a new algorithm for hashing long strings. The goals are few collisions (different inputs that produce identical output hash values) and high performance. Compared to the fastest universal hash functions on long strings…

Data Structures and Algorithms · Computer Science 2021-04-22 Jim Apple

In recent years, information retrieval algorithms have taken center stage for extracting important data in ever larger datasets. Advances in hardware technology have lead to the increasingly wide spread use of flash storage devices. Such…

Databases · Computer Science 2012-11-20 Tyler Clemons , S. M. Faisal , Shirish Tatikonda , Charu Aggarawl , Srinivasan Parthasarathy

Understanding the performance of data-parallel workloads when resource-constrained has significant practical importance but unfortunately has received only limited attention. This paper identifies, quantifies and demonstrates memory…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-02-15 Calin Iorgulescu , Florin Dinu , Aunn Raza , Wajih Ul Hassan , Willy Zwaenepoel

We introduce and address the problem of ad hoc table retrieval: answering a keyword query with a ranked list of tables. This task is not only interesting on its own account, but is also being used as a core component in many other…

Information Retrieval · Computer Science 2018-03-09 Shuo Zhang , Krisztian Balog

Bitmap indexes are widely used for read-intensive analytical workloads because they are clustered and offer efficient reads with a small memory footprint. However, they are notoriously inefficient to update. As analytical applications are…

Databases · Computer Science 2024-10-24 Junchang Wang , Manos Athanassoulis

Hash table search strategies have remained a pivotal area of inquiry in computer science over the past several decades. A prevailing viewpoint asserts that random probing stands as the optimal method for open-addressing hash tables.…

Data Structures and Algorithms · Computer Science 2025-03-24 Qiantong Wang

Subgraph enumeration is a fundamental problem in graph analytics, which aims to find all instances of a given query graph on a large data graph. In this paper, we propose a system called HUGE to efficiently process subgraph enumeration at…

Databases · Computer Science 2021-03-30 Zhengyi Yang , Longbin Lai , Xuemin Lin , Kongzhang Hao , Wenjie Zhang

We present CYCLADES, a general framework for parallelizing stochastic optimization algorithms in a shared memory setting. CYCLADES is asynchronous during shared model updates, and requires no memory locking mechanisms, similar to…

We present an efficient and practical lock-free implementation of a concurrent deque that is disjoint-parallel accessible and uses atomic primitives which are available in modern computer systems. Previously known lock-free algorithms of…

Distributed, Parallel, and Cluster Computing · Computer Science 2007-05-23 Håkan Sundell , Philippas Tsigas

Modern business applications and scientific databases call for inherently dynamic data storage environments. Such environments are characterized by two challenging features: (a) they have little idle system time to devote on physical…

Databases · Computer Science 2012-03-02 Felix Halim , Stratos Idreos , Panagiotis Karras , Roland H. C. Yap

Modern concurrent programming benefits from a large variety of synchronization techniques. These include conventional pessimistic locking, as well as optimistic techniques based on conditional synchronization primitives or transactional…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-10-15 Vincent Gramoli , Petr Kuznetsov , Srivatsan Ravi

Indexing massive data sets is extremely expensive for large scale problems. In many fields, huge amounts of data are currently generated, however extracting meaningful information from voluminous data sets, such as computing similarity…

Data Structures and Algorithms · Computer Science 2017-03-27 Camille Marchet , Lolita Lecompte , Antoine Limasset , Lucie Bittner , Pierre Peterlongo

The effective use of parallel computing resources to speed up algorithms in current multi-core parallel architectures remains a difficult challenge, with ease of programming playing a key role in the eventual success of various parallel…

Data Structures and Algorithms · Computer Science 2014-12-09 Arash Farzan , Alejandro López-Ortiz , Patrick K. Nicholson , Alejandro Salinger

Building concurrent spatial trees is more complicated than binary search trees since a space hierarchy should be preserved during modifications. We present a non-blocking quadtree-quadboost-that supports concurrent insert, remove, move, and…

Data Structures and Algorithms · Computer Science 2016-07-13 Keren Zhou , Guangming Tan , Wei Zhou

This paper describes QuickSched, a compact and efficient Open-Source C-language library for task-based shared-memory parallel programming. QuickSched extends the standard dependency-only scheme of task-based programming with the concept of…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-01-21 Pedro Gonnet , Aidan B. G. Chalk , Matthieu Schaller

Augmentation makes search trees tremendously more versatile, allowing them to support efficient aggregation queries, order-statistic queries, and range queries in addition to insertion, deletion, and lookup. In this paper, we present the…

Data Structures and Algorithms · Computer Science 2026-01-27 Evan Wrench , Ajay Singh , Younghun Roh , Panagiota Fatourou , Siddhartha Jayanti , Eric Ruppert , Yuanhao Wei