GPU Implementation of the Wavelet Tree
Marco Franzreb, Martin Burtscher, Stephan Rudolph

TL;DR
This paper introduces a GPU-based wavelet tree implementation that significantly accelerates query processing and construction times compared to existing CPU solutions, enabling faster data analysis in large-scale applications.
Contribution
The work presents a novel GPU implementation of the wavelet tree with optimized binary rank/select support and a parallel construction algorithm, outperforming current state-of-the-art CPU methods.
Findings
GPU wavelet tree queries are at least 2x faster than CPU implementations.
Binary rank and select support structures achieve at least 10x higher throughput.
Parallel construction algorithm outperforms existing methods when excluding data transfer time.
Abstract
I present a new GPU implementation of the wavelet tree data structure. It includes binary rank and select support structures that provide at least 10 times higher throughput of binary rank and select queries than the best publicly available CPU implementations at comparable storage overhead. My work also presents a new parallel tree construction algorithm that, when excluding the time to copy the data from the CPU to the GPU, outperforms the current state of the art. The GPU implementation, given enough parallelism, processes access, rank, and select queries at least 2x faster than the wavelet tree implementation contained in the widely used Succinct Data Structure Library (SDSL), including the time necessary to copy the queries from the CPU to the GPU and the results back to the CPU from the GPU.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsNeural Networks and Applications · Image and Signal Denoising Methods · Advanced Clustering Algorithms Research
