Robocop _amp; Space4U by yurtgc548

VIEWS: 0 PAGES: 19

									Prediction of Run-Time Resource Consumption of Multi
           -Task Component Based Systems


                Location:                    7th (ICSE) CBSE Workshop
                                             Edinburgh International Conference Centre
                      Date:                  25-5-2004




      Johan Muskens
      J.Muskens@tue.nl

      System Architecture and Networking
      University of Technologies Eindhoven
      http://www.win.tue.nl/san/

               Johan Muskens email: J.Muskens@tue.nl www: http://www.win.tue.nl/~johan   1
                             TU/e Computer Science, System Architecture and Networking
                                   Outline
• Introduction
   –   Background
   –   Problem Domain
   –   Problem
   –   Approach
• Intermezzo (Terminology)
• Prediction process
• Discussion



           Johan Muskens email: J.Muskens@tue.nl www: http://www.win.tue.nl/~johan   2
                         TU/e Computer Science, System Architecture and Networking
                               Background
Research is part of 2 ITEA projects:
• Robocop
   – Define an open, component-based
     framework for the middle-ware layer in
     high-volume consumer devices
     (robustness/reliability, upgrading/extension, and trading)



• Space4U
   – Extend and validate the Architecture
       • Fault Management
       • Power Management
       • Terminal Managment


              Johan Muskens email: J.Muskens@tue.nl www: http://www.win.tue.nl/~johan   3
                            TU/e Computer Science, System Architecture and Networking
                      Problem Domain
High Volume Consumer Electronics:
• Embedded systems (resources are expensive and fixed)
• Third-party service binding
• Multiple component / service suppliers
• Run-time binding




            Johan Muskens email: J.Muskens@tue.nl www: http://www.win.tue.nl/~johan   4
                          TU/e Computer Science, System Architecture and Networking
                         The Problem
Predict dynamic resource consumption of a component based
application based on the design of the applications and models
describing resource consumption and behavior of the used
components.

                                                 Behavior Model            Resource Model




         Johan Muskens email: J.Muskens@tue.nl www: http://www.win.tue.nl/~johan            5
                       TU/e Computer Science, System Architecture and Networking
                             Approach
• Scenario Based Resource Estimation
  – Predict resource consumption for single (critical,
    average, …) case.
• Specify Behavior & Resource Consumption
  at Interface Level
• Combine Behavior & Resource Consumption
  for specific scenario
  – Worst Case
  – Average Case


         Johan Muskens email: J.Muskens@tue.nl www: http://www.win.tue.nl/~johan   6
                       TU/e Computer Science, System Architecture and Networking
                                   Outline
• Introduction
   –   Background
   –   Problem Domain
   –   Problem
   –   Approach
• Intermezzo (Terminology)
• Prediction process
• Discussion



           Johan Muskens email: J.Muskens@tue.nl www: http://www.win.tue.nl/~johan   7
                         TU/e Computer Science, System Architecture and Networking
                   Intermezzo (Terminology)
                                                                                                              Robocop Component

                                                                                                                 Documentation

                                                                                                                 Functional Model



•   A Robocop Component is a set of models                                                                       Source Code

                                                                                                                               …


                                                                                                                 Executable Component




•   Execution component contains a set of Services                                          Service 1                Service 2




•   Service has set of Interfaces (provides & requires)


•   An Interface has a set of Operations


•   At runtime Services are instantiated                                                                Service1

                  (Service Instance ≈ object)
                                                                                                        Instance 2




                  Johan Muskens email: J.Muskens@tue.nl www: http://www.win.tue.nl/~johan                                      8
                                TU/e Computer Science, System Architecture and Networking
                                   Outline
• Introduction
   –   Background
   –   Problem Domain
   –   Problem
   –   Approach
• Intermezzo (Terminology)
• Prediction process
• Discussion



           Johan Muskens email: J.Muskens@tue.nl www: http://www.win.tue.nl/~johan   9
                         TU/e Computer Science, System Architecture and Networking
          Prediction Process:
   Resource Consumption Specification
We distinguish:
• Pre-emptive ↔ Non-pre-emptive
• Processing ↔ Non-processing

                                       Processing                             Non-processing

Pre-emptive                            Require X                              Require X
                                                   CPU
                                                                              Release Y
Non-pre-emptive                        Claim X                                Claim X
                                                                                   Memory
                                                                              Release Y


              Johan Muskens email: J.Muskens@tue.nl www: http://www.win.tue.nl/~johan      10
                            TU/e Computer Science, System Architecture and Networking
               Prediction Process:
              Behavior Specification


operation f calls:
                                                                      partial
     I2.g*
     I3.h

                                                                                   *




         Johan Muskens email: J.Muskens@tue.nl www: http://www.win.tue.nl/~johan       11
                       TU/e Computer Science, System Architecture and Networking
                  Prediction Process:
                 Service Specification
service s1                                               Service is run-time
  requires I2                                            unit of structuring
  requires I3
provides I1{
  operation f                                            Resource consumption
                                                         is modeled per operation
     uses I2.g
     uses I3.h
     resource claim 100                                  Resource claims / releases
              release 100                                are modeled explicitly
   behaviour
    operation f calls:                                   Behaviour of each operation is
       I2.g*                                             modeled using a partial MSC
       I3.h
                                                         variable call sequences can
}
                                                         be modelled
          Johan Muskens email: J.Muskens@tue.nl www: http://www.win.tue.nl/~johan      12
                        TU/e Computer Science, System Architecture and Networking
                Prediction Process:
               Model Assembly Phase
• A scenario defines a ‘plausible’ sequence of operations of an
  application
• A model for this scenario is constructed by:
   – selecting the operations needed for realizing this scenario
   – composing the resource and behaviour models of these operations.
• This yields a structure that contains exactly the resource
  information that is needed for this scenario.


   (5,5)              (10,8)                            (2,2)                 (5,5)
                                                                                        (10,8) (8,10)
                                                      (8,10)
                                                                                                (2,2)

              Johan Muskens email: J.Muskens@tue.nl www: http://www.win.tue.nl/~johan            13
                            TU/e Computer Science, System Architecture and Networking
                   Prediction Process:
                  Model Analysis Phase
• Resources are accumulated by resource-combinators
• Different types of analysis are supported by defining
  corresponding combinators


         (5,5)                                                      (a,b) Å (c,d) = (a-b+c,d) if b ≤ c
                                                                                    (a,b-c+d) if b > c
                           (10,8)
                                               (8,10)               (a,b) Æ (c,d) = (a+c,b+d)
                                                (2,2)


   ((5,5) Æ (((10,8) Æ (8,10)) Å (2,2)))                                    = (23,23)

                 Johan Muskens email: J.Muskens@tue.nl www: http://www.win.tue.nl/~johan    14
                               TU/e Computer Science, System Architecture and Networking
     Dealing with Concurrent Tasks
• Task based accumulation of resource consumption
    • Abstract Resource Combinators ® Cannot be evaluated
• Accumulation of per task resource consumption based on scheduling
  policy
    • Abstract Resource Combinators ® Evaluatable Resource Combinators

                                                                    ((5,5) Å (2,2))




                                                                    ((5,5) Å (12,12))

     (((10,8) Æ (8,10)) Å (2,2))

                           ((2,2) Å (((10,8) Æ (8,10)) Å (2,2))


            (((10,8) Æ (8,10)) Å (2,2)) , ((2,2) Å (((10,8) Æ
       TS ((((10,8) Æ (8,10)) Å (2,2)) +www: http://www.win.tue.nl/~johan (8,10)) Å (2,2)) ,+
             Johan Muskens email: J.Muskens@tue.nl                                     15
                                  + ((5,5) Å (12,12))
             ((5,5) Å (2,2)) , ((5,5) Å (12,12)) )) and Networking
                           TU/e Computer Science, System Architecture
                                   Outline
• Introduction
   –   Background
   –   Problem Domain
   –   Problem
   –   Approach
• Intermezzo (Terminology)
• Prediction process
• Discussion



           Johan Muskens email: J.Muskens@tue.nl www: http://www.win.tue.nl/~johan   16
                         TU/e Computer Science, System Architecture and Networking
    Benefits of Prediction Technique

• Prediction of dynamic memory consumption
• Support third-party binding
• Easy to adopt / apply
• Flexible w.r.t. how to predict and what to predict
• General useful (e.g., during design / implementation
  / deployment)
• Trade-off between accuracy and effort




          Johan Muskens email: J.Muskens@tue.nl www: http://www.win.tue.nl/~johan   17
                        TU/e Computer Science, System Architecture and Networking
                             Future work

• Make resource claim / release dependent on data
• Model sychronization between tasks
   – Part of the Space4U project
• Model interaction between multiple resources
   – Trading resources
• Increase accuracy
   – Use better resource combinators
• More validation



            Johan Muskens email: J.Muskens@tue.nl www: http://www.win.tue.nl/~johan   18
                          TU/e Computer Science, System Architecture and Networking
                           ?

Johan Muskens email: J.Muskens@tue.nl www: http://www.win.tue.nl/~johan   19
              TU/e Computer Science, System Architecture and Networking

								
To top