Efficient Hash Probes on Modern Processors

@article{Ross2007EfficientHP,
  title={Efficient Hash Probes on Modern Processors},
  author={K. Ross},
  journal={2007 IEEE 23rd International Conference on Data Engineering},
  year={2007},
  pages={1297-1301}
}
  • K. Ross
  • Published 2007
  • Computer Science
  • 2007 IEEE 23rd International Conference on Data Engineering
  • Bucketized versions of Cuckoo hashing can achieve 95-99% occupancy, without any space overhead for pointers or other structures. [...] Key Method We show how to improve probe performance by (a) eliminating branch instructions from the probe code, enabling better scheduling and latency-hiding by modern processors, and (b) using SIMD instructions to process multiple keys/payloads in parallel. We show that on modern architectures, probes to a bucketized Cuckoo hash table can be processed much faster than…Expand Abstract
    83 Citations
    Fast and Compact Hash Tables for Integer Keys
    • 32
    • Highly Influenced
    • PDF
    Horton Tables: Fast Hash Tables for In-Memory Data-Intensive Computing
    • 28
    • Highly Influenced
    • PDF
    Index Search Algorithms for Databases and Modern CPUs
    • 1
    • PDF
    HASHI: An Application Specific Instruction Set Extension for Hashing
    • 13
    • PDF
    A Distributed Hash Table for Shared Memory
    • 5
    • PDF
    Rethinking SIMD Vectorization for In-Memory Databases
    • 150
    • PDF
    Memory-Efficient Hash Joins
    • 58
    • PDF
    Design and evaluation of main memory hash join algorithms for multi-core CPUs
    • 208
    • PDF

    References

    SHOWING 1-10 OF 22 REFERENCES
    Efficient hashing with lookups in two memory accesses
    • 50
    • PDF
    Architecture-conscious hashing
    • 49
    • PDF
    Space Efficient Hash Tables with Worst Case Constant Access Time
    • 121
    • PDF
    Cuckoo hashing
    • 991
    • Highly Influential
    • PDF
    Even strongly universal hashing is pretty fast
    • M. Thorup
    • Mathematics, Computer Science
    • SODA '00
    • 2000
    • 67
    • PDF
    Implementing database operations using SIMD instructions
    • 246
    • PDF