AADL : about scheduling analysis

Similar documents
Real-time Scheduling

Lecture 7 Real Time Task Scheduling. Forrest Brewer

Multitasking and Real-time Scheduling

Scheduling. In general, a scheduling scheme provides two features: An algorithm for ordering the use of system resources (in particular the CPUs)

Multitasking and Real-time Scheduling

Verification by testing

Real-Time Systems. Real-Time Systems. Verification by testing. Verification by testing

A comparison of MPCP and MSRP when sharing resources in the Janus multiple-processor on a chip platform

Ravenscar Computational Model compliant AADL Simulation on LEON2

Architectural Optimization & Design of Embedded Systems based on AADL Performance Analysis

Maintaining temporal validity of real-time data on non-continuously executing resources

Perfecting Preemption Threshold Scheduling for Object-Oriented Real-Time System Design: From The Perspective of Real-Time Synchronization

A mathematical programming approach to the analysis, design and scheduling of offshore oilfields

Introduction to Programming. Lecture 13: Container data structures. Container data structures. Topics for this lecture. A basic issue with containers

Mixed-Criticality Scheduling on Multiprocessors using Task Grouping

An Investigation into Server Parameter Selection for Hierarchical Fixed Priority Pre-emptive Systems

Real-time Fault-tolerant Scheduling Algorithm for Distributed Computing Systems

Parallelism for Nested Loops with Non-uniform and Flow Dependences

A Frame Packing Mechanism Using PDO Communication Service within CANopen

Load Balancing for Hex-Cell Interconnection Network

Course Introduction. Algorithm 8/31/2017. COSC 320 Advanced Data Structures and Algorithms. COSC 320 Advanced Data Structures and Algorithms

Virtual Machine Migration based on Trust Measurement of Computer Node

Tolerating Transient Faults in Statically Scheduled Safety-Critical Embedded Systems

ELEC 377 Operating Systems. Week 6 Class 3

Evaluation of Parallel Processing Systems through Queuing Model

On-line Scheduling Algorithm with Precedence Constraint in Embeded Real-time System

A protocol for mixed-criticality management in switched Ethernet networks

Fibre-Optic AWG-based Real-Time Networks

Assembler. Building a Modern Computer From First Principles.

Two-Stage Data Distribution for Distributed Surveillance Video Processing with Hybrid Storage Architecture

Compiler Design. Spring Register Allocation. Sample Exercises and Solutions. Prof. Pedro C. Diniz

A Brute-Force Schedulability Analysis for Formal Model under Logical Execution Time Assumption

CHAPTER 2 PROPOSED IMPROVED PARTICLE SWARM OPTIMIZATION

A Generic and Compositional Framework for Multicore Response Time Analysis

Network Cloud. Internal Network. Internal Network. Internal Network. Border Switch. Border Switch. Border Switch. Network. Internal. Border.

Halmstad University Post-Print

The Control Server: A Computational Model for Real Time Control Tasks

Concurrent Apriori Data Mining Algorithms

A QoS-aware Scheduling Scheme for Software-Defined Storage Oriented iscsi Target

Bounding DMA Interference on Hard-Real-Time Embedded Systems *

Design and Analysis of Algorithms

WITH rapid improvements of wireless technologies,

Virtual Memory. Background. No. 10. Virtual Memory: concept. Logical Memory Space (review) Demand Paging(1) Virtual Memory

The Codesign Challenge

Avaya T3 Telephones connected to Integral 5 Setting up and using conference bridge Appendix to user s guide

with `ook-ahead for Broadcast WDM Networks TR May 14, 1996 Abstract

Routability Driven Modification Method of Monotonic Via Assignment for 2-layer Ball Grid Array Packages

RAP. Speed/RAP/CODA. Real-time Systems. Modeling the sensor networks. Real-time Systems. Modeling the sensor networks. Real-time systems:

An Optimal Algorithm for Prufer Codes *

DESIGNING TRANSMISSION SCHEDULES FOR WIRELESS AD HOC NETWORKS TO MAXIMIZE NETWORK THROUGHPUT

Adaptive Network Resource Management in IEEE Wireless Random Access MAC

Adaptive Resource Allocation Control with On-Line Search for Fair QoS Level

Priority-Based Scheduling Algorithm for Downlink Traffics in IEEE Networks

NUMERICAL SOLVING OPTIMAL CONTROL PROBLEMS BY THE METHOD OF VARIATIONS

Reliability and Energy-aware Cache Reconfiguration for Embedded Systems

Real-Time Guarantees. Traffic Characteristics. Flow Control

Enhanced Signaling Scheme with Admission Control in the Hybrid Optical Wireless (HOW) Networks

Storage Binding in RTL synthesis

Improved Resource Allocation Algorithms for Practical Image Encoding in a Ubiquitous Computing Environment

IP Camera Configuration Software Instruction Manual

A Predictable Execution Model for COTS-based Embedded Systems

Compiling Process Networks to Interaction Nets

CS 268: Lecture 8 Router Support for Congestion Control

Design and implementation of priority and timewindow based traffic scheduling and routingspectrum allocation mechanism in elastic optical networks

Space-Optimal, Wait-Free Real-Time Synchronization

Comparison of Heuristics for Scheduling Independent Tasks on Heterogeneous Distributed Environments

Combined Functional Partitioning and Communication Speed Selection for Networked Voltage-Scalable Processors Λ

Reliability and Performance Models for Grid Computing

HIERARCHICAL SCHEDULING WITH ADAPTIVE WEIGHTS FOR W-ATM *

A Free-Collision MAC Proposal for Networks

REAL-TIME and embedded systems are applied in many

TECHNIQUE OF FORMATION HOMOGENEOUS SAMPLE SAME OBJECTS. Muradaliyev A.Z.

Scheduling analysis of AADL architecture models

Communication Speed Selection and Functional Partitioning for Low-Energy On-Chip Networked Multiprocessor

Achieving class-based QoS for transactional workloads

Chapter 1. Introduction

Balanced Ant Colony Algorithm for Scheduling DAG to Grid Heterogeneous System

An Online Delay Efficient Multi-Class Packet Scheduler for Heterogeneous M2M Uplink Traffic

Extending STI for Demanding Hard-Real-Time Systems

Assembler. Shimon Schocken. Spring Elements of Computing Systems 1 Assembler (Ch. 6) Compiler. abstract interface.

The Greedy Method. Outline and Reading. Change Money Problem. Greedy Algorithms. Applications of the Greedy Strategy. The Greedy Method Technique

Response-Time Guarantees in ATM Networks

Solutions for Real-Time Communication over Best-Effort Networks

DLK Pro the all-rounder for mobile data downloading. Tailor-made for various requirements.

Hybrid Job Scheduling Mechanism Using a Backfill-based Multi-queue Strategy in Distributed Grid Computing

Dynamic Voltage Scaling of Supply and Body Bias Exploiting Software Runtime Distribution

A Model Based on Multi-agent for Dynamic Bandwidth Allocation in Networks Guang LU, Jian-Wen QI

Overview. Basic Setup [9] Motivation and Tasks. Modularization 2008/2/20 IMPROVED COVERAGE CONTROL USING ONLY LOCAL INFORMATION

TECHNICAL REPORT AN OPTIMAL DISTRIBUTED PROTOCOL FOR FAST CONVERGENCE TO MAXMIN RATE ALLOCATION. Jordi Ros and Wei K Tsai

Channel 0. Channel 1 Channel 2. Channel 3 Channel 4. Channel 5 Channel 6 Channel 7

Efficient Distributed File System (EDFS)

Combined Functional Partitioning and Communication Speed Selection for Networked Voltage-Scalable Processors

Application of Improved Fish Swarm Algorithm in Cloud Computing Resource Scheduling

Simulation Based Analysis of FAST TCP using OMNET++

Adaptive Connection Admission Control for Mission Critical Real-Time Communication Networks Abstract 1 Introduction

Technical Report. i-game: An Implicit GTS Allocation Mechanism in IEEE for Time- Sensitive Wireless Sensor Networks

A Knowledge Sharing Resource Library Platform Based on Multivariate Large Data Predictive Compensation

Burst Round Robin as a Proportional-Share Scheduling Algorithm

Assignment # 2. Farrukh Jabeen Algorithms 510 Assignment #2 Due Date: June 15, 2009.

State of the Art in Differentiated

Transcription:

AADL : about schedulng analyss Schedulng analyss, what s t? Embedded real-tme crtcal systems have temporal constrants to meet (e.g. deadlne). Many systems are bult wth operatng systems provdng multtaskng facltes Tasks may have deadlne. But, tasks make temporal constrants analyss dffcult to do : We must take the task schedulng nto account n order to check task temporal constrants. Schedulng (or schedulablty) analyss. page 2

Summary 1. Issues about real-tme schedulng analyss : AADL to the rescue 2. Bascs on schedulng analyss : fxed-prorty schedulng for unprocessor archtectures 3. AADL components/propertes to schedulng analyss page 3 Real-Tme schedulng theory 1. A set of smplfed tasks models (to model functons of the system) 2. A set of analytcal methods (called feasblty tests) Example: R Deadlne = C + hp( ) R C P 3. A set of schedulng algorthms: buld the full schedulng/gantt dagram R page 4

Real-Tme schedulng theory s hard to apply Real-Tme schedulng theory Theoretcal results defned from 1974 to 1994: feasblty tests exst for unprocessor archtectures Now supported at a decent level by POSIX 1003 real-tme operatng systems, ARINC653, Industry demandng Yet, hard to use page 5 Real-Tme schedulng theory s hard to apply Requres strong theoretcal knowledge/sklls Numerous theoretcal results: how to choose the rght one? Numerous assumptons for each result. How to abstract/model a system to verfy deadlnes? How to ntegrate schedulng analyss n the engneerng process? When to apply t? What about tools? It s the role of an ADL to hde those detals page 6

AADL to the rescue? AADL helps modelng a full system, ncludng hardware, task sets, connectons, operatng system features, All of these elements are mandatory to apply real-tme schedulng theory Examples: an AADL model can nclude Task executon tme or task deadlne or task release tmes Schedulng parameters However, n many cases, the models stay too complex Multprocessor archtectures, shared buffers or buses, page 7 Summary 1. Issues about real-tme schedulng analyss : AADL to the rescue 2. Bascs on schedulng analyss : fxed-prorty schedulng for unprocessor archtectures 3. AADL components/propertes to schedulng analyss page 8

Real-tme schedulng theory : models of task Task smplfed model: sequence of statements + data. page 9 Usual knd of tasks: Independent tasks or dependent tasks. Perodc and sporadc tasks (crtcal functons) : have several obs and release tmes Aperodc tasks (non crtcal functons) : only one ob and one release tme Real-tme schedulng theory : models of task Usual parameters of a perodc task : Perod: P (duraton between two release tmes). A task starts a ob for each release tme. Deadlne to meet: D, tmng constrant to meet. Frst task release tme (frst ob): S. Worst case executon tme of each ob: C (or capacty or WCET). Prorty: allows the scheduler to choose the task to run page 10

Real-tme schedulng theory : models of task page 11 Unprocessor fxed prorty schedulng Fxed prorty schedulng : Schedulng based on fxed prorty => prortes do not change durng executon tme. Prortes are assgned at desgn tme (off-lne). Effcent and smple feasblty tests. Scheduler easy to mplement nto real-tme operatng systems. Rate Monotonc prorty assgnment : Optmal assgnment n the case of fxed prorty schedulng and unprocessor. Perodc tasks only. page 12

Unprocessor fxed prorty schedulng Two steps: 1. Rate monotonc prorty assgnment: the hghest prorty tasks have the smallest perods. Prortes are assgned off-lne (e.g. at desgn tme, before executon). 2. Fxed prorty schedulng: at any tme, run the ready task whch has the hghest prorty level. page 13 Unprocessor fxed prorty schedulng Rate Monotonc assgnment and preemptve fxed prorty schedulng: Assumng VxWorks prorty levels (hgh=0 ; low=255) T1 : C1=6, P1=10, Pro1=0 T2 : C2=9, P2=30, Pro2=1 page 14

Unprocessor fxed prorty schedulng Feasblty/Schedulablty tests to predct on desgn-tme f deadlne wll be met: page 15 1. Run smulatons on hyperperod = [0,LCM(P)]. Suffcent and necessary condton. 2. Processor utlzaton factor test: = /.(2-1) (about 69%) Rate Monotonc assgnment and preemptve schedulng. Suffcent but not necessary condton. 3. Task worst case response tme, noted R : delay between task release tme and task completon tme. Any prorty assgnment but preemptve schedulng. Unprocessor fxed prorty schedulng Compute R, task worst case response tme: Task response tme = task capacty + delay the task has to wat for hgher prorty task. Or: R = C + hp() watng tme due to or R = C + hp( ) R C P hp() s the set of tasks whch have a hgher prorty than task. returns the smallest nteger not smaller than x. page 16

Unprocessor fxed prorty schedulng page 17 Unprocessor fxed prorty schedulng Example: T1(P1=7, C1=3), T2 (P2=12, C2=2), T3 (P3=20, C3=5) 1 =1=3 "1=3 2 =2=2 2 =C2+ 2 1.1=2+ 2 7.3=5 2 =C2+ 2 1.1=2+ 5 7.3=5 "2=5 3 =3=5 3 =C3+ 3 1 3 =C3+ 3 1 3 =C3+ 3 1 3 =C3+ 3 1 3 =C3+ 3 1 page 18.1+ 3 2.2 =10.1+ 3 2.2=13.1+ 3 2.2=15.1+ 3 2.2=18.1+ 3 2.2=18 "3=18

Unprocessor fxed prorty schedulng Example wth the AADL case study: dsplay_panel thread whch dsplays data. P=100, C=20. recever thread whch sends data. P=250, C=50. analyser thread whch analyzes data. P=500, C=150. Processor utlzaton factor test: U=20/100+150/500+50/250=0.7 Bound=3.(2 $ 1)=0.779 U Bound => deadlnes wll be met. Task response tme: & '(')*+,- =330, &./+0)'*_0'(,) =20, & -,2,/3,- =70. Run smulatons on hyperperod: [0,LCM(P)] = [0,500]. page 19 Unprocessor fxed prorty schedulng page 20

Fxed prorty and shared resources Prevous tasks were ndependent does not really exst n true lfe. Task dependences : Shared resources. E.g. wth AADL: threads may wat for AADL protected data component access. Precedences between tasks. E.g wth AADL: threads exchange data by data port connectons. page 21 Fxed prorty and shared resources Shared resources are modeled by semaphores for schedulng analyss. We use specfc semaphores mplementng nhertance protocols: To take care of prorty nverson. To compute worst case task watng tme for the access to a shared resource. Blockng tme B. Inhertance protocols: PIP (Prorty nhertance protocol), can not be used wth more than one shared resource due to deadlock. PCP (Prorty Celng Protocol), mplemented n most of real-tme operatng systems (e.g. VxWorks). Several mplementatons of PCP exsts: OPCP, ICPP, page 22

Fxed prorty and shared resources What s Prorty nverson: a low prorty task blocks a hgh prorty task 5 = worst case on the shared resource watng tme. page 23 Fxed prorty and shared resources ICPP (Immedate Celng Prorty Protocol): Celng prorty of a resource = maxmum fxed prorty of the tasks whch use t. Dynamc task prorty = maxmum of ts own fxed prorty and the celng prortes of any resources t has locked. 5 =longest crtcal secton ; prevent deadlocks page 24

Fxed prorty and shared resources How to take nto account the watng tme B: Processor utlzaton factor test :,1 > 9: :;: +9 <= ;.(2? 1) Worst case response tme : R = B + C + hp( ) R C P page 25 To conclude on schedulng analyss Many feasblty tests: dependng on task, processor, scheduler, shared resource, dependences, multprocessor, herarchcal, dstrbuted, R = B + C + hp( ) R C P R R = C + C + max( Ck k hp( )) hp ( ) P R = C + hp( ) R C P R = w + J Many assumptons : requre preemptve, fxed prorty schedulng, synchronous perodc, ndependent tasks, deadlnes on requests w = C + hp( ) R + J C P Many feasblty tests. Many assumptons How to choose them? page 26

Summary 1. Issues about real-tme schedulng analyss : AADL to the rescue 2. Bascs on schedulng analyss : fxed-prorty schedulng for unprocessor archtectures 3. AADL components/propertes to schedulng analyss page 27 AADL to the rescue? Issues: Ensure all requred model elements are gven for the analyss Ensure model elements are complant wth analyss requrements/assumptons AADL helps for the frst ssue: page 28 AADL as a pvot language between tools. Internatonal standard. Close to the real-tme schedulng theory: real-tme schedulng analyss concepts can be found. Ex: Component categores: thread, data, processor Property: Deadlne, Fxed Prorty, ICPP, Celng Prorty,

Property sets for schedulng analyss Propertes related to processor component: Preemptve_Scheduler : aadlboolean apples to (processor); Schedulng_Protocol: nhert lst of Supported_Schedulng_Protocols apples to (vrtual processor, processor); -- RATE_MONOTONIC_PROTOCOL, -- POSIX_1003_HIGHEST_PRIORITY_FIRST_PROTOCOL,.. page 29 Property sets for schedulng analyss Propertes related to the threads/data components: Compute_Executon_Tme: Tme_Range apples to (thread, subprogram, ); Deadlne: nhert Tme => Perod apples to (thread, ); Perod: nhert Tme apples to (thread, ); Dspatch_Protocol: Supported_Dspatch_Protocols apples to (thread); -- Perodc, Sporadc, Tmed, Hybrd, Aperodc, Backgr... Prorty: nhert aadlnteger apples to (thread,, dat page 30 Concurrency_Control_Protocol: Supported_Concurrency_Control_Protocols apples to (dat -- None, PCP, ICPP,

Property sets for schedulng analyss Example: thread mplementaton recever.mpl propertes Dspatch_Protocol => Perodc; Compute_Executon_Tme => 31 ms.. 50 ms; Deadlne => 250 ms; Perod => 250 ms; end recever.mpl; data mplementaton target_poston.mpl propertes Concurrency_Control_Protocol => PRIORITY_CEILING_PROTOCOL; end target_poston.mpl; page 31 process mplementaton processng.others subcomponents recever : thread recever.mpl; analyzer : thread analyzer.mpl; target : data target_poston.mpl;... processor mplementaton leon2 propertes Schedulng_Protocol => RATE_MONOTONIC_PROTOCOL; end leon2; Preemptve_Scheduler => true; system mplementaton radar.smple subcomponents man : process processng.others; cpu : processor leon2;... Cheddar : a framework to access schedulablty of AADL models Cheddar tool = analyss framework (queueng system theory & real-tme schedulng theory) + nternal ADL (archtecture descrpton language) + varous standard ADL parsers (AADL, MARTE UML) + smple model edtor + Two versons : Open source (Cheddar) : educatonal and research. Commercal product (AADLInspector) : Elldss Tech product. Supports : Elldss Tech., Consel régonal de Bretagne, BMO, EGIDE/Campus France, Thales Communcaton, BPI France page 32

Cheddar : a framework to access schedulablty of AADL models Demos: Schedulng analyss of the radar example wth Cheddar.. And wth AADLInspector also page 33