Search papers, labs, and topics across Lattice.
This paper presents Foresight, an innovative optimization for skiplists that enhances cache efficiency and addresses synchronization challenges in concurrent environments. By applying Foresight to various skiplist designs, the authors achieve throughput improvements of up to 45% in microbenchmarks and up to 15% in end-to-end performance within the DBx1000 in-memory database. These results demonstrate the practical applicability of Foresight in optimizing data structures critical for indexing in systems and applications.
Foresight boosts skiplist throughput by up to 45%, revolutionizing cache efficiency in concurrent data structures.
A skiplist is a fundamental data structure widely used in systems and applications for indexing data stores. In this work, we introduce Foresight, a cache-friendly skiplist optimization. Extending Foresight to concurrent settings introduces significant synchronization challenges that we identify and address. Foresight is a surgical optimization, easy to integrate into a wide variety of skiplist designs. We apply it to one sequential and three concurrent skiplist designs and observe throughput improvements of up to 45% in microbenchmarks. When applied to a skiplist-based index in the DBx1000 in-memory database, Foresight yields end-to-end performance gains of up to 15%.