SlideShare a Scribd company logo
1 of 22
Download to read offline
Budapest University of Technology and Economics




               A Benchmark Evaluation for
             Incremental Pattern Matching in
                  Graph Transformation


                   Gábor Bergmann, Ákos Horváth,
                      István Ráth, Dániel Varró




Fault-tolerant Systems Research Group
Budapest University of Technology and Economics                        2


Talk Overview


                                                          GT &
                           Introduction                incremental
                                                         overview




                           Case studies                Measurements




   Fault-tolerant Systems Research Group                              ICGT '08
Budapest University of Technology and Economics         3


Benchmarking
 Aim:
  −   systematic and reproducible measurements
  −   on performance
  −   under different and precisely defined circumstances
 Overall goal:
  −   help transformation engineers in selecting tools
  −   Serve as reference for future research
 Popular approach in different fields
  −   AI
  −   relational databases
  −   rule-based expert systems
      Fault-tolerant Systems Research Group               ICGT '08
Budapest University of Technology and Economics          4


Benchmarking in graph transformation
 Specification examples for GT
  −   Goal: assessing expressiveness
  −   UML-to-XMI, object-relational mapping,
      UML-to-EJB, etc.
 „Generic” Performance benchmarks for GT
  −   Varró benchmark
  −   R. Geiß and M. Kroll: On Improvements of the Varró
      Benchmark for Graph Transformation Tools
  −   (Agtive Tool Contest, Grabats ’08, …)
 In our paper:
  Benchmarks for graph transformation with
  incremental pattern matching
  −   simulation
  −   synchronization

      Fault-tolerant Systems Research Group                ICGT '08
Budapest University of Technology and Economics                        5


Talk overview


                                                          GT &
                           Introduction                incremental
                                                         overview




                          Case Studies                 Measurements




   Fault-tolerant Systems Research Group                              ICGT '08
Budapest University of Technology and Economics                                                6


Metamodeling
                                                                                    Class
                                             1
           At most one                  tokens         Place
                                                 1
                                                                             Association
                                    *                           1
                                                       outarc
       Metamodel
                                  Token                                      Multiplicity
                                                     inarc
                                                 *                  *        constraint
              Arbitrary
         Slot                                        Transition
                                                                                   Instance model

                                             t1:Transition              Object

                                   a4:outarc                 a3:inarc

          p1:Place                               Link                              p3:Place
                                    a1:inarc            a2:outarc
  tkn3:tokens

         to1:Token                           t2:Transition


    Fault-tolerant Systems Research Group                                                      ICGT '08
Budapest University of Technology and Economics                                    7


Graph Transformation


     LHS                                                                       RHS
                a1:inarc   a2:outarc                          a1:inarc   a2:outarc
          Place      Tran.     Place                    Place      Tran.      Plan
               ttn1:tokens                                           tkn2:tokens
         Token                                                               Token


                                      matching                                updating



  Phases of GT matching
     – Pattern Matching phase
     – Updating phase: delete+ create

  Pattern Matching is the most critical issue from
    performance viewpoint
    Fault-tolerant Systems Research Group
Budapest University of Technology and Economics           8


Incremental Pattern Matching
 Precondition of GT rules  pattern matching
 Goal
  −   Store matching sets
  −   Incremental update
  −   Fast response
 Good performance expected when:
  −   frequent pattern matching
  −   Small updates
 Possible application domain
  −   E.g. synchronization, constraints, model simulation, etc.
 An adapted RETE algorithm

      Fault-tolerant Systems Research Group
Budapest University of Technology and Economics                                                            9


Incremental Pattern Matching Example
• RETE net
   – nodes: intermediate matchings                                               INPUT
                                                       t3
   – edge: update propagation                                               p1p2p3 t1 t2 k1 k2 t3

• Example                                                     t3                        t3            t3

   – input: Petri net
                                                            Place             Token             Transition
   – pattern: firable transition                            p1p2 p3            k1 k2                t1 t2 t3

   – update: new transition
                                                                                                               t3

                                                                       p1, k1 p2, k2

                        t1
    p1
                                                                                       p1, k1, t1   p2, k2, t3
    p3                                p2
                        t2                                                                      p2, k2, t3

                                                           p1, k1, t1, p3 p2, k2, t2, p3

                        t3

    Fault-tolerant Systems Research Group
Budapest University of Technology and Economics                       10


Talk overview


                                                          GT &
                           Introduction                incremental
                                                         overview




                          Case Studies                 Measurements




   Fault-tolerant Systems Research Group                              ICGT '08
Budapest University of Technology and Economics                                     11


Test Cases
 Model Simulation                                         Synchronization
  −   Visual languages                                      −   Match reusability
  −   Static graph structure                                −   Unidirectional
  −   Small local model                                     −   Complex rules
      manipulation                                          −   Batch like execution
  −   ALAP execution




         Petri Net simulation                               ORM synchronization



      Fault-tolerant Systems Research Group                                            ICGT '08
Budapest University of Technology and Economics                                          12


Petri net Simulation                                     Sequential Transition
 Test Case generation                                    reduction
   − Inverse property preservation
     reduction operation
   − Random weighted select
   − Few tokens
   − Transition/Place ~ 1.1
   − Starting from:
                                                          Characteristics
                                                              Paradigm
  Execution                                                  Features        Petri Net
    − Random fireable transition                              LHS size          small

      selection                                                fan-out          small

    − 1000 / 1000000 iterations                              matchings           PD
                                                            transformation
    − Measured:
                                                               sequence
      Total execution time                                       length      Small/ Long
    Fault-tolerant Systems Research Group                                                 ICGT '08
Budapest University of Technology and Economics                                    13


Object-Relational Mapping: Synchronization
                                      :schemaRef
               : Package                                   : Schema


                                      :tableRef
                 : Class                                    : Table

                                     :columnRef
       : Attribute     : Attribute                    : Column   : Column


                                     :columnRef
                                                           Sync order
                  orphanTable
                                                           1. Orphan schema delete
NEG
                                                           2. Orphan Tableclass delete
                      : tablerRef
      C: Class                                             3. Orphan Tableassoc delete
                                         {DEL}             4. Orphan Columnattr. Delete
 OR                                     T : Table          5. Renaming
                                                           6. new Classes/Assocs/Columns
 A: Association                                                 created
                       : tableRef

      Fault-tolerant Systems Research Group                                           ICGT '08
Budapest University of Technology and Economics                                              14


Object-Relational Mapping: Synchronization
 Test Case generation                            Source modification
                                                          −   1/3 classes deleted
  −   Fully connected graph
                                                          −   1/5 associations deletes
  −   N classes                                           −   ½ attributes renamed
  −   N(N-1) directed association                         −   1 new class added and the fully
  −   K attributes                                            connected graph is rebuilt

 Execution                                                      Characteristic
  −     Phases                                                        Paradigm
                                                                      Features       ORM Syn.
        1.   Generation
                                                                      LHS size         large
        2.   Build
                                                                       fan-out       medium
        3.   Modification
                                                                      matchings        PD
        4.   Synchronization
                                                                    transformation
  −     Measured:                                                      sequence
                                                                         length        PD
        Synchronization phase
      Fault-tolerant Systems Research Group                                                     ICGT '08
Budapest University of Technology and Economics                       15


Talk overview


                                                          GT &
                           Introduction                incremental
                                                         overview




                          Case Studies                 Measurements




   Fault-tolerant Systems Research Group                              ICGT '08
Budapest University of Technology and Economics        16


Environment
 Hardware and OS
  −    2 GHz Core2
  −   2048 MB RAM
  −   Linux kernel of version 2.6.22
  −   Sun JVM 1.6.0_05 for VIATRA
  −   .Net 3.0 on Windows Vista
 Tool related
  −   VIATRA with and GrGen withouth GUI
  −   Standard services of the default distribution


      Fault-tolerant Systems Research Group               ICGT '08
Budapest University of Technology and Economics        17


Results of the Petri Net Simulation




               •Constant time!
               •Predictable runtime
               •Comparable with
               compiled LS




   Fault-tolerant Systems Research Group               ICGT '08
Budapest University of Technology and Economics                               18


Result of the ORM Synchronization
                                                                       build – RETE
 ORM Build and Synchronization                                         sync – RETE
                                                                       build – LS
     100000
                                                                       sync – LS
            10000


                    1000
    Execution time [ms]




                          100

                                                       •Execution time:
                           10
                                                           •Rete: linear
                            1                              •LS: exponential
                                85   705   1925   7600 in number of 67800
                                                         17025 30200 affected element

                                            Model size [N]

   Fault-tolerant Systems Research Group                                         ICGT '08
Budapest University of Technology and Economics                               19


Varró: STS Benchmark
•Non reusable model
                                VIATRA/RETE
Performance on STS mutex benchmark
elements
•Suites better for LS           VIATRA/LS
   1000000
                                GrGen.NET

        100000



                10000
  Execution time (ms)




                        1000



                         100
                                  100       200        500      1000        3000   10000   30000

                                               Size of process ring [node count]



                        Fault-tolerant Systems Research Group                                      ICGT '08
Budapest University of Technology and Economics             20


Summary
 Rete based incremental PM
   −   Increased memory consumption
   −   Fix overhead
   −   Predictable linear scaling for practical problems
   −   Comparable performance with fastest LSs in some cases.
 Contribution to Benchmarking of GTs
   −   2 new benchmarks for assessing incremental PM
   −   Larger models
   −   ALAP execution
 Different matching strategies for different
   −   Execution phases
   −   Patterns in a transformation?
 In overall the performance of GT tools are satisfying.
 Benchmark example descriptions, specifications, and
  measurement results available at:
         ● http://wiki.eclipse.org/VIATRA2/Benchmarks


       Fault-tolerant Systems Research Group                    ICGT '08
Budapest University of Technology and Economics                              21




                                        :schemaRef
                 : Package                                     : Schema


                                        :tableRef
                   : Class                                      : Table

                                        :columnRef
         : Attribute      : Attribute                     : Column   : Column


                                        :columnRef

                  orphanTable
NEG
                       : tablerRef
     C: Class
                                         {DEL}
OR                                      T : Table

 A: Association
                        : tableRef

      Fault-tolerant Systems Research Group                                     ICGT '08
Budapest University of Technology and Economics        22




Fault-tolerant Systems Research Group               ICGT '08

More Related Content

What's hot

Research Inventy : International Journal of Engineering and Science is publis...
Research Inventy : International Journal of Engineering and Science is publis...Research Inventy : International Journal of Engineering and Science is publis...
Research Inventy : International Journal of Engineering and Science is publis...
researchinventy
 
Research Inventy : International Journal of Engineering and Science is publis...
Research Inventy : International Journal of Engineering and Science is publis...Research Inventy : International Journal of Engineering and Science is publis...
Research Inventy : International Journal of Engineering and Science is publis...
researchinventy
 
R & CDK: A Sturdy Platform in the Oceans of Chemical Data}
R & CDK: A Sturdy Platform in the Oceans of Chemical Data}R & CDK: A Sturdy Platform in the Oceans of Chemical Data}
R & CDK: A Sturdy Platform in the Oceans of Chemical Data}
Rajarshi Guha
 
Knowledge-poor and Knowledge-rich Approaches for Multilingual Terminology Ext...
Knowledge-poor and Knowledge-rich Approaches for Multilingual Terminology Ext...Knowledge-poor and Knowledge-rich Approaches for Multilingual Terminology Ext...
Knowledge-poor and Knowledge-rich Approaches for Multilingual Terminology Ext...
Christophe Tricot
 
Yet another object system for R
Yet another object system for RYet another object system for R
Yet another object system for R
Hadley Wickham
 

What's hot (16)

Transformer Zoo
Transformer ZooTransformer Zoo
Transformer Zoo
 
A Logic Meta-Programming Foundation for Example-Driven Pattern Detection in O...
A Logic Meta-Programming Foundation for Example-Driven Pattern Detection in O...A Logic Meta-Programming Foundation for Example-Driven Pattern Detection in O...
A Logic Meta-Programming Foundation for Example-Driven Pattern Detection in O...
 
Multi-dimensional exploration of API usage - ICPC13 - 21-05-13
Multi-dimensional exploration of API usage - ICPC13 - 21-05-13Multi-dimensional exploration of API usage - ICPC13 - 21-05-13
Multi-dimensional exploration of API usage - ICPC13 - 21-05-13
 
Iy3116761679
Iy3116761679Iy3116761679
Iy3116761679
 
Research Inventy : International Journal of Engineering and Science is publis...
Research Inventy : International Journal of Engineering and Science is publis...Research Inventy : International Journal of Engineering and Science is publis...
Research Inventy : International Journal of Engineering and Science is publis...
 
Research Inventy : International Journal of Engineering and Science is publis...
Research Inventy : International Journal of Engineering and Science is publis...Research Inventy : International Journal of Engineering and Science is publis...
Research Inventy : International Journal of Engineering and Science is publis...
 
R & CDK: A Sturdy Platform in the Oceans of Chemical Data}
R & CDK: A Sturdy Platform in the Oceans of Chemical Data}R & CDK: A Sturdy Platform in the Oceans of Chemical Data}
R & CDK: A Sturdy Platform in the Oceans of Chemical Data}
 
Theory Psyco
Theory PsycoTheory Psyco
Theory Psyco
 
Summer training vhdl
Summer training vhdlSummer training vhdl
Summer training vhdl
 
Cg in Two Pages
Cg in Two PagesCg in Two Pages
Cg in Two Pages
 
Seminar on quantum automata (complete)
Seminar on quantum automata (complete)Seminar on quantum automata (complete)
Seminar on quantum automata (complete)
 
Reverse-Engineering Reusable Language Modules from Legacy DSLs
Reverse-Engineering Reusable Language Modules from Legacy DSLsReverse-Engineering Reusable Language Modules from Legacy DSLs
Reverse-Engineering Reusable Language Modules from Legacy DSLs
 
A Follow-up Cg Runtime Tutorial for Readers of The Cg Tutorial
A Follow-up Cg Runtime Tutorial for Readers of The Cg TutorialA Follow-up Cg Runtime Tutorial for Readers of The Cg Tutorial
A Follow-up Cg Runtime Tutorial for Readers of The Cg Tutorial
 
Challenges for advanced domain-specific frameworks
Challenges for advanced domain-specific frameworksChallenges for advanced domain-specific frameworks
Challenges for advanced domain-specific frameworks
 
Knowledge-poor and Knowledge-rich Approaches for Multilingual Terminology Ext...
Knowledge-poor and Knowledge-rich Approaches for Multilingual Terminology Ext...Knowledge-poor and Knowledge-rich Approaches for Multilingual Terminology Ext...
Knowledge-poor and Knowledge-rich Approaches for Multilingual Terminology Ext...
 
Yet another object system for R
Yet another object system for RYet another object system for R
Yet another object system for R
 

Similar to A benchmark evaluation for incremental pattern matching in graph transformation

Research Inventy: International Journal of Engineering and Science
Research Inventy: International Journal of Engineering and ScienceResearch Inventy: International Journal of Engineering and Science
Research Inventy: International Journal of Engineering and Science
researchinventy
 
GeneIndex: an open source parallel program for enumerating and locating words...
GeneIndex: an open source parallel program for enumerating and locating words...GeneIndex: an open source parallel program for enumerating and locating words...
GeneIndex: an open source parallel program for enumerating and locating words...
PTIHPA
 
Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)
IJERD Editor
 
Inside LoLA - Experiences from building a state space tool for place transiti...
Inside LoLA - Experiences from building a state space tool for place transiti...Inside LoLA - Experiences from building a state space tool for place transiti...
Inside LoLA - Experiences from building a state space tool for place transiti...
Universität Rostock
 
Performances des turbo codes parallèles pour un canal satellite non linéaire
Performances des turbo codes parallèles pour un canal satellite non linéairePerformances des turbo codes parallèles pour un canal satellite non linéaire
Performances des turbo codes parallèles pour un canal satellite non linéaire
Rachidz
 

Similar to A benchmark evaluation for incremental pattern matching in graph transformation (20)

Incremental pattern matching in the VIATRA2 model transformation system
Incremental pattern matching in the VIATRA2 model transformation systemIncremental pattern matching in the VIATRA2 model transformation system
Incremental pattern matching in the VIATRA2 model transformation system
 
Live model transformations driven by incremental pattern matching
Live model transformations driven by incremental pattern matchingLive model transformations driven by incremental pattern matching
Live model transformations driven by incremental pattern matching
 
10.1.1.63.7976
10.1.1.63.797610.1.1.63.7976
10.1.1.63.7976
 
Incremental pattern matching in the VIATRA2 model transformation framework
Incremental pattern matching in the VIATRA2 model transformation frameworkIncremental pattern matching in the VIATRA2 model transformation framework
Incremental pattern matching in the VIATRA2 model transformation framework
 
Efficient Model Partitioning for Distributed Model Transformations
Efficient Model Partitioning for Distributed Model TransformationsEfficient Model Partitioning for Distributed Model Transformations
Efficient Model Partitioning for Distributed Model Transformations
 
Review On 2:4 Decoder By Reversible Logic Gates For Low Power Consumption
Review On 2:4 Decoder By Reversible Logic Gates For Low Power ConsumptionReview On 2:4 Decoder By Reversible Logic Gates For Low Power Consumption
Review On 2:4 Decoder By Reversible Logic Gates For Low Power Consumption
 
Yahoo search-study
Yahoo search-studyYahoo search-study
Yahoo search-study
 
70
7070
70
 
An Efficient Construction of Online Testable Circuits using Reversible Logic ...
An Efficient Construction of Online Testable Circuits using Reversible Logic ...An Efficient Construction of Online Testable Circuits using Reversible Logic ...
An Efficient Construction of Online Testable Circuits using Reversible Logic ...
 
Research Inventy: International Journal of Engineering and Science
Research Inventy: International Journal of Engineering and ScienceResearch Inventy: International Journal of Engineering and Science
Research Inventy: International Journal of Engineering and Science
 
GeneIndex: an open source parallel program for enumerating and locating words...
GeneIndex: an open source parallel program for enumerating and locating words...GeneIndex: an open source parallel program for enumerating and locating words...
GeneIndex: an open source parallel program for enumerating and locating words...
 
Performance Analysis of Differential Beamforming in Decentralized Networks
Performance Analysis of Differential Beamforming in Decentralized NetworksPerformance Analysis of Differential Beamforming in Decentralized Networks
Performance Analysis of Differential Beamforming in Decentralized Networks
 
Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)
 
Ko2518481855
Ko2518481855Ko2518481855
Ko2518481855
 
Ko2518481855
Ko2518481855Ko2518481855
Ko2518481855
 
Cb32492496
Cb32492496Cb32492496
Cb32492496
 
Inside LoLA - Experiences from building a state space tool for place transiti...
Inside LoLA - Experiences from building a state space tool for place transiti...Inside LoLA - Experiences from building a state space tool for place transiti...
Inside LoLA - Experiences from building a state space tool for place transiti...
 
Gene's law
Gene's lawGene's law
Gene's law
 
Performances des turbo codes parallèles pour un canal satellite non linéaire
Performances des turbo codes parallèles pour un canal satellite non linéairePerformances des turbo codes parallèles pour un canal satellite non linéaire
Performances des turbo codes parallèles pour un canal satellite non linéaire
 
Fx3111501156
Fx3111501156Fx3111501156
Fx3111501156
 

More from Istvan Rath

The SENSORIA Development Environment
The SENSORIA Development EnvironmentThe SENSORIA Development Environment
The SENSORIA Development Environment
Istvan Rath
 

More from Istvan Rath (20)

Cloud-based Modelling Solutions Empowering Tool Integration
Cloud-based Modelling Solutions Empowering Tool IntegrationCloud-based Modelling Solutions Empowering Tool Integration
Cloud-based Modelling Solutions Empowering Tool Integration
 
Cloud-based Modelling Solutions Empowering Tool Integration
Cloud-based Modelling Solutions Empowering Tool IntegrationCloud-based Modelling Solutions Empowering Tool Integration
Cloud-based Modelling Solutions Empowering Tool Integration
 
MBSE meets Industrial IoT: Introducing the New MagicDraw Plug-in for RTI Co...
MBSE meets Industrial IoT: Introducing the New MagicDraw Plug-in for RTI Co...MBSE meets Industrial IoT: Introducing the New MagicDraw Plug-in for RTI Co...
MBSE meets Industrial IoT: Introducing the New MagicDraw Plug-in for RTI Co...
 
IncQuery Server for Teamwork Cloud - Talk at IW2019
IncQuery Server for Teamwork Cloud - Talk at IW2019IncQuery Server for Teamwork Cloud - Talk at IW2019
IncQuery Server for Teamwork Cloud - Talk at IW2019
 
VIATRA 2.0 Webinar
VIATRA 2.0 WebinarVIATRA 2.0 Webinar
VIATRA 2.0 Webinar
 
Easier smart home development with simulators and rule engines
Easier smart home development with simulators and rule enginesEasier smart home development with simulators and rule engines
Easier smart home development with simulators and rule engines
 
Eclipse VIATRA Overview 2017
Eclipse VIATRA Overview 2017Eclipse VIATRA Overview 2017
Eclipse VIATRA Overview 2017
 
Smarter internet of things with stream and event processing virtual io_t_meet...
Smarter internet of things with stream and event processing virtual io_t_meet...Smarter internet of things with stream and event processing virtual io_t_meet...
Smarter internet of things with stream and event processing virtual io_t_meet...
 
Modes3: Model-based Demonstrator for Smart and Safe Systems
Modes3: Model-based Demonstrator for Smart and Safe SystemsModes3: Model-based Demonstrator for Smart and Safe Systems
Modes3: Model-based Demonstrator for Smart and Safe Systems
 
Eclipse DemoCamp Budapest 2016 November: Best of EclipseCon Europe 2016
Eclipse DemoCamp Budapest 2016 November: Best of EclipseCon Europe 2016Eclipse DemoCamp Budapest 2016 November: Best of EclipseCon Europe 2016
Eclipse DemoCamp Budapest 2016 November: Best of EclipseCon Europe 2016
 
Exploring the Future of Eclipse Modeling: Web and Semantic Collaboration
Exploring the Future of Eclipse Modeling: Web and Semantic CollaborationExploring the Future of Eclipse Modeling: Web and Semantic Collaboration
Exploring the Future of Eclipse Modeling: Web and Semantic Collaboration
 
Okosabb Internet of Things rendszerek komplex eseményfeldolgozás alkalmazásával
Okosabb Internet of Things rendszerek komplex eseményfeldolgozás alkalmazásával Okosabb Internet of Things rendszerek komplex eseményfeldolgozás alkalmazásával
Okosabb Internet of Things rendszerek komplex eseményfeldolgozás alkalmazásával
 
IoT Supercharged: Complex event processing for MQTT with Eclipse technologies
IoT Supercharged: Complex event processing for MQTT with Eclipse technologiesIoT Supercharged: Complex event processing for MQTT with Eclipse technologies
IoT Supercharged: Complex event processing for MQTT with Eclipse technologies
 
mbeddr meets IncQuer - Combining the Best Features of Two Modeling Worlds
mbeddr meets IncQuer - Combining the Best Features of Two Modeling Worldsmbeddr meets IncQuer - Combining the Best Features of Two Modeling Worlds
mbeddr meets IncQuer - Combining the Best Features of Two Modeling Worlds
 
Xcore meets IncQuery: How the New Generation of DSLs are Made
Xcore meets IncQuery: How the New Generation of DSLs are MadeXcore meets IncQuery: How the New Generation of DSLs are Made
Xcore meets IncQuery: How the New Generation of DSLs are Made
 
EMF-IncQuery 0.7 Presentation for Itemis
EMF-IncQuery 0.7 Presentation for ItemisEMF-IncQuery 0.7 Presentation for Itemis
EMF-IncQuery 0.7 Presentation for Itemis
 
Event-driven Model Transformations in Domain-specific Modeling Languages
Event-driven Model Transformations in Domain-specific Modeling LanguagesEvent-driven Model Transformations in Domain-specific Modeling Languages
Event-driven Model Transformations in Domain-specific Modeling Languages
 
The SENSORIA Development Environment
The SENSORIA Development EnvironmentThe SENSORIA Development Environment
The SENSORIA Development Environment
 
Transzformációk integrált alkalmazása a modellvezérelt szoftverfejlesztésben
Transzformációk integrált alkalmazása a modellvezérelt szoftverfejlesztésbenTranszformációk integrált alkalmazása a modellvezérelt szoftverfejlesztésben
Transzformációk integrált alkalmazása a modellvezérelt szoftverfejlesztésben
 
Change-driven model transformations
Change-driven model transformationsChange-driven model transformations
Change-driven model transformations
 

Recently uploaded

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Recently uploaded (20)

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 

A benchmark evaluation for incremental pattern matching in graph transformation

  • 1. Budapest University of Technology and Economics A Benchmark Evaluation for Incremental Pattern Matching in Graph Transformation Gábor Bergmann, Ákos Horváth, István Ráth, Dániel Varró Fault-tolerant Systems Research Group
  • 2. Budapest University of Technology and Economics 2 Talk Overview GT & Introduction incremental overview Case studies Measurements Fault-tolerant Systems Research Group ICGT '08
  • 3. Budapest University of Technology and Economics 3 Benchmarking  Aim: − systematic and reproducible measurements − on performance − under different and precisely defined circumstances  Overall goal: − help transformation engineers in selecting tools − Serve as reference for future research  Popular approach in different fields − AI − relational databases − rule-based expert systems Fault-tolerant Systems Research Group ICGT '08
  • 4. Budapest University of Technology and Economics 4 Benchmarking in graph transformation  Specification examples for GT − Goal: assessing expressiveness − UML-to-XMI, object-relational mapping, UML-to-EJB, etc.  „Generic” Performance benchmarks for GT − Varró benchmark − R. Geiß and M. Kroll: On Improvements of the Varró Benchmark for Graph Transformation Tools − (Agtive Tool Contest, Grabats ’08, …)  In our paper: Benchmarks for graph transformation with incremental pattern matching − simulation − synchronization Fault-tolerant Systems Research Group ICGT '08
  • 5. Budapest University of Technology and Economics 5 Talk overview GT & Introduction incremental overview Case Studies Measurements Fault-tolerant Systems Research Group ICGT '08
  • 6. Budapest University of Technology and Economics 6 Metamodeling Class 1 At most one tokens Place 1 Association * 1 outarc Metamodel Token Multiplicity inarc * * constraint Arbitrary Slot Transition Instance model t1:Transition Object a4:outarc a3:inarc p1:Place Link p3:Place a1:inarc a2:outarc tkn3:tokens to1:Token t2:Transition Fault-tolerant Systems Research Group ICGT '08
  • 7. Budapest University of Technology and Economics 7 Graph Transformation LHS RHS a1:inarc a2:outarc a1:inarc a2:outarc Place Tran. Place Place Tran. Plan ttn1:tokens tkn2:tokens Token Token matching updating Phases of GT matching – Pattern Matching phase – Updating phase: delete+ create Pattern Matching is the most critical issue from performance viewpoint Fault-tolerant Systems Research Group
  • 8. Budapest University of Technology and Economics 8 Incremental Pattern Matching  Precondition of GT rules  pattern matching  Goal − Store matching sets − Incremental update − Fast response  Good performance expected when: − frequent pattern matching − Small updates  Possible application domain − E.g. synchronization, constraints, model simulation, etc.  An adapted RETE algorithm Fault-tolerant Systems Research Group
  • 9. Budapest University of Technology and Economics 9 Incremental Pattern Matching Example • RETE net – nodes: intermediate matchings INPUT t3 – edge: update propagation p1p2p3 t1 t2 k1 k2 t3 • Example t3 t3 t3 – input: Petri net Place Token Transition – pattern: firable transition p1p2 p3 k1 k2 t1 t2 t3 – update: new transition t3 p1, k1 p2, k2 t1 p1 p1, k1, t1 p2, k2, t3 p3 p2 t2 p2, k2, t3 p1, k1, t1, p3 p2, k2, t2, p3 t3 Fault-tolerant Systems Research Group
  • 10. Budapest University of Technology and Economics 10 Talk overview GT & Introduction incremental overview Case Studies Measurements Fault-tolerant Systems Research Group ICGT '08
  • 11. Budapest University of Technology and Economics 11 Test Cases  Model Simulation  Synchronization − Visual languages − Match reusability − Static graph structure − Unidirectional − Small local model − Complex rules manipulation − Batch like execution − ALAP execution Petri Net simulation ORM synchronization Fault-tolerant Systems Research Group ICGT '08
  • 12. Budapest University of Technology and Economics 12 Petri net Simulation  Sequential Transition  Test Case generation reduction − Inverse property preservation reduction operation − Random weighted select − Few tokens − Transition/Place ~ 1.1 − Starting from:  Characteristics Paradigm  Execution Features Petri Net − Random fireable transition LHS size small selection fan-out small − 1000 / 1000000 iterations matchings PD transformation − Measured: sequence Total execution time length Small/ Long Fault-tolerant Systems Research Group ICGT '08
  • 13. Budapest University of Technology and Economics 13 Object-Relational Mapping: Synchronization :schemaRef : Package : Schema :tableRef : Class : Table :columnRef : Attribute : Attribute : Column : Column :columnRef Sync order orphanTable 1. Orphan schema delete NEG 2. Orphan Tableclass delete : tablerRef C: Class 3. Orphan Tableassoc delete {DEL} 4. Orphan Columnattr. Delete OR T : Table 5. Renaming 6. new Classes/Assocs/Columns A: Association created : tableRef Fault-tolerant Systems Research Group ICGT '08
  • 14. Budapest University of Technology and Economics 14 Object-Relational Mapping: Synchronization  Test Case generation  Source modification − 1/3 classes deleted − Fully connected graph − 1/5 associations deletes − N classes − ½ attributes renamed − N(N-1) directed association − 1 new class added and the fully − K attributes connected graph is rebuilt  Execution  Characteristic − Phases Paradigm Features ORM Syn. 1. Generation LHS size large 2. Build fan-out medium 3. Modification matchings PD 4. Synchronization transformation − Measured: sequence length PD Synchronization phase Fault-tolerant Systems Research Group ICGT '08
  • 15. Budapest University of Technology and Economics 15 Talk overview GT & Introduction incremental overview Case Studies Measurements Fault-tolerant Systems Research Group ICGT '08
  • 16. Budapest University of Technology and Economics 16 Environment  Hardware and OS − 2 GHz Core2 − 2048 MB RAM − Linux kernel of version 2.6.22 − Sun JVM 1.6.0_05 for VIATRA − .Net 3.0 on Windows Vista  Tool related − VIATRA with and GrGen withouth GUI − Standard services of the default distribution Fault-tolerant Systems Research Group ICGT '08
  • 17. Budapest University of Technology and Economics 17 Results of the Petri Net Simulation •Constant time! •Predictable runtime •Comparable with compiled LS Fault-tolerant Systems Research Group ICGT '08
  • 18. Budapest University of Technology and Economics 18 Result of the ORM Synchronization build – RETE ORM Build and Synchronization sync – RETE build – LS 100000 sync – LS 10000 1000 Execution time [ms] 100 •Execution time: 10 •Rete: linear 1 •LS: exponential 85 705 1925 7600 in number of 67800 17025 30200 affected element Model size [N] Fault-tolerant Systems Research Group ICGT '08
  • 19. Budapest University of Technology and Economics 19 Varró: STS Benchmark •Non reusable model VIATRA/RETE Performance on STS mutex benchmark elements •Suites better for LS VIATRA/LS 1000000 GrGen.NET 100000 10000 Execution time (ms) 1000 100 100 200 500 1000 3000 10000 30000 Size of process ring [node count] Fault-tolerant Systems Research Group ICGT '08
  • 20. Budapest University of Technology and Economics 20 Summary  Rete based incremental PM − Increased memory consumption − Fix overhead − Predictable linear scaling for practical problems − Comparable performance with fastest LSs in some cases.  Contribution to Benchmarking of GTs − 2 new benchmarks for assessing incremental PM − Larger models − ALAP execution  Different matching strategies for different − Execution phases − Patterns in a transformation?  In overall the performance of GT tools are satisfying.  Benchmark example descriptions, specifications, and measurement results available at: ● http://wiki.eclipse.org/VIATRA2/Benchmarks Fault-tolerant Systems Research Group ICGT '08
  • 21. Budapest University of Technology and Economics 21 :schemaRef : Package : Schema :tableRef : Class : Table :columnRef : Attribute : Attribute : Column : Column :columnRef orphanTable NEG : tablerRef C: Class {DEL} OR T : Table A: Association : tableRef Fault-tolerant Systems Research Group ICGT '08
  • 22. Budapest University of Technology and Economics 22 Fault-tolerant Systems Research Group ICGT '08