Technische universiteit eindhoven Department of Electrical Engineering Electronic Systems Platform-based Design 5KK70 MPSoC Controlling the Parallel Resources.

Slides:



Advertisements
Similar presentations
Fakultät für informatik informatik 12 technische universität dortmund Classical scheduling algorithms for periodic systems Peter Marwedel TU Dortmund,
Advertisements

CS5270 Lecture 31 Uppaal, and Scheduling, and Resource Access Protocols CS 5270 Lecture 3.
CSE 522 Real-Time Scheduling (4)
Real-Time Scheduling CIS700 Insup Lee October 3, 2005 CIS 700.
Chapter 5 CPU Scheduling. CPU Scheduling Topics: Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling.
CS 3013 & CS 502 Summer 2006 Scheduling1 The art and science of allocating the CPU and other resources to processes.
Chapter 6: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 Chapter 6: CPU Scheduling Basic.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
Fakultät für informatik informatik 12 technische universität dortmund Classical scheduling algorithms for periodic systems Peter Marwedel TU Dortmund,
Embedded Systems Exercise 3: Scheduling Real-Time Periodic and Mixed Task Sets 18. May 2005 Alexander Maxiaguine.
Wk 2 – Scheduling 1 CS502 Spring 2006 Scheduling The art and science of allocating the CPU and other resources to processes.
By Group: Ghassan Abdo Rayyashi Anas to’meh Supervised by Dr. Lo’ai Tawalbeh.
CprE 458/558: Real-Time Systems
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.
Slide 6-1 Copyright © 2004 Pearson Education, Inc. Operating Systems: A Modern Perspective, Chapter 6 Threads and Scheduling 6.
Technische Universität Dortmund Classical scheduling algorithms for periodic systems Peter Marwedel TU Dortmund, Informatik 12 Germany 2007/12/14.
Technische universiteit eindhoven Department of Electrical Engineering Electronic Systems Embedded Computer Architecture 5KK73 MPSoC Controlling the Parallel.
Chapter 6: CPU Scheduling
OPERATING SYSTEMS CPU SCHEDULING.  Introduction to CPU scheduling Introduction to CPU scheduling  Dispatcher Dispatcher  Terms used in CPU scheduling.
Chapter 6 CPU SCHEDULING.
Real-Time Scheduling CS4730 Fall 2010 Dr. José M. Garrido Department of Computer Science and Information Systems Kennesaw State University.
Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned.
Real-Time Systems Mark Stanovich. Introduction System with timing constraints (e.g., deadlines) What makes a real-time system different? – Meeting timing.
Silberschatz and Galvin  Operating System Concepts Module 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor.
Technische universiteit eindhoven Department of Electrical Engineering Electronic Systems Platform-based Design 5KK70 MPSoC Controlling the Parallel Resources.
Real-Time Scheduling CS4730 Fall 2010 Dr. José M. Garrido Department of Computer Science and Information Systems Kennesaw State University.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
Chapter 5: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 5: CPU Scheduling Basic Concepts Scheduling Criteria.
6. Application mapping 6.1 Problem definition
Real Time Systems Real-Time Schedulability Part I.
1 11/29/2015 Chapter 6: CPU Scheduling l Basic Concepts l Scheduling Criteria l Scheduling Algorithms l Multiple-Processor Scheduling l Real-Time Scheduling.
CSE 522 Real-Time Scheduling (2)
1 Real-Time Scheduling. 2Today Operating System task scheduling –Traditional (non-real-time) scheduling –Real-time scheduling.
CSCI1600: Embedded and Real Time Software Lecture 24: Real Time Scheduling II Steven Reiss, Fall 2015.
Silberschatz and Galvin  Operating System Concepts Module 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor.
1 CS.217 Operating System By Ajarn..Sutapart Sappajak,METC,MSIT Chapter 5 CPU Scheduling Slide 1 Chapter 5 CPU Scheduling.
Introduction to Embedded Systems Rabie A. Ramadan 5.
CSCI1600: Embedded and Real Time Software Lecture 23: Real Time Scheduling I Steven Reiss, Fall 2015.
Classical scheduling algorithms for periodic systems Peter Marwedel TU Dortmund, Informatik 12 Germany 2012 年 12 月 19 日 These slides use Microsoft clip.
Introduction to Real-Time Systems
11 G53SRP: Feasibility analysis Chris Greenhalgh School of Computer Science.
Undergraduate course on Real-time Systems Linköping University TDDD07 Real-time Systems Lecture 2: Scheduling II Simin Nadjm-Tehrani Real-time Systems.
Unit - I Real Time Operating System. Content : Operating System Concepts Real-Time Tasks Real-Time Systems Types of Real-Time Tasks Real-Time Operating.
CS Spring 2010 CS 414 – Multimedia Systems Design Lecture 32 – Multimedia OS Klara Nahrstedt Spring 2010.
1 Uniprocessor Scheduling Chapter 3. 2 Alternating Sequence of CPU And I/O Bursts.
Chapter 4 CPU Scheduling. 2 Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation.
Basic Concepts Maximum CPU utilization obtained with multiprogramming
Scheduling.
CPU SCHEDULING.
EEE Embedded Systems Design Process in Operating Systems 서강대학교 전자공학과
EEE 6494 Embedded Systems Design
Chapter 2 Scheduling.
Chapter 6: CPU Scheduling
Chapter 6: CPU Scheduling
CPU Scheduling G.Anuradha
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Operating System Concepts
3: CPU Scheduling Basic Concepts Scheduling Criteria
Chapter5: CPU Scheduling
Chapter 6: CPU Scheduling
Chapter 6: CPU Scheduling
Operating System , Fall 2000 EA101 W 9:00-10:00 F 9:00-11:00
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Chapter 6: CPU Scheduling
Chapter 6: CPU Scheduling
Ch 4. Periodic Task Scheduling
Module 5: CPU Scheduling
Presentation transcript:

technische universiteit eindhoven Department of Electrical Engineering Electronic Systems Platform-based Design 5KK70 MPSoC Controlling the Parallel Resources

Electronic Systems 2 Contents  GPUs  PicoChip  Real-Time Scheduling basics  Resource Management

Electronic Systems 3 GPU basics  Synthetic objects are represented with a bunch of triangles (3d) in a language/library like OpenGL or DirectX plus texture  Triangles are represented with 3 vertices  A vertex is represented with 4 coordinates with floating-point precision  Objects are transformed between coordinate representations  Transformations are matrix-vector multiplications

Electronic Systems 4 GPU DirectX 10 pipeline

Electronic Systems 5 NVIDIA GeForce D Pipeline

Electronic Systems 6 GeForce 8800 GPU 330 Gflops, 128 processors with 4-way SIMD

Electronic Systems 7 GPU: Why more general-purpose programmable?  All transformations are shading  Shading is all matrix-vector multiplications  Computational load varies heavily between different sorts of shading  Programmable shaders allow dynamic resource allocation between shaders Result:  Modern GPUs are serious competitor for general-purpose processors!

Electronic Systems 8 Pico Chip

Electronic Systems 9 Pico Chip

Electronic Systems 10 Pico Chip

Electronic Systems 11 Fault-Tolerance

Electronic Systems 12 Pico Chip

Electronic Systems 13 Real-time systems (Reinder Bril)  Correct result at the right time: timeliness  Many products contain embedded computers, e.g. cars, planes, medical and consumer electronics equipment, industrial control.  In such systems, it’s important to deliver correct functionality on time.  Example: inflation of an air bag

Electronic Systems 14 Example: Multimedia Consumer Terminals DVD CDx front end YC interface IEEE 1394 interface DVB Tuner Cable modem CVBS interface VGA RF Tuner (by courtesy of Maria Gabrani)

Electronic Systems 15 Example: High quality video & real time original up-scaled Rendered stream: 60 Hz (TV screen) Input stream: 24 Hz (movie) TV companies invest heavily in video enhancement, e.g. temporal up-scaling

Electronic Systems 16 Example: High quality video & real time original up-scaled Input stream: 24 Hz (movie) TV companies invest heavily in video enhancement, e.g. temporal up-scaling displayed Deadline miss leads to “wrong” picture. Deadline misses tend to come in bursts (heavy load). Valuable work may be lost.

Electronic Systems 17 Real-time systems  Guaranteeing timeliness requirements:  real-time tasks with timing constraints  scheduling of tasks  Fixed-priority scheduling (FPS) is the de-facto standard for scheduling in real-time systems.  FPS: supported by  commercially available RTOS;  analytic and synthetic methods.

Electronic Systems 18 Recap of FPS  Fixed Priority Pre-emptive Scheduling (FPPS)  A basic scheduling model  Analysis  Example  Optimality of RMS and DMS

Electronic Systems 19 FPPS: A basic scheduling model  Single processor  Set of n independent, periodic tasks  1, …,  n  Tasks are assigned fixed priorities, and can be pre-empted instantaneously.  Scheduling: At any moment in time, the processor is used to execute the highest priority task that has work pending.

Electronic Systems 20 FPPS: A basic scheduling model  Task characteristics:  period T,  (worst-case) computation time C,  (relative) deadline D,  Assumptions:  non-idling;  context switching and scheduling overhead is ignored;  execution of releases in order of arrival;  deadlines are hard, and D  T;   1 has highest and  n has lowest priority.  No data-dependencies between tasks

Electronic Systems 21 FPPS: Analysis  Schedulable iff: WR i  D i for 1  i  n  Necessary condition:  Sufficient condition for RMS: U  LL(n) = n (2 1/ n – 1), i.e.  i >  j iff T i < T j ; D i = T i.

Electronic Systems 22 FPPS: Analysis  Otherwise,  i.e. U  1 and not RMS, or  n (2 1/ n – 1) < U < 1 and RMS  exact condition:  Critical instant: simultaneous release of  i with all higher priority tasks  WR i is the smallest positive solution of

Electronic Systems 23 FPPS: Example  Task set Γ consisting of 3 tasks:  Notes:  RM priority assignment and D i = T i (RMS);  U 1 + U 2 + U 3 = 0.97  1, hence Γ could be schedulable;  Utilization bound: U( n )  LL( n ) = n (2 1/ n – 1):  U 1 + U 2 = 0.88 > LL(2)  0.83,  therefore U (3) > LL(3), hence another test required. TaskPeriod T Computation time C Utilization U 1 2 3

Electronic Systems 24 FPPS: Example  Time line time Task  1 Task  3 Task  WR 3 = 56 WR 2 = 17 WR 1 = 3

Electronic Systems 25 FPPS: Optimality of RMS and DMS  Priority assignment policies:  Rate Monotonic (RM):  i >  j iff T i < T j  Deadline Monotonic (DM):  i >  j iff D i < D j  Under arbitrary phasing:  RMS is optimal among FPS when D i = T i ;  DMS is optimal among FPS when D i  T i,  where optimal means: if an FPS algorithm can schedule the task set, so can RMS/DMS.

Electronic Systems 26 Non-Preemptive Systems (Akash Kumar)  State-space needed is smaller  Lower implementation cost  Less overhead at run-time  Cache pollution, memory size Task

Electronic Systems 27 Why FPS doesn’t work for “future” high-performance platforms  Heavy-duty DSPs: Preemption not supported  If it was: Context switching is significant  Data-dependencies not taken into account  Multi-processor

Electronic Systems 28 Related Research – Feasibility Analysis Preemptive Non-Preemptive Homogeneous MPSoC [Liu, Layland, 1973] Heterogeneous MPSoC [Jeffay, 1991] [Baruah, 2006] [, 2020??] A B C D P1P2P3 P4P5P6

Electronic Systems 29 Unpredictability – Variation in Execution Time P1 P2 P3 50 A B 49 A B

Electronic Systems 30 Problem No good techniques exist to analyze and schedule applications on non- preemptive heterogeneous systems Resource Manager proposed to schedule applications such that they meet their performance requirements on non- preemptive heterogeneous systems

Electronic Systems 31 Our Assumptions  Heterogeneous MPSoC  Applications modeled as SDF  Non-preemptive system – tasks can not be stopped  Jobs can be suspended  Lot of dynamism in the system  Jobs arriving and leaving at run-time  Variation in execution time  Very simple arbiter at cores A2 B2 C2 D2 Job Task

Electronic Systems 32 Resource Manager Resource Manager Reconfigure to meet above quality milliseconds Local Processor Arbiter Task level micro sec A B Core Application QoS Manager Application level few sec

Electronic Systems 33 Architecture Description  Computation resources available are described  Each processor can have different arbiter  In this model First Come First Serve mechanism is used  Resource manager can configure/control the local arbiters: to regulate the progress of application if needed P1P2P3 Resource Manager Local Arbiter

Electronic Systems 34 Resource Manager  Responsible for two main things  Admission control  Incoming application specifies throughput requirement  Execution-time and mapping of each actor  Repetition vector used to compute expected utilization  RM checks if enough resources present  Allocates resources to applications if admitted

Electronic Systems 35 Admission Control P1 P2P3 Typing Sms Video Conf Play MP3 Resource Reqmt Exceeded!

Electronic Systems 36 Resource Manager  Admission control  Budget enforcement  When running, each application signals RM when it completes an iteration  RM keeps track of each application’s progress  Operation modes  ‘Polling’ mode  ‘Interrupt’ mode  Suspends application if needed

Electronic Systems 37 Budget Enforcement (Polling) Performance goes down! Resource Manager Better than required! New job enters! job suspended! job resumed!

Electronic Systems 38 Experiments  A high-level simulation model developed  POOSL – a parallel simulation language used  A protocol for communication defined  System verified with a number of application SDF models  Case study done with H263 and JPEG application models  Impact of varying ‘polling’ interval studied

Electronic Systems 39 Performance without Resource Manager

Electronic Systems 40 Performance with RM – I (2.5m cycles)

Electronic Systems 41 Performance with RM – II (500k cycles)