Optimizing Bloom Filters for Modern GPU Architectures

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Jünger, Daniel, Kristensen, Kevin, Wang, Yunsong, Yu, Xiangyao, Schmidt, Bertil
Format: Preprint
Published: 2025
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866914205684203520
author Jünger, Daniel
Kristensen, Kevin
Wang, Yunsong
Yu, Xiangyao
Schmidt, Bertil
author_facet Jünger, Daniel
Kristensen, Kevin
Wang, Yunsong
Yu, Xiangyao
Schmidt, Bertil
contents Bloom filters are a fundamental data structure for approximate membership queries, with applications ranging from data analytics to databases and genomics. Several variants have been proposed to accommodate parallel architectures. GPUs, with massive thread-level parallelism and high-bandwidth memory, are a natural fit for accelerating these Bloom filter variants potentially to billions of operations per second. Although CPU-optimized implementations have been well studied, GPU designs remain underexplored. We close this gap by exploring the design space on GPUs along three dimensions: vectorization, thread cooperation, and compute latency. Our evaluation shows that the combination of these optimization points strongly affects throughput, with the largest gains achieved when the filter fits within the GPU's cache domain. We examine how the hardware responds to different parameter configurations and relate these observations to measured performance trends. Crucially, our optimized design overcomes the conventional trade-off between speed and precision, delivering the throughput typically restricted to high-error variants while maintaining the superior accuracy of high-precision configurations. At iso error rate, the proposed method outperforms the state-of-the-art by $11.35\times$ ($15.4\times$) for bulk filter lookup (construction), respectively, achieving above $92\%$ of the practical speed-of-light across a wide range of configurations on a B200 GPU. We propose a modular CUDA/C++ implementation, which will be openly available soon.
format Preprint
id arxiv_https___arxiv_org_abs_2512_15595
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle Optimizing Bloom Filters for Modern GPU Architectures
Jünger, Daniel
Kristensen, Kevin
Wang, Yunsong
Yu, Xiangyao
Schmidt, Bertil
Distributed, Parallel, and Cluster Computing
Bloom filters are a fundamental data structure for approximate membership queries, with applications ranging from data analytics to databases and genomics. Several variants have been proposed to accommodate parallel architectures. GPUs, with massive thread-level parallelism and high-bandwidth memory, are a natural fit for accelerating these Bloom filter variants potentially to billions of operations per second. Although CPU-optimized implementations have been well studied, GPU designs remain underexplored. We close this gap by exploring the design space on GPUs along three dimensions: vectorization, thread cooperation, and compute latency. Our evaluation shows that the combination of these optimization points strongly affects throughput, with the largest gains achieved when the filter fits within the GPU's cache domain. We examine how the hardware responds to different parameter configurations and relate these observations to measured performance trends. Crucially, our optimized design overcomes the conventional trade-off between speed and precision, delivering the throughput typically restricted to high-error variants while maintaining the superior accuracy of high-precision configurations. At iso error rate, the proposed method outperforms the state-of-the-art by $11.35\times$ ($15.4\times$) for bulk filter lookup (construction), respectively, achieving above $92\%$ of the practical speed-of-light across a wide range of configurations on a B200 GPU. We propose a modular CUDA/C++ implementation, which will be openly available soon.
title Optimizing Bloom Filters for Modern GPU Architectures
topic Distributed, Parallel, and Cluster Computing
url https://arxiv.org/abs/2512.15595