Marker-Directed Optimization of UnCAL Graph Transformations

  • Soichiro Hidaka
  • Zhenjiang Hu
  • Kazuhiro Inaba
  • Hiroyuki Kato
  • Kazutaka Matsuda
  • Keisuke Nakano
  • Isao Sasano
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7225)

Abstract

Buneman et al. proposed a graph algebra called UnCAL (Unstructured CALculus) for compositional graph transformations based on structural recursion, and we have recently applied to model transformations. The compositional nature of the algebra greatly enhances the modularity of transformations. However, intermediate results generated between composed transformations cause overhead. Buneman et al. proposed fusion rules that eliminate the intermediate results, but auxiliary rewriting rules that enable the actual application of the fusion rules are not apparent so far. UnCAL graph model includes the concept of markers, which correspond to recursive function call in the structural recursion. We have found that there are many optimization opportunities at rewriting level based on static analysis, especially focusing on markers. The analysis can safely eliminate redundant function calls. Performance evaluation shows its practical effectiveness for non-trivial examples in model transformations.

Keywords

program transformations graph transformations UnCAL 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Benczúr, A.A., Kósa, B.: Static Analysis of Structural Recursion in Semistructured Databases and Its Consequences. In: Benczúr, A.A., Demetrovics, J., Gottlob, G. (eds.) ADBIS 2004. LNCS, vol. 3255, pp. 189–203. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  2. 2.
    Buneman, P., Davidson, S., Fernandez, M., Suciu, D.: Adding Structure to Unstructured Data. In: Afrati, F.N., Kolaitis, P.G. (eds.) ICDT 1997. LNCS, vol. 1186, pp. 336–350. Springer, Heidelberg (1996)CrossRefGoogle Scholar
  3. 3.
    Buneman, P., Davidson, S., Hillebrand, G., Suciu, D.: A query language and optimization techniques for unstructured data. In: SIGMOD, pp. 505–516 (1996); long version appears as U.Penn TR MS-CIS-96-09Google Scholar
  4. 4.
    Buneman, P., Fernandez, M.F., Suciu, D.: UnQL: a query language and algebra for semistructured data based on structural recursion. VLDB J. 9(1), 76–110 (2000)CrossRefGoogle Scholar
  5. 5.
    Ehrig, K., Guerra, E., de Lara, J., Lengyel, L., Levendovszky, T., Prange, U., Taentzer, G., Varró, D., Varró-Gyapay, S.: Model transformation by graph transformation: A comparative study. Presented at MTiP (2005), http://www.inf.mit.bme.hu/FTSRG/Publications/varro/2005/mtip05.pdf
  6. 6.
    Hidaka, S., Hu, Z., Inaba, K., Kato, H., Matsuda, K., Nakano, K.: Bidirectionalizing graph transformations. In: ACM SIGPLAN International Conference on Functional Programming, pp. 205–216. ACM (2010)Google Scholar
  7. 7.
    Hidaka, S., Hu, Z., Inaba, K., Kato, H., Matsuda, K., Nakano, K., Sasano, I.: Marker-directed Optimization of UnCAL Graph Transformations (revised version). Technical Report GRACE-TR-2011-06, GRACE Center, National Institute of Informatics (November 2011)Google Scholar
  8. 8.
    Hidaka, S., Hu, Z., Kato, H., Nakano, K.: Towards a compositional approach to model transformation for software development. In: SAC 2009, pp. 468–475 (2009)Google Scholar
  9. 9.
    Rozenberg, G. (ed.): Handbook of Graph Grammars and Computing by Graph Transformations. Volume 1: Foundations. World Scientific (1997)Google Scholar
  10. 10.
    Sasano, I., Hu, Z., Hidaka, S., Inaba, K., Kato, H., Nakano, K.: Toward Bidirectionalization of ATL with GRoundTram. In: Cabot, J., Visser, E. (eds.) ICMT 2011. LNCS, vol. 6707, pp. 138–151. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  11. 11.
    Stevens, P.: Bidirectional Model Transformations in QVT: Semantic Issues and Open Questions. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MoDELS 2007. LNCS, vol. 4735, pp. 1–15. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  12. 12.
    Wadler, P.: Deforestation: Transforming Programs to Eliminate Trees. In: Ganzinger, H. (ed.) ESOP 1988. LNCS, vol. 300, pp. 344–358. Springer, Heidelberg (1988)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Soichiro Hidaka
    • 1
  • Zhenjiang Hu
    • 1
  • Kazuhiro Inaba
    • 1
  • Hiroyuki Kato
    • 1
  • Kazutaka Matsuda
    • 3
  • Keisuke Nakano
    • 2
  • Isao Sasano
    • 4
  1. 1.National Institute of InformaticsJapan
  2. 2.The University of Electro-CommunicationsJapan
  3. 3.Tohoku UniversityJapan
  4. 4.Shibaura Institute of TechnologyJapan

Personalised recommendations