Andrew Morton University of Waterloo Canada

Similar documents
EDF Feasibility and Hardware Accelerators

Embedded Systems 15. REVIEW: Aperiodic scheduling. C i J i 0 a i s i f i d i

There are three priority driven approaches that we will look at

Real-Time Systems. Event-Driven Scheduling

Real-Time and Embedded Systems (M) Lecture 5

Task Models and Scheduling

Real-time Scheduling of Periodic Tasks (1) Advanced Operating Systems Lecture 2

Embedded Systems Development

Aperiodic Task Scheduling

Lecture 13. Real-Time Scheduling. Daniel Kästner AbsInt GmbH 2013

Embedded Systems 14. Overview of embedded systems design

Scheduling Algorithms for Multiprogramming in a Hard Realtime Environment

Real-time Systems: Scheduling Periodic Tasks

Non-preemptive Fixed Priority Scheduling of Hard Real-Time Periodic Tasks

Scheduling Periodic Real-Time Tasks on Uniprocessor Systems. LS 12, TU Dortmund

Lecture 6. Real-Time Systems. Dynamic Priority Scheduling

Static priority scheduling

Real-Time Systems. Event-Driven Scheduling

Real-time Scheduling of Periodic Tasks (2) Advanced Operating Systems Lecture 3

Clock-driven scheduling

EDF Scheduling. Giuseppe Lipari May 11, Scuola Superiore Sant Anna Pisa

RUN-TIME EFFICIENT FEASIBILITY ANALYSIS OF UNI-PROCESSOR SYSTEMS WITH STATIC PRIORITIES

EDF Scheduling. Giuseppe Lipari CRIStAL - Université de Lille 1. October 4, 2015

Schedulability analysis of global Deadline-Monotonic scheduling

Process Scheduling for RTS. RTS Scheduling Approach. Cyclic Executive Approach

Segment-Fixed Priority Scheduling for Self-Suspending Real-Time Tasks

CPU SCHEDULING RONG ZHENG

A Theory of Rate-Based Execution. A Theory of Rate-Based Execution

Che-Wei Chang Department of Computer Science and Information Engineering, Chang Gung University

Non-Work-Conserving Non-Preemptive Scheduling: Motivations, Challenges, and Potential Solutions

Real-Time Systems. LS 12, TU Dortmund

CIS 4930/6930: Principles of Cyber-Physical Systems

On-line scheduling of periodic tasks in RT OS

Real-Time Scheduling. Real Time Operating Systems and Middleware. Luca Abeni

Schedulability of Periodic and Sporadic Task Sets on Uniprocessor Systems

EDF and RM Multiprocessor Scheduling Algorithms: Survey and Performance Evaluation

3. Scheduling issues. Common approaches 3. Common approaches 1. Preemption vs. non preemption. Common approaches 2. Further definitions

Networked Embedded Systems WS 2016/17

Priority-driven Scheduling of Periodic Tasks (1) Advanced Operating Systems (M) Lecture 4

Static-Priority Scheduling. CSCE 990: Real-Time Systems. Steve Goddard. Static-priority Scheduling

TDDB68 Concurrent programming and operating systems. Lecture: CPU Scheduling II

Non-Preemptive and Limited Preemptive Scheduling. LS 12, TU Dortmund

Multi-core Real-Time Scheduling for Generalized Parallel Task Models

Multiprocessor Scheduling II: Global Scheduling. LS 12, TU Dortmund

EECS 571 Principles of Real-Time Embedded Systems. Lecture Note #7: More on Uniprocessor Scheduling

Real-time operating systems course. 6 Definitions Non real-time scheduling algorithms Real-time scheduling algorithm

Real-Time Scheduling and Resource Management

Bounding the End-to-End Response Times of Tasks in a Distributed. Real-Time System Using the Direct Synchronization Protocol.

Multi-core Real-Time Scheduling for Generalized Parallel Task Models

Paper Presentation. Amo Guangmo Tong. University of Taxes at Dallas January 24, 2014

Multiprocessor Scheduling I: Partitioned Scheduling. LS 12, TU Dortmund

Deadline-driven scheduling

Design of Real-Time Software

Probabilistic Preemption Control using Frequency Scaling for Sporadic Real-time Tasks

Real-Time Systems. Lecture #14. Risat Pathan. Department of Computer Science and Engineering Chalmers University of Technology

Embedded Systems Design: Optimization Challenges. Paul Pop Embedded Systems Lab (ESLAB) Linköping University, Sweden

Predictability of Least Laxity First Scheduling Algorithm on Multiprocessor Real-Time Systems

Paper Presentation. Amo Guangmo Tong. University of Taxes at Dallas February 11, 2014

Module 5: CPU Scheduling

Scheduling Lecture 1: Scheduling on One Machine

Optimal Utilization Bounds for the Fixed-priority Scheduling of Periodic Task Systems on Identical Multiprocessors. Sanjoy K.

Chapter 6: CPU Scheduling

A Utilization Bound for Aperiodic Tasks and Priority Driven Scheduling

Real-Time Scheduling

Uniprocessor real-time scheduling

Semantic Importance Dual-Priority Server: Properties

Real-time scheduling of sporadic task systems when the number of distinct task types is small

Improved Priority Assignment for the Abort-and-Restart (AR) Model

arxiv: v1 [cs.os] 25 May 2011

The Partitioned Dynamic-priority Scheduling of Sporadic Task Systems

The Rate-Based Execution Model

System Model. Real-Time systems. Giuseppe Lipari. Scuola Superiore Sant Anna Pisa -Italy

IN4343 Real Time Systems April 9th 2014, from 9:00 to 12:00

Online Scheduling Switch for Maintaining Data Freshness in Flexible Real-Time Systems

CycleTandem: Energy-Saving Scheduling for Real-Time Systems with Hardware Accelerators

Spare CASH: Reclaiming Holes to Minimize Aperiodic Response Times in a Firm Real-Time Environment

Scheduling. Uwe R. Zimmer & Alistair Rendell The Australian National University

The Concurrent Consideration of Uncertainty in WCETs and Processor Speeds in Mixed Criticality Systems

2/5/07 CSE 30341: Operating Systems Principles

A New Sufficient Feasibility Test for Asynchronous Real-Time Periodic Task Sets

Embedded Systems - FS 2018

Rate-monotonic scheduling on uniform multiprocessors

Exact speedup factors and sub-optimality for non-preemptive scheduling

A Dynamic Real-time Scheduling Algorithm for Reduced Energy Consumption

AS computer hardware technology advances, both

CPU scheduling. CPU Scheduling

Scheduling I. Today Introduction to scheduling Classical algorithms. Next Time Advanced topics on scheduling

Load Regulating Algorithm for Static-Priority Task Scheduling on Multiprocessors

TEMPORAL WORKLOAD ANALYSIS AND ITS APPLICATION TO POWER-AWARE SCHEDULING

arxiv: v3 [cs.ds] 23 Sep 2016

TDDI04, K. Arvidsson, IDA, Linköpings universitet CPU Scheduling. Overview: CPU Scheduling. [SGG7] Chapter 5. Basic Concepts.

arxiv: v1 [cs.os] 21 May 2008

Controlling Preemption for Better Schedulability in Multi-Core Systems

Scheduling I. Today. Next Time. ! Introduction to scheduling! Classical algorithms. ! Advanced topics on scheduling

Multiprocessor Real-Time Scheduling Considering Concurrency and Urgency

Scheduling Lecture 1: Scheduling on One Machine

Resource Sharing Protocols for Real-Time Task Graph Systems

Towards Overhead-Free Interface Theory for Compositional Hierarchical Real-Time Systems

Uniprocessor Mixed-Criticality Scheduling with Graceful Degradation by Completion Rate

Contention-Free Executions for Real-Time Multiprocessor Scheduling

Transcription:

EDF Feasibility and Hardware Accelerators Andrew Morton University of Waterloo Canada

Outline 1) Introduction and motivation 2) Review of EDF and feasibility analysis 3) Hardware accelerators and scheduling 4) Extended analysis 5) Summary

Introduction Embedded systems provides dedicated service to a larger system digital embedded systems: cell phone, washing machine, automotive, assembly line hard real time is common large volumes make production cost important

Introduction System on Chip CPU(s), peripherals and custom logic on one IC standard technique: use hardware accelerators to speedup compute intensive portion of software application

Introduction Typical Embedded Scheduling policies table based cyclic fixed priority preemptive hybrid cyclic/preemptive Good alternative: Earliest Deadline First EDF is optimal will only miss a deadline if no other policy could make it natural way to specify deadlines in embedded system

Earliest Deadline First (EDF) Definition of EDF of all ready tasks, the task with the earliest deadline is executed first if another task arrives with earlier deadline, it preempts the current task

Notation s i start time, T i period, C i worst-case execution time, D i deadline

Feasibility Analysis Given task set τ composed of periodic and aperiodic tasks: determine whether all tasks can be scheduled by the preemptive EDF policy such that no task misses its deadline

Feasibility Analysis Technique assume synchronous start all tasks start at t=0 this is the critical instance aperiodic task replaced by sporadic task with minimum inter-arrival time T i tools processor utilization processor demand

Processor Utilization: U Measure of overall processor business n U= i=1 C i T i sums the fraction of processor time required per task

Processor Demand: h(t) Measure of work required before time t ht= Di t 1 t D i T i C i sum execution times of all jobs (task instances) with deadlines not later than t

Feasibility Conditions Processor utilization does not exceed one U 1 Processor demand never exceeds processor time t: ht t Cannot check every h(t)

Feasibility Conditions Do not need to check every h(t) processor demand only changes at job deadlines only need to check at each deadline can define upper limit on interval checked

Feasibility Conditions upper limit for checking deadlines: Theory [Liu and Layland, 1973] When the deadline driven scheduling algorithm is used to schedule a set of tasks on a processor, there is no processor idle time prior to an overflow. interval before first idle called synchronous busy period (L) only need to check until end of synchronous busy period

Feasibility Algorithm if U>1 then return infeasible endif calculate L for each deadline in [0,L] if h(t)>t return infeasible endif endfor return feasible

Accelerated Task Given an accelerator blocked task starts on CPU, transfers to accelerator, finishes on CPU divide τ x into subtasks τ x,1, τ x,2, and τ x,3

Accelerated Task Representation

Extended Analysis First Try Given task set τ with accelerator blocked task τ x : replace τ x with τ x,1 and τ x,3 perform feasibility analysis Problem: accelerator induced idle periods

Extended Analysis - First Try this example would pass analysis missed dead line at t=27 during [18,20] CPU is idle because τ x,3 must wait for accelerator

Accelerator-Induced Idle Lemma1 Given task set τ in which one task τ x blocks on an accelerator once, with logical subtasks {τ x,1, τ x,2, τ x,3 }, the accelerator induced idle results in a critical instance when: τx,3 has no slack, and all other tasks are released synchronously at the end of the accelerator induced idle (i.e. at t=d x,2 ).

Accelerator-Induced Idle

Extended Analysis Analysis of Accelerator Induced Idle: all regular tasks released at t=0 τ x,3 released at t=0 no slack Dx,3 =C x,3 perform feasibility analysis

Subtask Phases

Subtask Phases x,1 =T x D x,2 x,3 = D x,2

Extended Algorithm if U>1 then return infeasible endif calculate L Pass 1 Ф x,1 =Ф x,3 =0 Pass 2 Ф x,1 =T x -D x,2, Ф x,3 =-D x,2 for each deadline in [0,L] if h(t)>t endif return infeasible modified h(t), L h't= D i i t 1 t D i i T i C i endfor

Summary Contributions extended EDF feasibility analysis to task sets that include one accelerator blocked task (that blocks once per task instance) essentially heterogeneous multiprocessing with one preemtable and one non preemptable processor extends applicability of the EDF policy to embedded systems

Summary Future Work extend to task sets that include one accelerator blocked task that blocks multiple times (done) extend to task sets that include multiple acceleratorblocked tasks