The Real-Time Execution Performance Agent Sam Siewert An Hard/Soft Real-Time Digital Control and Continuous Media Experiment.

Slides:



Advertisements
Similar presentations
Simulation of Feedback Scheduling Dan Henriksson, Anton Cervin and Karl-Erik Årzén Department of Automatic Control.
Advertisements

EE5900 Advanced Embedded System For Smart Infrastructure
Threads, SMP, and Microkernels
Real-time concepts Lin Zhong ELEC424, Fall Real time Correctness – Logical correctness – Timing Hard vs. Soft – Hard: lateness is intolerable Pass/Fail.
Module 2 Priority Driven Scheduling of Periodic Task
Threads, SMP, and Microkernels Chapter 4. Process Resource ownership - process is allocated a virtual address space to hold the process image Scheduling/execution-
Chapter 4 Threads, SMP, and Microkernels Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design.
Computer Systems/Operating Systems - Class 8
Chapter 5 Processes and Threads Copyright © 2008.
RT Reading Group Meeting 06/27/2002 Veljko Krunic.
Operating Systems High Level View Chapter 1,2. Who is the User? End Users Application Programmers System Programmers Administrators.
ECEN 4623/5623 RT Embedded Systems Mid-Term Review Lecture.
Chapter 13 Embedded Systems
CprE 458/558: Real-Time Systems
Chapter 3 Overview of Operating Systems Copyright © 2008.
Misconceptions About Real-time Computing : A Serious Problem for Next-generation Systems J. A. Stankovic, Misconceptions about Real-Time Computing: A Serious.
Real-Time Operating System Chapter – 8 Embedded System: An integrated approach.
OS and the Computer System  Some OS programs exist permanently in the system area of the memory to monitor and control activities in the computer system.
1 Chapter 13 Embedded Systems Embedded Systems Characteristics of Embedded Operating Systems.
Chapter 19: Real-Time Systems Silberschatz, Galvin and Gagne ©2005 AE4B33OSS Chapter 19: Real-Time Systems System Characteristics Features of Real-Time.
Dreams in a Nutshell Steven Sommer Microsoft Research Institute Department of Computing Macquarie University.
An Introduction and Practical approach to RTOS concepts.
1 Lecture 4: Threads Operating System Fall Contents Overview: Processes & Threads Benefits of Threads Thread State and Operations User Thread.
Introduction to Real-Time Systems
Chapter 4 Threads, SMP, and Microkernels Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design.
Quality of Service Karrie Karahalios Spring 2007.
Scheduling policies for real- time embedded systems.
Real-Time Systems Mark Stanovich. Introduction System with timing constraints (e.g., deadlines) What makes a real-time system different? – Meeting timing.
Threads, SMP, and Microkernels Chapter 4. Process Resource ownership - process is allocated a virtual address space to hold the process image Scheduling/execution-
Company name KUAS HPDS A Realistic Variable Voltage Scheduling Model for Real-Time Applications ICCAD Proceedings of the 2002 IEEE/ACM international conference.
CprE 458/558: Real-Time Systems (G. Manimaran)1 CprE 458/558: Real-Time Systems Introduction to Real-Time Systems.
Scheduling Lecture 6. What is Scheduling? An O/S often has many pending tasks. –Threads, async callbacks, device input. The order may matter. –Policy,
1 Threads, SMP, and Microkernels Chapter 4. 2 Process Resource ownership: process includes a virtual address space to hold the process image (fig 3.16)
1 Threads, SMP, and Microkernels Chapter Multithreading Operating system supports multiple threads of execution within a single process MS-DOS.
Undergraduate course on Real-time Systems Linköping 1 of 45 Autumn 2009 TDDC47: Real-time and Concurrent Programming Lecture 5: Real-time Scheduling (I)
1 VxWorks 5.4 Group A3: Wafa’ Jaffal Kathryn Bean.
CSE 522 Real-Time Scheduling (2)
CSCI1600: Embedded and Real Time Software Lecture 24: Real Time Scheduling II Steven Reiss, Fall 2015.
19.1 Silberschatz, Galvin and Gagne ©2009 Operating System Concepts with Java – 8 th Edition Chapter 19: Real-Time Systems.
Chapter 19: Real-Time Systems Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 19: Real-Time Systems System Characteristics.
Real-Time Operating System Design
For a good summary, visit:
1.  System Characteristics  Features of Real-Time Systems  Implementing Real-Time Operating Systems  Real-Time CPU Scheduling  An Example: VxWorks5.x.
Undergraduate course on Real-time Systems Linköping University TDDD07 Real-time Systems Lecture 2: Scheduling II Simin Nadjm-Tehrani Real-time Systems.
Determining Optimal Processor Speeds for Periodic Real-Time Tasks with Different Power Characteristics H. Aydın, R. Melhem, D. Mossé, P.M. Alvarez University.
Unit - I Real Time Operating System. Content : Operating System Concepts Real-Time Tasks Real-Time Systems Types of Real-Time Tasks Real-Time Operating.
Where Testing Fails …. Problem Areas Stack Overflow Race Conditions Deadlock Timing Reentrancy.
Threads, SMP, and Microkernels Chapter 4. Processes and Threads Operating systems use processes for two purposes - Resource allocation and resource ownership.
Advanced Operating Systems CS6025 Spring 2016 Processes and Threads (Chapter 2)
Undergraduate course on Real-time Systems Linköping TDDD07 – Real-time Systems Lecture 1: Introduction & Scheduling I Simin Nadjm-Tehrani Real-time Systems.
Real-Time Operating Systems RTOS For Embedded systems.
CPU Scheduling Scheduling processes (or kernel-level threads) onto the cpu is one of the most important OS functions. The cpu is an expensive resource.
Embedded System Scheduling
CHaRy Software Synthesis for Hard Real-Time Systems
REAL-TIME OPERATING SYSTEMS
Chapter 19: Real-Time Systems
Lecture 12: Real-Time Scheduling
Topics Covered What is Real Time Operating System (RTOS)
OPERATING SYSTEMS CS3502 Fall 2017
EEE 6494 Embedded Systems Design
Imprecise Computation September 7, 2006
Real-time Software Design
Threads, SMP, and Microkernels
Processes and operating systems
CSCI1600: Embedded and Real Time Software
Lecture 4- Threads, SMP, and Microkernels
Chapter 19: Real-Time Systems
CSCI1600: Embedded and Real Time Software
Processes and operating systems
Real-Time Process Scheduling Concepts, Design and Implementations
Presentation transcript:

The Real-Time Execution Performance Agent Sam Siewert An Hard/Soft Real-Time Digital Control and Continuous Media Experiment to Demonstrate Confidence-Based Scheduling With The RT-EPA Execution Control Interface

Motivation for RT-EPA Emerging Soft Real-Time Applications –Virtual Reality, Multimedia, Flexible Automation and Control Device Interfaces with RT Processing Between Them –Range of Device Bandwidths and Characteristics AperiodicBurstyPeriodic –Range of RT Performance Reliability Required Best-EffortConfidence-BasedGuaranteed Negotiated Service & Control of Kernel Processing Pipelines –Kernel Pipeline Efficiency Well-Demonstrated (Fall & Govindan) –Use Real-Time Kernel Threads and Provide Trades between Utilization and Expected Number of Deadline Misses

Problems Addressed and Approach “Soft” Real-Time - Confidence-Based Scheduling –Not Guaranteed, Not Best Effort -- Probabilistic Predictability –Can Deadline Confidence Be Derived from Execution Time Confidence? -- Deadline Monotonic Confidence Extension –Can WCET Hard Real-Time Requirement be Relaxed? -- Execution Time Model (Confidence Interval, Distribution) –99.9% of Deadlines are Met Given 99.9% Execution Time Confidence, Release Frequency, and Interference Service Negotiation & Execution Control - EPA/PCIP –Can Execution Parameter Changes Be Handled Maintaining (Degrading) Deadline Confidences? -- Parametric Monitoring and Re-estimation of Confidences –Can Application Modify Service On-Line? -- Dynamic Admission

RT EPA/PCIP Design Issues Required RT-EPA Kernel Interface –Required Kernel Features (POSIX not sufficient) Priority Preemptable Kernel-level Threads, Priority Inversion Control, VM Page Wiring, and Kernel-space Modules Simple Implementation in single-user RTOS (e.g. VxWorks) More complex Implementation in multi-user OS (e.g. Solaris) possible given required features –Portable RT “Kernel-Ware” modules (trusted like driver code) EPA Service Negotiation Interface and Control –Soft and “Termination” Deadlines and Confidences (Computed) –Execution Time Models (Distribution Assumption or Free) –Output Hold (Buffering) for Isochrony –Parameter Change Confidence Re-estimation (C(i), T(i), D(i)) –Confidence and Deadline Management (Preserve Negotiated Confidences, Signal Inability to Maintain Negotiation)

RT EPA Interface Design Application Execution Performance Agent Sink Device Source Device system call Device Interface Pipe-Stage Filter Device Interface kernel API HW / SW Interface Low Frequency Interaction (Parameter Initialization and Modification) High-Frequency Interaction and Per-Block Processing

Robot Control Execution Performance Agent POS RELAY SHOULDER WRIST ELBOW ARMBASE POS RELAY POS RELAY POS RELAY POS RELAY 5 DOF Robot RTEPA Application

RACE Control Execution Performance Agent 68HC11 RAMP CONTROL YAW CONTROL RAMP RANGE YAW CAMERA 68HC11 DIGITAL COMPASS RACE RTEPA Application

RT EPA Confidence-Based Scheduling computation time distribution C high, D term signal and abort R min buffered response best-case execution hold early response response utility response damage time release start time latest desired response termination C low, D soft signal response failure: dropout degradation desired optimal response earliest desired response earliest possible response utility curve WCET C expected context switch overhead R opt buffered response desired response interval 

Extended Deadline Monotonic Equations 3 Basic Equations (sufficient but not necessary) 1) Clow and Chigh from distribution equation 2) EPA Deadline-monotonic admission test inequality given interference from current thread pool 3) Maximum Interference from current thread pool See www-sgc.colorado.edu/people/siewerts for detailed example Termination deadline required for equations to work Pessimistic interference assumption (required for hard or mixed hard/soft real-time) –All interfering threads run to their termination deadline every release –Worst case interference Reliable interference assumption (for soft real-time only) –All interfering threads are assumed to run to high confidence Cexp

RT-EPA Interface Pipeline task required inputs for admission –Entry point function pointer; Fptr –Release source; ISR signal or interval timer RT POSIX signal –Expected release period; Texp –Expected periodic execution time; Cexp –Execution time model; or –Desired soft and hard termination deadlines; Dsoft and Dterm –Desired soft and hard deadline confidences; Conf-soft, Conf-hard –Output description and period; Dptr, size, Dest-addr, Tout Returns –Soft and hard deadline confidence (actual or maximum possible given current thread pool) Monitors & Controls –Actual execution time –Actual release times –Missed soft and hard deadlines –Termination of threads at Dterm

RT-EPA Implementation and Evaluation Demonstration RT EPA Implemented as VxWorks Task –EPA spawns and controls tasks (internal or interrupt release) –Provides message queue interface for service negotiation –Modeled as hard real-time periodic itself RACE (Rail-guided, Air-powered, Control Experiment) –2 68HC11 microcontrollers (navigation and propulsion), 3 PWM servos, ultrasonic range finder, digital compass, and color CCD camera EPA Experiments –Continuous Media : Qcam CCD frame processing for range determination (knowledge of range to 0.5 inches every second) –Continuous Control : Ramp position keeping (Qcam range input, serial motor servo output), RACE yaw control (digital compass input, serial motor servo output) Expected Outcome –Demonstration of EPA Negotiation Interface for Multiple Active Pipelines (on-line tradeoffs by application using EPA)

RACE RT-EPA Experiment Setup

RACE Vehicle Close-up

RACE Rail-guided Carriage

RACE Ramp Ascent

RACE Optical Target at Minimum Range

RACE Optical Target at Full Range

Summary Confidence-Based Scheduling (Extension of Deadline Montonic Equations) used for Hard-to-Soft RT execution control EPA Interface Between Applications and Kernel Thread Scheduler –Parametric Control of Kernel Threads through EPA (E.g. Terminated or Allowed to Overrun Soft Deadline) –Tradeoffs through EPA for Application with Multiple Pipelines (Lower Video Confidence for Higher Control Confidence) Previous Work on In-Kernel Pipelines –EPA/PCIP Extends In-Kernel Pipelines for Control, Service Negotiation, and Confidence-Based Scheduling –EPA Monitors Execution Time Models and Release Frequency For Changes (Confidence Re-estimation)