Predicting Access to Persistent Objects Through Static Code Analysis

  • Rizkallah ToumaEmail author
  • Anna Queralt
  • Toni Cortes
  • María S. Pérez
Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 767)


In this paper, we present a fully-automatic, high-accuracy approach to predict access to persistent objects through static code analysis of object-oriented applications. The most widely-used previous technique uses a simple heuristic to make the predictions while approaches that offer higher accuracy are based on monitoring application execution. These approaches add a non-negligible overhead to the application’s execution time and/or consume a considerable amount of memory. By contrast, we demonstrate in our experimental study that our proposed approach offers better accuracy than the most common technique used to predict access to persistent objects, and makes the predictions farther in advance, without performing any analysis during application execution.


  1. 1.
    Cahoon, B., McKinley, K.S.: Data flow analysis for software prefetching linked data structures in Java. Proc. PACT 2001, 280–291 (2001)Google Scholar
  2. 2.
    Curewitz, K.M., Krishnan, P., Vitter, J.S.: Practical prefetching via data compression. SIGMOD Rec. 22(2), 257–266 (1993)CrossRefGoogle Scholar
  3. 3.
    Gornish, E.H., Granston, E.D., Veidenbaum, A.V.: Compiler-directed data prefetching in multiprocessors with memory hierarchies. In: Proceedings of ICS 1990, pp. 354–368. ACM (1990)Google Scholar
  4. 4.
    Han, W., Whang, K., Moon, Y.: A formal framework for prefetching based on the type-level access pattern in object-relational DBMSs. IEEE Trans. Knowl. Data Eng. 17(10), 1436–1448 (2005)CrossRefGoogle Scholar
  5. 5.
    He, Z., Marquez, A.: Path and cache conscious prefetching (PCCP). VLDB J. 16(2), 235–249 (2007)CrossRefGoogle Scholar
  6. 6.
    Ibrahim, A., Cook, W.R.: Automatic prefetching by traversal profiling in object persistence architectures. In: Thomas, D. (ed.) ECOOP 2006. LNCS, vol. 4067, pp. 50–73. Springer, Heidelberg (2006). doi: 10.1007/11785477_4 CrossRefGoogle Scholar
  7. 7.
    Karlsson, M., Dahlgren, F., Stenström, P.: A prefetching technique for irregular accesses to linked data structures. In: Proceedings of HPCA, pp. 206–217 (2000)Google Scholar
  8. 8.
    Knafla, N.: A prefetching technique for object-oriented databases. In: Small, C., Douglas, P., Johnson, R., King, P., Martin, N. (eds.) BNCOD 1997. LNCS, vol. 1271, pp. 154–168. Springer, Heidelberg (1997). doi: 10.1007/3-540-63263-8_19 CrossRefGoogle Scholar
  9. 9.
    Knafla, N.: Analysing object relationships to predict page access for prefetching. In: Proceedings of POS-8 and PJW-3, pp. 160–170. Morgan Kaufmann (1999)Google Scholar
  10. 10.
    Luk, C.-K., Mowry, T.C.: Compiler-based prefetching for recursive data structures. In: Proceedings of ASPLOS VII, pp. 222–233. ACM (1996)Google Scholar
  11. 11.
    Mart, J., Queralt, A., Gasull, D., et al.: Dataclay: a distributed data store for effective inter-player data sharing. J. Syst. Softw. 131, 129–145 (2017)CrossRefGoogle Scholar
  12. 12.
    Mowry, T.C., Lam, M.S., Gupta, A.: Design and evaluation of a compiler algorithm for prefetching. In: Proceedings of ASPLOS V, pp. 62–73. ACM (1992)Google Scholar
  13. 13.
    Stoutchinin, A., Amaral, J.N., Gao, G.R., Dehnert, J.C., Jain, S., Douillet, A.: Speculative prefetching of induction pointers. In: Wilhelm, R. (ed.) CC 2001. LNCS, vol. 2027, pp. 289–303. Springer, Heidelberg (2001). doi: 10.1007/3-540-45306-7_20 CrossRefGoogle Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Rizkallah Touma
    • 1
    Email author
  • Anna Queralt
    • 1
  • Toni Cortes
    • 1
    • 2
  • María S. Pérez
    • 3
  1. 1.Barcelona Supercomputing Center (BSC)BarcelonaSpain
  2. 2.Universitat Politècnica de Catalunya (UPC)BarcelonaSpain
  3. 3.Ontology Engineering Group (OEG)Universidad Politécnica de MadridMadridSpain

Personalised recommendations