Amazon.com, Inc.
Optimizing hash table searching using bitmasks and linear probing

Last updated:

Abstract:

Within hash tables, bitmask(s) may be used to determine whether a given key is part of a collision chain or otherwise contained within the hash table. In some instances, using bitmask(s) may avoid linearly probing an entirety of the collision chain. For example, bitmask(s) may be used when searching low hit rate hash tables or hash tables where misses predominantly occur. Upon locating a collision chain within the hash table, or when probing the collision chain, the bitmask(s) may indicate whether subsequent keys within the collision chain correspond to the given key. The bitmask(s) may represent subsequent keys within the collision chain, and therefore, comparing the given key with the bitmask(s) may indicate similarities therebetween for use in determining whether to search a remainder of the collision chain.

Status:
Grant
Type:

Utility

Filling date:

17 Jun 2020

Issue date:

2 Aug 2022