Efficient Hashing with Lookups in two Memory Accesses

被引:0
|
作者
Panigrahy, Rina [1 ]
机构
[1] Cisco Syst, San Jose, CA 95134 USA
关键词
D O I
暂无
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
The study of hashing is closely related to the analysis of balls and bins. Azar et. al. [1] showed that instead of using a single hash function if we randomly hash a ball into two bins and place it in the smaller of the two, then tins dramatically lowers the maximtun load on bins. This leads to the concept of two-way hashing where the largest bucket contains O(log log n) balls with high probability. The hash look up will now search in both the buckets an item hashes to. Since an item may be placed in one of two buckets, we could potentially move an item after it has been initially placed to reduce maximum load. Using this fact, we present a simple, practical hashing scheme that maintains a maximum load of 2, with high probability, while achieving high memory utilization. In fact, with n buckets, even if the space for two items are pre-allocated per bucket, as may be desirable in hardware implementations, more than n items can be stored giving a high memory utilization. Assuming truly random hash functions, we prove the following properties for our hashing scheme. Each lookup takes two random memory accesses, and reads at most two items per access. Each insert takes O(log n) time and up to log log n+ O(1) moves, with high probability, and constant time in expectation. Maintains 83.75% memory utilization, without requiring dynamic allocation during inserts. We also analyze the trade-off between the number of moves performed during inserts and the maximum load on a bucket. By performing at most h moves, we can maintain a maximum load of O(log log n/h log(log log n/h)). So even by performing one move, we achieve a better bound than by performing no moves at
引用
收藏
页码:830 / 839
页数:10
相关论文
共 50 条
  • [1] Memory-efficient state lookups with fast updates
    Sikka, S
    Varghese, G
    [J]. ACM SIGCOMM COMPUTER COMMUNICATION REVIEW, 2000, 30 (04) : 335 - 347
  • [2] Automatic Sublining for Efficient Sparse Memory Accesses
    Heirman, Wim
    Eyerman, Stijn
    Du Bois, Kristof
    Hur, Ibrahim
    [J]. ACM TRANSACTIONS ON ARCHITECTURE AND CODE OPTIMIZATION, 2021, 18 (03)
  • [3] Tyche: An Efficient and General Prefetcher for Indirect Memory Accesses
    Xue, Feng
    Han, Chenji
    Li, Xinyu
    Wu, Junliang
    Zhang, Tingting
    Liu, Tianyi
    Hao, Yifan
    Du, Zidong
    Guo, Qi
    Zhang, Fuxin
    [J]. ACM TRANSACTIONS ON ARCHITECTURE AND CODE OPTIMIZATION, 2024, 21 (02)
  • [4] EHS: An Efficient Hashing Scheme for Persistent Memory
    Regassa, Dereje
    Sung, Dongkyu
    Kim, Sunggon
    Yeom, Heon Young
    Son, Yongseok
    [J]. 38TH ANNUAL ACM SYMPOSIUM ON APPLIED COMPUTING, SAC 2023, 2023, : 301 - 304
  • [5] PARALLEL HASHING - AN EFFICIENT IMPLEMENTATION OF SHARED MEMORY
    KARLIN, AR
    UPFAL, E
    [J]. JOURNAL OF THE ACM, 1988, 35 (04) : 876 - 892
  • [6] SEPH: Scalable, Efficient, and Predictable Hashing on Persistent Memory
    Wang, Chao
    Hu, Junliang
    Yang, Tsun-Yu
    Liang, Yuhong
    Yang, Ming-Chang
    [J]. PROCEEDINGS OF THE 17TH USENIX SYMPOSIUM ON OPERATING SYSTEMS DESIGN AND IMPLEMENTATION, OSDI 2023, 2023, : 479 - 495
  • [7] Efficient Management of Cache Accesses to Boost GPGPU Memory Subsystem Performance
    Candel, Francisco
    Valero, Alejandro
    Petit, Salvador
    Sahuquillo, Julio
    [J]. IEEE TRANSACTIONS ON COMPUTERS, 2019, 68 (10) : 1442 - 1454
  • [8] Balancing Memory Accesses for Energy-Efficient Graph Analytics Accelerators
    Yan, Mingyu
    Hu, Xing
    Li, Shuangchen
    Akgun, Itir
    Li, Han
    Ma, Xin
    Deng, Lei
    Ye, Xiaochun
    Zhang, Zhimin
    Fan, Dongrui
    Xie, Yuan
    [J]. 2019 IEEE/ACM INTERNATIONAL SYMPOSIUM ON LOW POWER ELECTRONICS AND DESIGN (ISLPED), 2019,
  • [9] Routing lookups in hardware at memory access speeds
    Gupta, P
    Lin, S
    McKeown, N
    [J]. IEEE INFOCOM '98 - THE CONFERENCE ON COMPUTER COMMUNICATIONS, VOLS. 1-3: GATEWAY TO THE 21ST CENTURY, 1998, : 1240 - 1247
  • [10] Formalizing Memory Accesses and Interrupts
    Achermann, Reto
    Humbel, Lukas
    Cock, David
    Roscoe, Timothy
    [J]. ELECTRONIC PROCEEDINGS IN THEORETICAL COMPUTER SCIENCE, 2017, (244): : 66 - 116