Real-Time Scheduling for Time-Triggered Mixed Criticality systems

Similar documents
Real-Time Component Software. slide credits: H. Kopetz, P. Puschner

Lecture Outline Overview of real-time scheduling algorithms Outline relative strengths, weaknesses

Real-Time Scheduling (Part 1) (Working Draft) Real-Time System Example

Methods and Tools For Embedded Distributed System Scheduling and Schedulability Analysis

Improved Handling of Soft Aperiodic Tasks in Offline Scheduled Real-Time Systems using Total Bandwidth Server

Aperiodic Task Scheduling

Lecture 3 Theoretical Foundations of RTOS

Scheduling. Yücel Saygın. These slides are based on your text book and on the slides prepared by Andrew S. Tanenbaum

Multi-core real-time scheduling

Predictable response times in event-driven real-time systems

Mixed-Criticality: Integration of Different Models of Computation. University of Siegen, Roman Obermaisser

Real-Time Software. Basic Scheduling and Response-Time Analysis. René Rydhof Hansen. 21. september 2010

XtratuM integration on bespoke TTNoCbased. Assessment of the HW/SW.

Long-term monitoring of apparent latency in PREEMPT RT Linux real-time systems

Secure data processing: Blind Hypervision

Technical Manual. FAN COIL CONTROLLER COOLING or HEATING ANALOG or PWM Art A

Scheduling Real-time Tasks: Algorithms and Complexity

Operating Systems. III. Scheduling.

PART IV Performance oriented design, Performance testing, Performance tuning & Performance solutions. Outline. Performance oriented design

Aperiodic Task Scheduling

Real-Time Systems Hermann Härtig Real-Time Communication (following Kopetz, Liu, Schönberg, Löser)

Common Approaches to Real-Time Scheduling

174: Scheduling Systems. Emil Michta University of Zielona Gora, Zielona Gora, Poland 1 TIMING ANALYSIS IN NETWORKED MEASUREMENT CONTROL SYSTEMS

Advanced Operating Systems (M) Dr Colin Perkins School of Computing Science University of Glasgow

3. Scheduling issues. Common approaches /1. Common approaches /2. Common approaches / /13 UniPD / T. Vardanega 23/01/2013. Real-Time Systems 1

On-Line Diagnosis using Orthogonal Multi-Tone Time Domain Reflectometry in a Lossy Cable

4. Fixed-Priority Scheduling

Fuse Selection Method Module 2. Date of the presentation

Effective Scheduling Algorithm and Scheduler Implementation for use with Time-Triggered Co-operative Architecture

Abstract Title: Planned Preemption for Flexible Resource Constrained Project Scheduling

CPU SCHEDULING (CONT D) NESTED SCHEDULING FUNCTIONS

Real-Time (Paradigms) (51)

Experience with the integration of distribution middleware into partitioned systems

The Temporal Firewall--A Standardized Interface in the Time-Triggered Architecture

Using semantic properties for real time scheduling

Workload Models for System-Level Timing Analysis: Expressiveness vs. Analysis Efficiency

Today. Intro to real-time scheduling Cyclic executives. Scheduling tables Frames Frame size constraints. Non-independent tasks Pros and cons

Efficient and Robust Allocation Algorithms in Clouds under Memory Constraints

Real Time Programming: Concepts

Proactive, Resource-Aware, Tunable Real-time Fault-tolerant Middleware

VirtualCenter Database Performance for Microsoft SQL Server 2005 VirtualCenter 2.5

Bus Scheduling for TDL Components

HIPEAC Segregation of Subsystems with Different Criticalities on Networked Multi-Core Chips in the DREAMS Architecture

Mixed Criticality Systems - A Review

theguard! ApplicationManager System Windows Data Collector

Optimal static scheduling of real-time tasks on distributed time-triggered networked systems

Efficient Scheduling of Sporadic, Aperiodic, and Periodic Tasks with Complex Constraints

Fair Scheduler. Table of contents

CPU Scheduling. CPU Scheduling

Application Unit, MDRC AB/S 1.1, GH Q R0111

Trends in Embedded Software Engineering

Operational Overview and Controls Guide. Two or Three Pump IronHeart Lite with Variable Frequency Drives

Survey on Job Schedulers in Hadoop Cluster

Multicore partitioned systems based on hypervisor

Performance Evaluation of Software Architectures

Embedded Real-Time Systems (TI-IRTS) Safety and Reliability Patterns B.D. Chapter

TouchKit Software User manual for Windows 7 Version:

Handling Sporadic Tasks in Real-time Systems - Combined Offline and Online Approach -

Partition Scheduling in APEX Runtime Environment for Embedded Avionics Software

Global Multiprocessor Real-Time Scheduling as a Constraint Satisfaction Problem

Comparing Power Saving Techniques for Multi cores ARM Platforms

Real-Time Systems Prof. Dr. Rajib Mall Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur

Real Time Scheduling Basic Concepts. Radek Pelánek

Hadoop Scheduler w i t h Deadline Constraint

The simple case: Cyclic execution

Problems, Methods and Tools of Advanced Constrained Scheduling

Integrating job parallelism in real-time scheduling theory

Towards a Next- Generation Inter-domain Routing Protocol. L. Subramanian, M. Caesar, C.T. Ee, M. Handley, Z. Mao, S. Shenker, and I.

ICS Principles of Operating Systems

Energy Efficient MapReduce

On real-time delay monitoring in software-defined networks

A Tool for Generating Partition Schedules of Multiprocessor Systems

Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements

IMCM: A Flexible Fine-Grained Adaptive Framework for Parallel Mobile Hybrid Cloud Applications


Dimensioning an inbound call center using constraint programming

THROUGHPUTER. Parallel Program Development and Execution Platform as a Service

Priority-Driven Scheduling

CPU Scheduling. Basic Concepts. Basic Concepts (2) Basic Concepts Scheduling Criteria Scheduling Algorithms Batch systems Interactive systems

PERFORMANCE TUNING OF PARALLEL REAL- TIME VOICE COMMUNICATION SOFTWARE

Real-Time Monitoring Framework for Parallel Processes

The Matrix - A framework for real-time resource management for video streaming in networks of heterogenous devices

Hardware Acceleration for Just-In-Time Compilation on Heterogeneous Embedded Systems

A hypervisor approach with real-time support to the MIPS M5150 processor

Types Of Operating Systems

Multicore scheduling in automotive ECUs

/ Operating Systems I. Process Scheduling. Warren R. Carithers Rob Duncan

«A 32-bit DSP Ultra Low Power accelerator»

An Efficient Non-Preemptive Real-Time Scheduling

A Group based Time Quantum Round Robin Algorithm using Min-Max Spread Measure

Power efficiency and power management in HP ProLiant servers

Process Scheduling CS 241. February 24, Copyright University of Illinois CS 241 Staff

Five Essential Components for Highly Reliable Data Centers

Veeam ONE What s New in v9?

Overview of Presentation. (Greek to English dictionary) Different systems have different goals. What should CPU scheduling optimize?

SyncBreeze FILE SYNCHRONIZATION. User Manual. Version 7.7. Aug Flexense Ltd.

Security Fabric Tailored Trustworthy Space Part 2: End-to-End Management and Security

Construct User Guide

STUDY AND SIMULATION OF A DISTRIBUTED REAL-TIME FAULT-TOLERANCE WEB MONITORING SYSTEM

A Survey of Fitting Device-Driver Implementations into Real-Time Theoretical Schedulability Analysis

Transcription:

Real-Time Scheduling for Time-Triggered Mixed Criticality systems Mathieu Jan CEA LIST www.cea.fr

Cliquez pour Outline modifier of the le talk style du titre Real-Time scheduling context The Time-Triggered execution model Mixed Criticality systems: two main task models Supporting MC within TT using the Vestal task model Building scheduling tables: two solutions based on Linear Programming Supporting MC within TT using the elastic task model Maintaining task scheduling consistency: on-line decision algorithm Conclusion and future work CEA. All rights reserved DACLE Division November 2014 2

Cliquez Motivation pour modifier for this le style work du titre The Time-Triggered (TT) paradigm Used in industrial fields to build hard real-time systems subject to certification constraints Tasks are triggered by the advancement of time Certification requirements: temporal behavior is mastered Schedulability must be demonstrated in the worst-case situation Difficulties to compute Worst-Case Execution Time (WCET) Very low probability to simultaneously have the WCET for each task Huge over-sizing of the CPU resources compared to what is needed Economical constraints Push for the use of these unused resources A solution: Mixed-Criticality (MC) within TT Unused processing capabilities: for the low-criticality tasks CEA. All rights reserved DACLE Division November 2014 3

Cliquez Time-Triggered pour modifier paradigm le style du titre The Time-Triggered (TT) paradigm (as introduced by Kopetz) Temporal accuracy of real-time data/entity <value, date> Real-Time Image: is valid if it is an accurate representation in the time and value domains of a real-time entity Firewalls used at predefined points to exchange RT images Define the minimum validity time of a RT image Several flavors When I/O are performed differ as well as they assumed durations Logical Execution Time (LET) Bounded Execution Time (BET) CEA. All rights reserved DACLE Division November 2014 4

Cliquez Our Time-Triggered pour modifier execution le style du model titre A Bounded Execution Time flavor Both computations and I/O can be performed whenever between the predefined points A task is a cyclic sequence of jobs with timing constraints By default, the visibility date of a real-time image is equal to the job deadline r Job d Time r d Job release Job deadline Time budget Strict observation principle A job works on real-time image whose visibility dates are inferior or equal to the job release CEA. All rights reserved DACLE Division November 2014 5

MC scheduling problem Cliquez pour modifier le style du titre Medium voltage protection relays Safety-function: detect and isolate faults in the electrical network End-to-end temporal constraint between the detection of power faults and asking the tripping of circuit breakers Easily demonstrated using the TT paradigm Default Circuit breaker opened Sensor Circuit breaker closed Embed additional functionalities Display information, optimizing the distribution of energy, etc. Different levels of criticality: Mixed-Criticality (MC) systems We are only interested in the use of two levels of criticality Enable the design of MC systems where Taken separately high and low-criticality tasks are schedule But the union is not schedulable CEA. All rights reserved DACLE Division November 2014 6

Rationale Cliquez The popular pour modifier Vestal MC le style task model du titre Higher the criticality level is, greater the estimated WCET value is Periodic task model with Two estimated Worst-Case Execution Time (WCET): C i (LO), C i (HI) For the HI-criticality tasks: C i (LO) < C i (HI) For the LO-criticality tasks: C i (LO) = C i (HI) A criticality level χ i : LO or HI System states Two execution modes: LO and HI Switch to the HI-mode when a HI-criticality task exceeds its C i (LO) Only the schedulability of HI-criticality tasks ensured while in HI-mode CEA. All rights reserved DACLE Division November 2014 7

Cliquez The pour elastic modifier task model le style for du MC titre When using the Vestal task model, low-criticality tasks are simply dropped in HI mode Wasting processing power For the low-criticality tasks, extend the periodic task model Flavor of the elastic task model Stretching factors: deadline is a flexible parameter Set or range of possible (bounded) values specified off-line Applied when a deadline is going to be missed, in order to postpone it Importance level Which low-criticality task should be stretched first CEA. All rights reserved DACLE Division November 2014 8

Cliquez pour Common modifier notations le style du titre We consider the use of these two tasks models within the TT paradigm A set of n independent synchronous, preemptible and implicit-deadline periodic tasks: Γ = { τ 1, τ 2, τ n } Job set of all jobs: J Γ Temporal parameters (at least) of a task : τ i = (P i ) Total utilization noted U and m is the number of processors CEA. All rights reserved DACLE Division November 2014 9

Cliquez pour Outline modifier of the le talk style du titre Real-Time scheduling context The Time-Triggered execution model Mixed Criticality systems: two main task models Supporting MC within TT using the Vestal task model Building scheduling tables: two solutions based on Linear Programming Supporting MC within TT using the elastic task model Maintaining task scheduling consistency: on-line decision algorithm Conclusion and future work CEA. All rights reserved DACLE Division November 2014 10

Supporting Vestal MC task model within TT Cliquez pour modifier le style du titre Definition of two schedules tables: S LO and S HI Main issue: guarantee that a mode change cannot lead to an unfeasible schedule for the HI-criticality tasks Switching occur at specific points: where the HI-criticality tasks can first exceed their C i (LO) values Remaining time is sufficient to schedule all HI-criticality tasks C i (HI) S HI C i (LO) S LO Building S HI and S LO can not be made independently CEA. All rights reserved DACLE Division November 2014 11

Cliquez Approach pour modifier and related le style work du titre TT MC scheduling using Linear Programming techniques Two proposed solutions: LPMC-HI and LPMC-Both LPMC-HI: two separated but linked linear programs First LP: guarantee the schedulability of HI-criticality tasks and maximize the number of completed LO-criticality tasks Second LP: guarantee the schedulability of LO-criticality tasks Differs from [Baruah Fohler, RTSS 1991]: HI-criticality tasks can be delayed to complete a LO-criticality task LPMC-Both: simultaneous building of S LO and S HI Similar to [Theis et al., WMC 2013] HI-criticality tasks are splitted into two sub-jobs: J i LO and J i Δ J i Δ represents the additional WCET assumed when in the HI mode CEA. All rights reserved DACLE Division November 2014 12

Cliquez pour Specific modifier notations le style du titre Full temporal parameters of a task: τ i = (χ i, P i, C i (LO), C i (HI)) Hyper-period H is divided in intervals An interval being delimited by two job releases Size of interval k: I k, set of jobs in interval k: J k W j,k : weight of job j on interval k (not an execution time but a fraction of it) Goal: compute w j,k LO and w j,k HI CEA. All rights reserved DACLE Division November 2014 13

Cliquez A pour scheduling modifier example style du titre Task set running on a dual-core: m = 2 with H = 12 χ i P i C i (LO) C i (HI) τ 1 LO 2 1.5 1.5 τ 2 HI 4 2 3 τ 3 HI 3 1 2 J LO J HI U = 2.16 U HI = 1.41 U LO = 1.58 CEA. All rights reserved DACLE Division November 2014 14

Cliquez A pour scheduling modifier example style du titre Task set running on a dual-core: m = 2 with H = 12 χ i P i C i (LO) C i (HI) τ 1 LO 2 1.5 1.5 τ 2 HI 4 2 3 τ 3 HI 3 1 2 J LO J HI U HI = 1.41 U LO = 1.58 CEA. All rights reserved DACLE Division November 2014 15

Cliquez LPMC-HI: pour HI-criticality modifier le style mode du first titre S HI : temporal schedulability constraint for all jobs Processor maximum utilization: No parallel jobs: Different constraints for the completion HI-criticality jobs LO-criticality jobs Objective: prepare the building of S LO in order to maximize the schedulability of J LO Decision variable F j to account when a LO-criticality job has been completely executed HI 0 w j, k Objective function: maximize HI w j, k m, k I j J k 1, k I, j J HI w j, k I k C i ( HI ), j J HI k E j k E j w HI j, k I k j C i J LO ( LO F j ), j J LO CEA. All rights reserved DACLE Division November 2014 16

Cliquez LPMC-HI: pour modifier LO-criticality le style mode du titre Prepare the input for the computation of S LO Execution time of HI-criticality task is reduced to its C i (LO) values When the HI-criticality task starts does not change The weights of HI-criticality tasks are becoming constants: LO w j, k ' S LO : temporal schedulability constraints Processor maximum utilization: k HI k Other constraints for the LO-criticality tasks only No parallel jobs Completion of jobs No objective function w w m, j, k j, k Any feasible solution generates a valid scheduling j J LO j J LO ' k I CEA. All rights reserved DACLE Division November 2014 17

Cliquez LPMC-HI: pour modifier computing le style S HI du titre Third and six instances of τ 1 (P 1 = 2 and C 1 (LO) = 1.5) Cannot be completely executed in intervals I 4 and I 8 CEA. All rights reserved DACLE Division November 2014 18

Cliquez LPMC-HI: pour problem modifier for le computing style du titre S LO HI-criticality tasks can be concentrated in some particular intervals leading to an unfeasible schedule for S LO Constraints cannot be met in interval I 4 CEA. All rights reserved DACLE Division November 2014 19

Cliquez LPMC-HI: pour problem modifier for le computing style du titre S LO HI-criticality tasks can be concentrated in some particular intervals leading to an unfeasible schedule for S LO Constraints cannot be met in interval I 4 CEA. All rights reserved DACLE Division November 2014 20

Cliquez LPMC-HI: pour problem modifier for le computing style du titre S LO HI-criticality tasks can be concentrated in some particular intervals leading to an unfeasible schedule for S LO Constraints cannot be met in interval I 4 CEA. All rights reserved DACLE Division November 2014 21

Cliquez LPMC-Both: pour modifier both criticality le style modes du titre Goal: improve the schedulability success ratio A single linear program for both S HI and S LO Split each HI-criticality job in two sub-jobs: J i LO and J i Δ w j, k LO w j, k HI w j, k Temporal schedulability constraints for HI-criticality jobs to compute w j,k HI and for LO-criticality jobs to compute wj,k LO Precedence constraint to ensure correctness w j,k Δ must be null till C i (LO) is not exceeded Prevent sub-jobs from a HI-criticality job to be present in the same interval in S LO In the first interval where C i (LO) is exceeded, the weight left to J Δ i is constrained so that a schedule where jobs cannot be executed in LO parallel can be found: w j, k w j, k No constraints in the other intervals I k CEA. All rights reserved DACLE Division November 2014 22

Cliquez LPMC-Both: pour scheduling modifier le the style example du titre Both S LO and S HI can be computed CEA. All rights reserved DACLE Division November 2014 23

Cliquez pour Complexity modifier analysis le style du titre Depends on the number of intervals Complexity of LPMC-Both is higher than LPMC-HI Total number of decision variables and constraints increased by: n HI : number of HI-criticality tasks Job splitting precedence constraints CEA. All rights reserved DACLE Division November 2014 24

Cliquez pour Outline modifier of the le talk style du titre Real-Time scheduling context The Time-Triggered execution model Mixed Criticality systems: two main task models Supporting MC within TT using the Vestal task model Building scheduling tables: two solutions based on Linear Programming Supporting MC within TT using the elastic task model Maintaining task scheduling consistency: on-line decision algorithm Conclusion and future work CEA. All rights reserved DACLE Division November 2014 25

Supporting the elastic task model within TT Cliquez pour modifier le style du titre Computation for each low-criticality task of the minimum required stretching factor Which worst-case temporal behavior will be used on-line Assuming each task uses its estimated WCET In the TT paradigm, visibility dates are predefined Visibility date of data: deadline of the producer A task may only use data whose visibility dates are equals or inferior to its release date To achieve determinism execution behavior The use of stretching factors change the visibility date Inconsistent with the statically defined triggering points On-line decision algorithm to set stretching factor values We assume a dynamic scheduler CEA. All rights reserved DACLE Division November 2014 26

Cliquez pour Specific modifier notations le style du titre Distinguish between high and low-criticality tasks high-criticality task ( ) with a utilization noted low-criticality tasks ( ) with a utilization noted Temporal parameters of a task : Low-criticality tasks have additional parameters Importance level: The higher the value, the higher is the importance of the task Maximum stretching factor that can be applied: Defines low utilization bound that can be reached At run-time, the actual value is noted: and CEA. All rights reserved DACLE Division November 2014 27

Constraints Cliquez Schedulability pour modifier analysis le style du titre On the utilization that can generate the low-criticality tasks due to the presence of the high-criticality task Bounds on the utilization value of a low-criticality task Objective Maximize the utilization of the resources, while stretching the less important low-criticality tasks first CEA. All rights reserved DACLE Division November 2014 28

Cliquez On-line pour modifier decision algorithm le style du titre Two constraints to ensure Change the visibility date of already produced data But not yet visible, therefore no data inconsistency is possible Maintain the initial offsets between the triggering points Gather low-criticality tasks within groups That must be kept temporally consistent between them Use stretching factor and importance level parameters at the group level: CEA. All rights reserved DACLE Division November 2014 29

Cliquez On-line pour modifier decision algorithm le style du titre Decision algorithm Assumes that high-criticality tasks have an higher priority When it is called? At the beginning of an overloaded situation for the low-criticality tasks When low-criticality tasks have already missed their deadline Within an overloaded situation, where low-criticality tasks were preempted for executing some high-criticality tasks When it is called, we assume that the most important low-criticality task is being executed When a stretched low-criticality task finishes, the stretching factor is reset to 1 CEA. All rights reserved DACLE Division November 2014 30

Cliquez On-line pour modifier decision algorithm le style du titre Maintain offsets To ensure that visibility date will be changed CEA. All rights reserved DACLE Division November 2014 31

Cliquez pour Conclusion modifier le style du titre Adding the support of MC within TT TT: Determinism but low resource utilization in the average case MC: efficient use of processing capabilities in the average case Proposal for supporting the Vestal task model within the TT paradigm Two solutions: LPMC-HI and LPMC-Both Proposal for supporting a flavor of the elastic task model within the TT paradigm Computation of the minimum required stretching factors Decision algorithm to deal with stretching factors CEA. All rights reserved DACLE Division November 2014 32

Cliquez pour Future modifier work le style du titre Using the Vestal task model within the TT paradigm Finish the implementation of the proposed solutions Evaluation of their success ratio in scheduling MC job sets Using the elastic task model within the TT paradigm Further evaluations: overhead of the different possible strategies for setting the stretching factors Different approach for the execution part through the use of a generalized form of the TT approach (external-triggered) CEA. All rights reserved DACLE Division November 2014 33

Cliquez pour Backup modifier slide le style du titre CEA. All rights reserved DACLE Division November 2014 34

LPMC-HI Cliquez pour Complexity modifier analysis le style du titre Total number of decision variables Weights of jobs: Decision variable : Weights of jobs: Total number of constraints LPMC-Both Number of variables + completion) + LO) (First LP: processor max. capacity, (2 nd LP: processor max. capacity, completion Total number of decision variables increased by Job splitting precedence constraint Total number of constraint For computing S LO : For computing S HI : Precedence constraint: First LP Second LP CEA. All rights reserved DACLE Division November 2014 35

Cliquez Preliminary pour modifier evaluations le style du titre Task set generator Random task set, utilization computed using UUniFast-Discard algorithm Range of possible periods: 10 to 100 ms Each task is either a high or a low-criticality task until reaches 50% 3 tasks sets are generated with 20% of high-criticality tasks From 50 70 tasks, with 5 14 high-criticality tasks Initial utilization set to 125% and 150% off a 2 processors system 3 metrics used for the evaluation Average stretching factor for all the low-criticality tasks: Average stretching factor for the 25% most important low-criticality tasks: Average stretching factor for the 75% less important low-criticality tasks: CEA. All rights reserved DACLE Division November 2014 36

Cliquez Obtained pour modifier stretching le style factors du titre Stretching factors Are reduced for the most important low-criticality tasks Much higher for the less important low-criticality tasks Without the importance level parameter Low-criticality must be stretched more when the importance level is used, but can lead to almost unused stretching factors for important low-criticality tasks Distribution of stretching factors for two configurations Config. A: random values for the importance level Config. B: 25% of the most important tasks should have CEA. All rights reserved DACLE Division November 2014 37