Abstract

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for parallel, space-efficient hash table resize. An aspect may include a hash table that may be resized by incrementally de-allocating buckets of an old hash table and incrementally allocating buckets of a new hash table. Additionally or alternatively, an aspect may include a hash table that may be resized by re-allocating buckets from the old hash table to the new hash table and then re-arranging the buckets of the new hash table. Additionally or alternatively, an aspect may include a hash table with chaining that may be resized by copying the elements of the old hash table to corresponding buckets of the new hash table and indicating which elements are not necessarily in a final position. After copying, final positions may be determined for the buckets that are indicated as not necessarily in a final position. Additionally or alternatively, an aspect may include parallezing algorithms for resizing hash tables.

Creative Commons License

Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 License.

Share

COinS