Tiny Pointers
Michael A. Bender, Alex Conway, Mart\'in Farach-Colton, William, Kuszmaul, Guido Tagliavini

TL;DR
This paper introduces tiny pointers, a new data-structural object that reduces pointer size to o(log n) bits with minimal time overhead, enabling more space-efficient data structures for classic problems.
Contribution
It develops a comprehensive theory and optimal constructions for tiny pointers, improving space efficiency in various data-structure problems without significant performance loss.
Findings
Optimal tiny-pointer sizes depend on load factor and reference size.
Tiny pointers enable space-efficient implementations of classic data-structure problems.
Revisiting balls and bins problems yields new insights relevant to tiny pointers.
Abstract
This paper introduces a new data-structural object that we call the tiny pointer. In many applications, traditional -bit pointers can be replaced with -bit tiny pointers at the cost of only a constant-factor time overhead. We develop a comprehensive theory of tiny pointers, and give optimal constructions for both fixed-size tiny pointers (i.e., settings in which all of the tiny pointers must be the same size) and variable-size tiny pointers (i.e., settings in which the average tiny-pointer size must be small, but some tiny pointers can be larger). If a tiny pointer references an element in an array filled to load factor , then the optimal tiny-pointer size is bits in the fixed-size case, and expected bits in the variable-size case. Our tiny-pointer constructions also require us to revisit several…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAlgorithms and Data Compression · Parallel Computing and Optimization Techniques · Software Testing and Debugging Techniques
