| | |
Summary: Real-Time Parallel Hashing on the GPU
Dan A. Alcantara Andrei Sharf Fatemeh Abbasinejad Shubhabrata Sengupta Michael Mitzenmacher
John D. Owens
University of California, Davis
Nina Amenta
Harvard University
Figure 1: Overview of our construction for a voxelized Lucy model, colored by mapping x, y, and z coordinates to red, green, and blue
respectively (far left). The 3.5 million voxels (left) are input as 32-bit keys and placed into buckets of 512 items, averaging 409 each
(center). Each bucket then builds a cuckoo hash with three sub-tables and stores them in a larger structure with 5 million entries (right).
Close-ups follow the progress of a single bucket, showing the keys allocated to it (center; the bucket is linear and wraps around left to right)
and each of its completed cuckoo sub-tables (right). Finding any key requires checking only three possible locations.
Abstract
We demonstrate an efficient data-parallel algorithm for building
large hash tables of millions of elements in real-time. We consider
two parallel algorithms for the construction: a classical sparse per-
fect hashing approach, and cuckoo hashing, which packs elements
densely by allowing an element to be stored in one of multiple pos-
sible locations. Our construction is a hybrid approach that uses both
algorithms. We measure the construction time, access time, and
memory usage of our implementations and demonstrate real-time
|