Hash Table Chaining with Packed Tags and Pointers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing hash table collision avoidance techniques either lead to larger memory footprint or higher computational overhead, with chaining increasing memory usage and open addressing increasing computational time.

Innovation Solution

Implement a hash table with a modulo operation to constrain indices, storing only the most significant bits of the hashed key and least significant bits of the linked list pointer, using two separate arrays to manage collisions, and optimizing load and scaling factors to minimize memory usage without sacrificing computational efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If chaining is used to handle hash collisions, then retrieval time is reduced, but memory footprint increases

Engineering Contradiction:
Improveretrieval timeVSAvoidmemory footprint
Core Design Contradiction:
Loss of timeVSQuantity of substance

Solution Approach 1:

The patent extracts only the necessary portion of the hashed key (most significant bits) to form a tag, rather than storing the complete hashed key. This extraction approach reduces memory usage while maintaining the ability to identify and retrieve associated values, thereby resolving the contradiction between fast retrieval and memory efficiency.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies different storage strategies to different parts of the data structure: the tag (most significant bits of hashed key) is stored in the primary hash table array for fast access, while the complete hashed key and associated values are stored in a separate linked list. This local differentiation optimizes both retrieval speed and memory utilization.

Inventive Principle:
Principle #3Local quality

2Quantity of substance

If open addressing is used to handle hash collisions, then memory footprint is reduced, but computational time increases

Engineering Contradiction:
Improvememory footprintVSAvoidcomputational time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent segments the hash table into two distinct structures: a primary array that stores indices and tags (most significant bits), and a secondary linked list structure that stores complete hashed keys and values. This segmentation allows the system to combine the memory efficiency of open addressing with the retrieval speed of chaining by using the primary array for quick tag matching and the linked list for detailed value storage.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS12603774B2Memory efficient hash table
Publication Date: 2026.04.14 MICROSOFT TECHNOLOGY LICENSING LLC
  • US12603774B2 patent drawing
  • US12603774B2 patent drawing
  • US12603774B2 patent drawing

AI summary

The disclosure reduces a memory footprint of a hash table that employs chaining as a collision avoidance solution. The methods and systems disclosed herein enable the use of chaining collision handling while reducing a memory footprint by storing parts of a tag and a link list pointer associated with a linked list that contain useful information, without storing parts of the tag and pointer that do not contain useful information. The linked list pointer and a hash key are packed together without reducing either size, and without using additional memory overhead.