Parallel Ordered Sets Using Join
Blelloch, Ferizovic, Sun · cs.DS · 2016-11-12 · 原文
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.
讲义
讲义·推断 依据「原文」自动生成的结构化摘要(推断),非原文表述;以原文为准。
1. 人话版
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.
2. 领域脉络
本文类目:cs.DS,属于其所在研究脉络的最新进展。
3. 机制拆解
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.
4. 证据与数字
Interestingly the implementations on all four data structures and three set functions perform similarly in time and speedup (more than 45x on 64 cores).
5. 反例与边界
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.
6. 跨领域连接与意外收获
思考本文机制能否迁移到你正在跟进的问题。
7. 可复用方法
把本文机制与你手头项目对照,找一个两周内能验证的最小实验。
8. 术语表
精读时把不熟的术语记入此处,作为下次回忆的锚点。