Manual and automated performance optimization of model transformation systems

  • Tamás MészárosEmail author
  • Gergely Mezei
  • Tihamér Levendovszky
  • Márk Asztalos


Model-based development is one of the most promising solutions for several problems of industrial software engineering. Graph transformation is a proven method for processing domain-specific models. However, in order to be used by domain experts without graph transformation experts, it must be fast even if not tweaked for speed manually based on knowledge available only to the implementers of the transformation system. In this paper, we compare the performance of such manual optimizations with a solution using automated optimization based on sharing of matches between overlapping left-hand-sides of sequentially independent rules. This yields a 11% improvement in our scenario, although our prototypical implementation only exploits overlapping between, at most, two rules, and the analyzed benchmark does not contain many cases where the optimization is applicable.


Model transformation Graph rewriting Overlapped matching VMTS 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Heckel, R.: Graph transformation in a nutshell. In: Language Engineering for Model-Driven Software Development. Dagstuhl Seminar Proceedings, vol. 04101. Internationales Begegnungs- und Forschungszentrum für Informatik (IBFI), Schloss Dagstuhl, Germany (2004)Google Scholar
  2. 2.
    Vizhányó, A., Agrawal, A., Shi, F.: Towards generation of efficient transformations. In: Proceedings of 3rd International Conference on Generative Programming and Component Engineering (GPCE 2004), LNCS, vol. 3286, pp. 298–316 (2004)Google Scholar
  3. 3.
    Klein, T., Nickel, U., Niere, J., Zündorf, A.: From UML to Java and back again. Technical report, University of Paderborn (2000)Google Scholar
  4. 4.
    de Lara, J., Vangheluwe, H.: AToM3: a tool for multi-formalism and meta-modeling. In: Fundamental Approaches to Software Engineering, LNCS, vol. 2306, pp. 174–188 (2002)Google Scholar
  5. 5.
    Visual Modeling and Transformation System.
  6. 6.
    4th International Workshop on Graph-Based Tools.
  7. 7.
    Lengyel L., Levendovszky L., Mezei G.: Model transformation with a visual control flow language. Int. J. Comput. Sci. 1, 45–53 (2006)Google Scholar
  8. 8.
    Batz, G. V., Kroll, M., Geiß, R.: A first experimental evaluation of search plan driven graph pattern matching. In: Proceedings of the 3rd International Workshop on Applications of Graph Transformation with Industrial Relevance (AGTIVE ’07). Springer, New York (2008)Google Scholar
  9. 9.
    Durstenfeld, R.: Commun. ACM 7, 420 pp (1964)Google Scholar
  10. 10.
    Heckel, R., Küster, J. M., Taentzer, G.: Confluence of typed attributed graph transformation systems. In: Proceedings of ICGT 2002. LNCS, vol. 2505, pp. 161–176 (2002)Google Scholar
  11. 11.
    Ehrig H., Ehrig K., Prange U., Taentzer G.: Fundamentals of algebraic graph transformation. In: (eds) In: Monographs in Theoretical Computer Science., Springer, New York (2006)Google Scholar
  12. 12.
    Varró, G., Varró, D.: Graph transformation with incremental updates. In: Proceedings of Graph Transformation and Visual Modelling Techniques (GT-VMT 2004), Barcelona, Spain (2004)Google Scholar
  13. 13.
    Varró, G., Varró, D., Schürr, A.: Incremental graph pattern matching: data structures and initial experiments. In: Graph and Model Transformation (GraMoT). Electronic Communications of the EASST, vol. 4 (2006)Google Scholar
  14. 14.
    Varró, D., Automated model transformations for the analysis of IT systems. PhD thesis. (2004)
  15. 15.
    Varró, G., Varró, D., Friedl, K.: Adaptive graph pattern matching for model transformations using model-sensitive search plans. In: Proceedings of International Workshop on Graph and Model Transformation (GraMoT’05), ENTCS, vol. 152, pp. 191–205. Elsevier (2005)Google Scholar
  16. 16.
    Edmonds J.: Optimum branchings. J. Res. Natl. Bur. Stand. 71, 233–240 (1967)zbMATHMathSciNetGoogle Scholar
  17. 17.
    Geiß, R., Batz., G. V., Grund, D., Hack, S., Szalkowski, A.M.: GrGen: a fast SPO-based graph rewriting tool. In: Graph Transformations (ICGT 2006), pp. 383–397. Springer, New York (2006)Google Scholar
  18. 18.
    Fischer, T., Niere, J., Torunski, L., Zndorf, A.: Story diagrams: a new graph rewrite language based on the unified modeling language. In: Proceedings of the 6th International Workshop on Theory and Application of Graph Transformation (TAGT), LNCS, vol. 1764, pp. 296–309. Springer, New York (1998)Google Scholar
  19. 19.
    Zündorf, A.: Graph pattern-matching in PROGRES. In: Proceedings of the 5th International Workshop on Graph Grammars and their Application to Computer Science, LNCS, vol. 1073, pp. 454–468 (1996)Google Scholar
  20. 20.
    Taentzer, G.: AGG: A graph transformation environment for modeling and valodation of software. In: Application of Graph Transformations with Industrial Relevance (AGTIVE 2004). Springer, New York (2004)Google Scholar

Copyright information

© Springer-Verlag 2010

Authors and Affiliations

  • Tamás Mészáros
    • 1
    Email author
  • Gergely Mezei
    • 1
  • Tihamér Levendovszky
    • 1
  • Márk Asztalos
    • 1
  1. 1.Department of Automation and Applied InformaticsBudapest University of Technology and EconomicsBudapestHungary

Personalised recommendations