Storing a Sparse Table with 0(1) Worst Case Access Time
Journal of the ACM (JACM)
On parallel hashing and integer sorting
Proceedings of the seventeenth international colloquium on Automata, languages and programming
Converting high probability into nearly-constant time—with applications to parallel hashing
STOC '91 Proceedings of the twenty-third annual ACM symposium on Theory of computing
Fast and reliable parallel hashing
SPAA '91 Proceedings of the third annual ACM symposium on Parallel algorithms and architectures
Fast hashing on a PRAM—designing by expectation
SODA '91 Proceedings of the second annual ACM-SIAM symposium on Discrete algorithms
Practical minimal perfect hash functions for large databases
Communications of the ACM
A fast level set method for propagating interfaces
Journal of Computational Physics
A volumetric method for building complex models from range images
SIGGRAPH '96 Proceedings of the 23rd annual conference on Computer graphics and interactive techniques
Simple Fast Parallel Hashing by Oblivious Execution
SIAM Journal on Computing
SIAM Journal on Computing
Proceedings of the 29th annual conference on Computer graphics and interactive techniques
Using Geometric Hashing To Repair CAD Objects
IEEE Computational Science & Engineering
Medical Image Registration Using Geometric Hashing
IEEE Computational Science & Engineering
Fingerprint Matching Using Transformation Parameter Clustering
IEEE Computational Science & Engineering
Cuckoo hashing: further analysis
Information Processing Letters
How asymmetry helps load balancing
Journal of the ACM (JACM)
Glift: Generic, efficient, random-access GPU data structures
ACM Transactions on Graphics (TOG)
Salient geometric features for partial shape matching and similarity
ACM Transactions on Graphics (TOG)
ACM SIGGRAPH 2006 Papers
Real-time mesh simplification using the GPU
Proceedings of the 2007 symposium on Interactive 3D graphics and games
Scan primitives for GPU computing
Proceedings of the 22nd ACM SIGGRAPH/EUROGRAPHICS symposium on Graphics hardware
Precise vector textures for real-time 3D rendering
Proceedings of the 2008 symposium on Interactive 3D graphics and games
Interactive relighting of dynamic refractive objects
ACM SIGGRAPH 2008 papers
Real-time smoke rendering using compensated ray marching
ACM SIGGRAPH 2008 papers
Real-time KD-tree construction on graphics hardware
ACM SIGGRAPH Asia 2008 papers
Designing efficient sorting algorithms for manycore GPUs
IPDPS '09 Proceedings of the 2009 IEEE International Symposium on Parallel&Distributed Processing
FAST: fast architecture sensitive tree search on modern CPUs and GPUs
Proceedings of the 2010 ACM SIGMOD International Conference on Management of data
Parallel Poisson disk sampling with spectrum analysis on surfaces
ACM SIGGRAPH Asia 2010 papers
Parallel progressive photon mapping on GPUs
ACM SIGGRAPH ASIA 2010 Sketches
Implicit and dynamic trees for high performance rendering
Proceedings of Graphics Interface 2011
Proceedings of the 2011 SIGGRAPH Asia Conference
ESA'11 Proceedings of the 19th European conference on Algorithms
Designing fast architecture-sensitive tree search on modern multicore/many-core processors
ACM Transactions on Database Systems (TODS)
Fast GPU-based locality sensitive hashing for k-nearest neighbor computation
Proceedings of the 19th ACM SIGSPATIAL International Conference on Advances in Geographic Information Systems
SMI 2012: Full A runtime cache for interactive procedural modeling
Computers and Graphics
Designing a database system for modern processing architectures
Proceedings of the 2013 Sigmod/PODS Ph.D. symposium on PhD symposium
Real-time 3D reconstruction at scale using voxel hashing
ACM Transactions on Graphics (TOG)
The Yin and Yang of processing data warehousing queries on GPU devices
Proceedings of the VLDB Endowment
Hardware-oblivious parallelism for in-memory column-stores
Proceedings of the VLDB Endowment
A memory access model for highly-threaded many-core architectures
Future Generation Computer Systems
Hi-index | 0.00 |
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 perfect hashing approach, and cuckoo hashing, which packs elements densely by allowing an element to be stored in one of multiple possible 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 performance on large datasets: for 5 million key-value pairs, we construct a hash table in 35.7 ms using 1.42 times as much memory as the input data itself, and we can access all the elements in that hash table in 15.3 ms. For comparison, sorting the same data requires 36.6 ms, but accessing all the elements via binary search requires 79.5 ms. Furthermore, we show how our hashing methods can be applied to two graphics applications: 3D surface intersection for moving data and geometric hashing for image matching.