Theory and Practice of Chunked Sequences

  • Umut A. Acar
  • Arthur Charguéraud
  • Mike Rainey
Conference paper

DOI: 10.1007/978-3-662-44777-2_3

Part of the Lecture Notes in Computer Science book series (LNCS, volume 8737)
Cite this paper as:
Acar U.A., Charguéraud A., Rainey M. (2014) Theory and Practice of Chunked Sequences. In: Schulz A.S., Wagner D. (eds) Algorithms - ESA 2014. ESA 2014. Lecture Notes in Computer Science, vol 8737. Springer, Berlin, Heidelberg

Abstract

Sequence data structures, i.e., data structures that provide operations on an ordered set of items, are heavily used by many applications. For sequence data structures to be efficient in practice, it is important to amortize expensive data-structural operations by chunking a relatively small, constant number of items together, and representing them by using a simple but fast (at least in the small scale) sequence data structure, such as an array or a ring buffer. In this paper, we present chunking techniques, one direct and one based on bootstrapping, that can reduce the practical overheads of sophisticated sequence data structures, such as finger trees, making them competitive in practice with specialpurpose data structures. We prove amortized bounds showing that our chunking techniques reduce runtime by amortizing expensive operations over a user-defined chunk-capacity parameter. We implement our techniques and show that they perform well in practice by conducting an empirical evaluation. Our evaluation features comparisons with other carefully engineered and optimized implementations.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer-Verlag Berlin Heidelberg 2014

Authors and Affiliations

  • Umut A. Acar
    • 1
    • 2
  • Arthur Charguéraud
    • 1
    • 3
  • Mike Rainey
    • 1
  1. 1.InriaFrance
  2. 2.Carnegie Mellon UniversityUSA
  3. 3.LRI, Université Paris Sud, CNRSFrance

Personalised recommendations