Parallel Ordered Sets Using Join

Type: Preprint

Publication Date: 2016-02-05

Citations: 15

Abstract

The ordered set is one of the most important data type in both theoretical algorithm design and analysis and practical programming. In this paper we study the set operations on two ordered sets, including Union, Intersect and Difference, based on four types of balanced Binary Search Trees (BST) including AVL trees, red-black trees, weight balanced trees and treaps. We introduced only one subroutine Join that needs to be implemented differently for each balanced BST, and on top of which we can implement generic, simple and efficient parallel functions for ordered sets. We first prove the work-efficiency of these Join-based set functions using a generic proof working for all the four types of balanced BSTs. We also implemented and tested our algorithm on all the four balancing schemes. Interestingly the implementations on all four data structures and three set functions perform similarly in time and speedup (more than 45x on 64 cores). We also compare the performance of our implementation to other existing libraries and algorithms.

Locations

  • arXiv (Cornell University) - View - PDF

Similar Works

Action Title Year Authors
+ PDF Chat Just Join for Parallel Ordered Sets 2016 Guy E. Blelloch
Daniel Ferizovic
Yihan Sun
+ An efficient way to manage blocks of data with Wise Red-Black Trees. 2021 Alberto Boffi
+ An efficient way to manage ranges of data with Wise Red-Black Trees 2021 Alberto Boffi
+ PDF Chat Efficient lock-free binary search trees 2014 Bapi Chatterjee
Nhan Nguyen
Philippas Tsigas
+ Sort Race 2016 Hantao Zhang
Baoluo Meng
Yiwen Liang
+ Sort Race 2016 Hantao Zhang
Baoluo Meng
Yiwen Liang
+ Bitmap Filter: Speeding up Exact Set Similarity Joins with Bitwise Operations 2017 Edans F. O. Sandes
George Teodoro
Alba Cristina Magalhães Alves de Melo
+ Bitmap Filter: Speeding up Exact Set Similarity Joins with Bitwise Operations 2017 Edans F. O. Sandes
George Teodoro
Alba Cristina Magalhães Alves de Melo
+ Parallel Integer Sort: Theory and Practice 2024 Xiaojun Dong
Laxman Dhulipala
Yan Gu
Yihan Sun
+ High-Performance and Flexible Parallel Algorithms for Semisort and Related Problems 2023 Xiaojun Dong
Yunshu Wu
Zhongqi Wang
Laxman Dhulipala
Yan Gu
Yihan Sun
+ Parallel Batched Interpolation Search Tree 2021 Vitaly Aksenov
Ilya Kokorin
Alena Martsenyuk
+ Black-White Array: A New Data Structure for Dynamic Data Sets. 2020 Z. George Mou
+ Black-White Array: A New Data Structure for Dynamic Data Sets 2020 Z. George Mou
+ Parallel comparison merging of many-ordered lists 1991 Yossi Azar
+ PaC-trees: Supporting Parallel and Compressed Purely-Functional Collections 2022 Laxman Dhulipala
Guy E. Blelloch
Yan Gu
Yihan Sun
+ Efficient Lock-free Binary Search Trees 2014 Bapi Chatterjee
Nhan Nguyen
Philippas Tsigas
+ Efficient Lock-free Binary Search Trees 2014 Bapi Chatterjee
Nhan T. Nguyen
Philippas Tsigas
+ Parallel Prefix Sum with SIMD 2023 Wangda Zhang
Yanbin Wang
Kenneth A. Ross
+ PDF Chat Improved Average Complexity for Comparison-Based Sorting 2017 Kazuo Iwama
Junichi Teruyama
+ Amortized efficiency of generation, ranking and unranking left-child sequences in lexicographic order 2018 Kung-Jui Pai
Jou–Ming Chang
Ro–Yu Wu
Shun‐Chieh Chang