English
Related papers

Related papers: BS-tree: A gapped data-parallel B-tree

200 papers

We start by summarizing the recently proposed implementation of the first non-blocking concurrent interpolation search tree (C-IST) data structure. We then analyze the individual operations of the C-IST, and show that they are correct and…

Data Structures and Algorithms · Computer Science 2020-01-03 Aleksandar Prokopec , Trevor Brown , Dan Alistarh

Monte Carlo Tree Search (MCTS) methods have achieved great success in many Artificial Intelligence (AI) benchmarks. The in-tree operations become a critical performance bottleneck in realizing parallel MCTS on CPUs. In this work, we develop…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-08-25 Yuan Meng , Rajgopal Kannan , Viktor Prasanna

The block tree [Belazzougui et al., J. Comput. Syst. Sci. '21] is a compressed representation of a length-$n$ text that supports access, rank, and select queries while requiring only $O(z\log\frac{n}{z})$ words of space, where $z$ is the…

Data Structures and Algorithms · Computer Science 2025-12-30 Robert Clausecker , Florian Kurpicz , Etienne Palanga

Cartesian tree matching is a form of generalized pattern matching where a substring of the text matches with the pattern if they share the same Cartesian tree. This form of matching finds application for time series of stock prices and can…

Data Structures and Algorithms · Computer Science 2024-11-20 Eric M. Osterkamp , Dominik Köppl

For text retrieval systems, the assumption that all data structures reside in main memory is increasingly common. In this context, we present a novel incremental inverted indexing algorithm for web-scale collections that directly constructs…

Information Retrieval · Computer Science 2013-05-06 Nima Asadi , Jimmy Lin

A sorted set (or map) is one of the most used data types in computer science. In addition to standard set operations, like Insert, Remove, and Contains, it can provide set-set operations such as Union,Intersection, and Difference. Each of…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-06-27 Ilya Kokorin , Vitaly Aksenov , Alena Martsenyuk

We introduce the zip tree, a form of randomized binary search tree that integrates previous ideas into one practical, performant, and pleasant-to-implement package. A zip tree is a binary search tree in which each node has a numeric rank…

Data Structures and Algorithms · Computer Science 2022-02-23 Robert E. Tarjan , Caleb C. Levy , Stephen Timmel

Suffix trees are a fundamental data structure in stringology, but their space usage, though linear, is an important problem for its applications. We design and implement a new compressed suffix tree targeted to highly repetitive texts, such…

Data Structures and Algorithms · Computer Science 2019-02-12 Manuel Cáceres , Gonzalo Navarro

Recent advancements in large language models have significantly improved their context windows, yet challenges in effective long-term memory management remain. We introduce MemTree, an algorithm that leverages a dynamic, tree-structured…

Computation and Language · Computer Science 2025-03-21 Alireza Rezazadeh , Zichao Li , Wei Wei , Yujia Bao

Memory disaggregation architecture physically separates CPU and memory into independent components, which are connected via high-speed RDMA networks, greatly improving resource utilization of databases. However, such an architecture poses…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-12-21 Qing Wang , Youyou Lu , Jiwu Shu

Traditional indexing techniques commonly employed in da\-ta\-ba\-se systems perform poorly on multidimensional array scientific data. Bitmap indices are widely used in commercial databases for processing complex queries, due to their…

Databases · Computer Science 2021-09-01 Luboš Krčál , Shen-Shyang Ho , Jan Holub

We present an algorithm that allows for building left-balanced and complete k-d trees over k-dimensional points in a trivially parallel and GPU friendly way. Our algorithm requires exactly one int per data point as temporary storage, and…

Data Structures and Algorithms · Computer Science 2023-04-06 Ingo Wald

We study learning-augmented binary search trees (BSTs) via Treaps with carefully designed priorities. The result is a simple search tree in which the depth of each item $x$ is determined by its predicted weight $w_x$. Specifically, each…

Data Structures and Algorithms · Computer Science 2025-05-16 Jingbang Chen , Xinyuan Cao , Alicia Stepin , Li Chen

Multicopy search structures such as log-structured merge (LSM) trees are optimized for high insert/update/delete (collectively known as upsert) performance. In such data structures, an upsert on key $k$, which adds $(k,v)$ where $v$ can be…

Programming Languages · Computer Science 2021-09-14 Nisarg Patel , Siddharth Krishna , Dennis Shasha , Thomas Wies

Although many updatable learned indexes have been proposed in recent years, whether they can outperform traditional approaches on disk remains unknown. In this study, we revisit and implement four state-of-the-art updatable learned indexes…

Databases · Computer Science 2023-05-03 Hai Lan , Zhifeng Bao , J. Shane Culpepper , Renata Borovica-Gajic

We propose methods that enable efficient hierarchical classification in parallel. Our methods transform a batch of classification scores and labels, corresponding to given nodes in a semantic tree, to scores and labels corresponding to all…

Machine Learning · Computer Science 2022-09-22 Franz A. Heinsen

This paper presents a deeply pipelined and massively parallel Binary Search Tree (BST) accelerator for Field Programmable Gate Arrays (FPGAs). Our design relies on the extremely parallel on-chip memory, or Block RAMs (BRAMs) architecture of…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-12-04 Oyku Melikoglu , Oguz Ergin , Behzad Salami , Julian Pavon , Osman Unsal , Adrian Cristal

Visual localization algorithms have achieved significant improvements in performance thanks to recent advances in camera technology and vision-based techniques. However, there remains one critical caveat: all current approaches that are…

Computer Vision and Pattern Recognition · Computer Science 2019-07-01 Huu Le , Tuan Hoang , Michael Milford

It is becoming increasingly difficult to improve the performance of a a single process (thread) on a computer due to physical limitations. Modern systems use multi-core processors in which multiple processes (threads) may run concurrently.…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-11-05 Jordan Malek

We suggest a new non-recursive algorithm for constructing a binary search tree given an array of numbers. The algorithm has $O(N)$ time and $O(1)$ memory complexity if the given array of $N$ numbers is sorted. The resulting tree is of…

Data Structures and Algorithms · Computer Science 2022-07-20 Pavel S. Ruzankin