Scheduling and Memory requirements analysis with AADL - PowerPoint PPT Presentation

1 / 20
About This Presentation
Title:

Scheduling and Memory requirements analysis with AADL

Description:

The Architecture Analysis & Design Language (AADL) : SAE standard published in november 2004 ... Related to thread precedency relationships (AADL connections) ... – PowerPoint PPT presentation

Number of Views:233
Avg rating:3.0/5.0
Slides: 21
Provided by: sig8
Learn more at: http://www.sigada.org
Category:

less

Transcript and Presenter's Notes

Title: Scheduling and Memory requirements analysis with AADL


1
  • Scheduling and Memory requirements analysis with
    AADL
  • F. Singhoff, J. Legrand, L. Nana, L. Marcé
  • University of Brest, France
  • LISYC/EA 3883

2
Introduction and motivations (1/2)
  • The Architecture Analysis Design Language
    (AADL)
  • SAE standard published in november 2004 (AS 5506
    document).
  • Allows a high level specification of real time
    systems in order to perform analysis, source
    code/documentation generation,
  • An AADL specification is
  • A set of components such as
  • Thread flow of control that executes a program
    (eg. Ada Task).
  • Data any data structure in a program (eg. Ada
    tagged record).
  • Processor part of the execution environment.
  • Connections between components model component
    relationships.
  • Component properties component
    information/characteristic (behavior, Ada
    package file name, Ada task stack requirement,
    )

3
Introduction and motivations (2/2)
  • Existing AADL toolsets OSATE, STOOD, TOPCASED,
    ADeS but there is currently few open-source
    performance analysis tools.
  • Since 2002, at Brest, were investigating
  • How to extend real time system analysis methods
    to take distribution into account ?
  • How to provide tools to help system designers to
    predict distributed real time system performances
    ?
  • Cheddar, an Ada framework designed to real time
    applications performance analysis.
  • How Cheddar can be applied to AADL
    specifications ?

4
Talk overview
  • Introduction and project motivations
  • Usual performance analysis methods
  • Cheddar a performance analyzer framework
  • Examples of AADL analysis
  • AADL threads scheduling analysis
  • AADL event data port memory analysis
  • Conclusion and ongoing works

5
Usual performance analysis methods real time
scheduling (1/2)
  • Periodic task model a bound on execution time
    (capacity, Ci), a fixed delay between two wake-up
    times (period,Pi), a temporal constraint to meet
    (deadline, Di).
  • Choose a real time scheduling algorithms (eg.
    Rate Monotonic).
  • Perform simulation analysis compute and analyze
    time lines
  • Perform Analytical/Feasibility test analysis
    no scheduling required

6
Usual performance analysis methods queueing
systems (2/2)
  • Queueing system Kendall's notation X/Y/n.
  • X customer arrival rate (M,G,D).
  • Y service time rate (M,G,D).
  • n number of servers.
  • Examples M/M/1, M/D/1, M/G/1,
  • Goal From a given customer arrival/service time
    rate, compute analytical criteria such as
    customer waiting time and number of waiting
    customers in the queue.

7
Talk overview
  • Introduction and project motivations
  • Usual performance analysis methods
  • Cheddar a performance analyzer framework
  • Examples of AADL analysis
  • AADL threads scheduling analysis
  • AADL event data port memory analysis
  • Conclusion and ongoing works

8
Cheddar a performance analyzer framework
9
Cheddar and AADL
10
Talk overview
  • Introduction and project motivations
  • Usual performance analysis methods
  • Cheddar a performance analyzer framework
  • Examples of AADL analysis
  • AADL threads scheduling analysis
  • AADL event data port memory analysis
  • Conclusion and ongoing works

11
AADL threads scheduling analysis (1/3)
  • AADL includes most of the features used in the
    context of real time scheduling analysis.
  • Nevertheless, the following questions have to be
    investigated
  • Can we model any built-in Cheddar's schedulers or
    task models ?
  • Are standard properties enough to perform
    analytical/feasibility tests on any resources ?
  • How to express new schedulers or task models ?

gt we need some new AADL properties related to
thread, data and processor
12
AADL threads scheduling analysis (2/3)
  • Example a set of periodic/aperiodic threads
    scheduled with POSIX1003.1b and Rate Monotonic
    schedulers.

13
AADL threads scheduling analysis (3/3)
Compute simulation
14
Talk overview
  • Introduction and project motivations
  • Usual performance analysis methods
  • Cheddar a performance analyzer framework
  • Examples of AADL analysis
  • AADL threads scheduling analysis
  • AADL event data port memory analysis
  • Conclusion and ongoing works

15
Event data ports memory requirement analysis
(1/4)
  • Event data ports are AADL features used for
    asynchronous message transmission between
    threads. Events/messages are queued.
  • Queueing systems may be able to predict event
    data port me mory requirement .... But we have to
    answer two questions
  • How to take into account AADL thread dispatching
    (eg. periodic) ?
  • How to take into account AADL thread scheduling
    (eg. RM) ?
  • As for the other AADL features, Cheddar provides
  • Simulation tools.
  • Feasibility tests (based on queueing systems, J.
    Legrand, F. Singhoff, L. Nana L. Marcé 2004).

16
Event data ports memory requirement analysis
(2/4)
  • Queueing systems for AADL event data ports
  • Define a new customer arrival/service time rate
    the P rate.
  • Define new queueing systems based on the P rate.
  • Define new feasibility tests.
  • Worst case analytical analysis based on P/P/1
  • Consumer/Producer threads are periodic.
  • Ex. Feasibility test the maximum number of
    messages in an event data port shared by N
    periodic producers and 1 periodic consumer is
  • 2.N (harmonic AADL thread set)
  • 2.N1 (other cases)
  • Average case analytical analysis based on M/P/1
  • See the SIGAda 2005 proceedings for the
    feasibility tests.

17
Event data ports memory requirement analysis
(3/4)
  • Example 2 event data port
  • connections

thread Producer Features Data_Source out
event data port end Producer thread Consumer
features Data_Sink in event data port end
Consumer thread implementation Producer.i
properties Dispatch_ProtocolgtPeriodic ... e
nd Producer.i thread implementation Consumer.i
properties Dispatch_ProtocolgtPer
iodic ... end Consumer.i
18
Event data ports memory requirement analysis
(4/4)
19
Talk overview
  • Introduction and project motivations
  • Usual performance analysis methods
  • Cheddar a performance analyzer framework
  • Examples of AADL analysis
  • AADL threads scheduling analysis
  • AADL event data port memory analysis
  • Conclusion and ongoing works

20
Conclusion and ongoing works
  • The Cheddar AADL performance analyzer
  • Provides performance analysis tools for different
    AADL features, based on real time scheduling and
    queueing systems analysis.
  • This AADL analyzer is distributed since the end
    of october (http//beru.univ-brest.fr/singhoff/ch
    eddar) ... but has to be tested !
  • Implementation based on Ocarina (ENSTs AADL Ada
    95 parser).
  • Cheddar can be run as a Stood plug-in, the
    TNI-Europe CASE tool (Thanks to AADL !).
  • Ongoing works
  • Related to thread precedency relationships (AADL
    connections).
  • Related to hierarchical schedulers (eg. ARINC 653
    scheduler).
Write a Comment
User Comments (0)
About PowerShow.com