Cache-Oblivious Persistence

  • Pooya Davoodi
  • Jeremy T. Fineman
  • John Iacono
  • Özgür Özkan
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8737)


Partial persistence is a general transformation that takes a data structure and allows queries to be executed on any past state of the structure. The cache-oblivious model is the leading model of a modern multi-level memory hierarchy. We present the first general transformation for making cache-oblivious model data structures partially persistent.


Space Usage Memory Hierarchy Memory Array Primitive Operation Complete Binary Tree 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Bayer, R., McCreight, E.M.: Organization and Maintenance of Large Ordered Indices. Acta Inf. 1, 173–189 (1972)CrossRefGoogle Scholar
  2. 2.
    Bender, M.A., Cole, R., Raman, R.: Exponential Structures for Efficient Cache-Oblivious Algorithms. In: Widmayer, P., Triguero, F., Morales, R., Hennessy, M., Eidenbenz, S., Conejo, R. (eds.) ICALP 2002. LNCS, vol. 2380, p. 195. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  3. 3.
    Michael, A., Bender, E.D.: Demaine, and Martin Farach-Colton. Cache-Oblivious B-Trees. SIAM J. Comput. 35(2), 341–358 (2005)CrossRefzbMATHMathSciNetGoogle Scholar
  4. 4.
    Michael, A.: Bender, Ziyang Duan, John Iacono, and Jing Wu. A locality-preserving cache-oblivious dynamic dictionary 53(2), 115–136 (2004)zbMATHGoogle Scholar
  5. 5.
    Brodal, G.S., Tsakalidis, K., Sioutas, S., Tsichlas, K.: Fully persistent B-trees. In: Proceedings of the Twenty-Third Annual ACM-SIAM Symposium on Discrete Algorithms, pp. 602–614 (2012)Google Scholar
  6. 6.
    Collette, S., Iacono, J., Langerman, S.: Confluent persistence revisited. In: Proceedings of the Twenty-Third Annual ACM-SIAM Symposium on Discrete Algorithms, pp. 593–601 (2012)Google Scholar
  7. 7.
    Davoodi, P., Fineman, J.T., Iacono, J., Özkan, Ö.: Cache-oblivious persistence. CoRR, abs/1402.5492 (2014)Google Scholar
  8. 8.
    Demaine, E.D., Iacono, J., Langerman, S.: Retroactive data structures. ACM Transactions on Algorithms 3(2) (2007)Google Scholar
  9. 9.
    Driscoll, J.R., Sarnak, N., Sleator, D.D., Tarjan, R.E.: Making data structures persistent. J. Comput. Syst. Sci. 38(1), 86–124 (1989)CrossRefzbMATHMathSciNetGoogle Scholar
  10. 10.
    Fiat, A., Kaplan, H.: Making data structures confluently persistent. J. Algorithms 48(1), 16–58 (2003)CrossRefzbMATHMathSciNetGoogle Scholar
  11. 11.
    Fredman, M.L., Sedgewick, R., Sleator, D.D., Tarjan, R.E.: The Pairing Heap: A New Form of Self-Adjusting Heap. Algorithmica 1(1), 111–129 (1986)CrossRefzbMATHMathSciNetGoogle Scholar
  12. 12.
    Frigo, M., Leiserson, C.E., Prokop, H., Ramachandran, S.: Cache-oblivious algorithms. ACM Transactions on Algorithms 8(1), 4 (2012)CrossRefMathSciNetGoogle Scholar
  13. 13.
    Sarnak, N., Tarjan, R.E.: Planar Point Location Using Persistent Search Trees. Commun. ACM 29(7), 669–679 (1986)CrossRefMathSciNetGoogle Scholar
  14. 14.
    Sleator, D.D., Tarjan, R.E.: Self-Adjusting Binary Search Trees. J. ACM 32(3), 652–686 (1985)CrossRefzbMATHMathSciNetGoogle Scholar
  15. 15.
    Tarjan, R.E.: Efficiency of a Good But Not Linear Set Union Algorithm. J. ACM 22(2), 215–225 (1975)CrossRefzbMATHMathSciNetGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2014

Authors and Affiliations

  • Pooya Davoodi
    • 1
  • Jeremy T. Fineman
    • 2
  • John Iacono
    • 1
  • Özgür Özkan
    • 1
  1. 1.New York UniversityUSA
  2. 2.Georgetown UniversityUSA

Personalised recommendations