Scalable, concurrent resizing of hash tables
AssigneeInternational Business Machines Corporation
InventorsPaul E. McKenney, Joshua A. Triplett
Life of this patent
Estimating the term…
Loading patent…
AssigneeInternational Business Machines Corporation
InventorsPaul E. McKenney, Joshua A. Triplett
Estimating the term…
A system, method and computer program product for resizing a hash table while supporting hash table scalability and concurrency. The hash table has one or more hash buckets each containing one or more items that are chained together in a linked list. Each item in the hash table is processed to determine if the item requires relocation from a first bucket associated with a first table size to second bucket associated with a second table size. If the item requires relocation, it is linked to the second bucket without moving or copying the item in memory. The item is unlinked from the first bucket after waiting until there is no current hash table reader whose search of the hash table could be affected by the unlinking, again without moving or copying the item in memory.
In a system having one or more processors, a memory operatively coupled to said one or more processors, and a hash table in said memory having hash buckets each containing items that are chained together in a linked list, a method for resizing said hash table, comprising:
A data processing system having one or more processors, a memory operatively coupled to said one or more processors, and a hash table loadable in said memory, said hash table having hash buckets each containing items that are chained together in a linked list, program instructions loadable in said memory for programming said one or more processors to perform operations for resizing said hash table, said operations comprising:
A computer program product, comprising:
A computer-implemented method for resizing a hash table, comprising:
Dependencies are inferred from the claim text.