1 / 12

What’s Keeping Hard Real-Time Scheduling from Being a Mainstream Technology in the Embedded Multiprocessing Domain Space

Daniel M. Lorts University of Texas – Dallas and Mercury Computer Systems, Inc. What’s Keeping Hard Real-Time Scheduling from Being a Mainstream Technology in the Embedded Multiprocessing Domain Space HPEC - September 2002 Assumption Model

Mia_John
Download Presentation

What’s Keeping Hard Real-Time Scheduling from Being a Mainstream Technology in the Embedded Multiprocessing Domain Space

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Daniel M. Lorts University of Texas – Dallas and Mercury Computer Systems, Inc. What’s Keeping HardReal-Time Scheduling from Being a Mainstream Technology in the Embedded Multiprocessing Domain Space HPEC - September 2002

  2. Assumption Model • The choices and assumptions made in the development of real-time systems affect many areas. • In this research, we look at six individual, but closely related components of a system architecture. • To make the scheduling problem simpler, various assumptions, or boundary conditions, in one or more of the models are typically made. • Why? • No-hard/complete problem • Single semester projects • Limited tenureship of research • Focused interest/purpose Application Model Scheduling Model Fault Model Communication Model System Model Technology Model

  3. System & Communication (current) Cache Cache Cache CPU CPU CPU • System model assumptions • Heterogeneous processing assets • High-level processing capabilities • Fictitious architectures and topologies • Assets fully connected • Communication model assumptions • Negligible communication costs • Uniform communication costs • Non-contentious communications • No priority discernment Memory Memory Memory Interconnection Network

  4. S = (R, L) top level system definition R = (r1, r2 ,...,rN) N resources of system L = {l<ŕ,c> | ŕ  R  c > 0  Adj(ŕ ) = 1} • l represents a link connecting two resources • ŕ is a subset of the resources of system (R) • c represents the number of links between the resources • Adj() is a binary function testing for presence of links Multi-Level System Graph • Advantages of the MGS: • Multi-path capability between resources • Total # of communication links bounded by I/O ports • Ability to model all multiprocessing topologies • Scalable to account for resources that have multiple functional units r1={c1, c2,…, cM} where cj is a unique capability of resource r

  5. An MSG Example 4 S=(R,L) where R={R1,R2,R3,R4} and L={l<ŕ1,c1>, l< ŕ2,c2>, l< ŕ3,c3>, l< ŕ4,c4>} with ŕ1 = {R1} and c1=1 ŕ2 = {R1,R2} and c2=1 ŕ3 = {R2,R4} and c3=2 ŕ4 = {R2,R3,R4} and c4=1 1 R1 R2 2 3 R3 R4 R1 R2 R3 R4 Alternate Representation The system model can also be defined mathematically within a table. Each cell represents the paths that exist between each resource : l<id,count>. R1 l(4,1) l(1,1) R2 l(1,1) l(2,1) l(2,1) l(3,2) R3 l(2,1) l(2,1) l(2,1) l(2,1) R4 l(3,2)

  6. Scheduling Global Local Dynamic Static Optimal Sub-optimal Physically distributed Physically centralized Cooperative Non-cooperative Approximate Heuristic Sub-optimal Optimal Approximate Heuristic Scheduling Model • Dynamic scheduling • Transfer policy • Selection policy • Location policy • Information policy • Heuristics include: • Heavy Node First (HNF) • Critical Path Method (CPM) • Weighted Length (WL) • Earliest Deadline First (EDF) • Least Laxity First (LLF)

  7. Dynamic Framework p0 p1 p3 • Allocation stage: statically assigning processes to resources • Scheduling stage: dynamically based on allocation and application • Provides run-time analysis of loading and balance • Scalable solution for all multiprocessing system applications • Possible multicomputer processor configurations • Round-robin/next available • Single parallel cluster • Pipeline of parallel clusters • Hybrid p0 p5 p4 p2 p4 p5 p6 p3 p5 p1 Interconnect Network

  8. W X Y Z * + / A Application Model • Non-realistic program models (DAGs) • Task model limited • Uniform temporal metrics • Preemptability • Entry points into nodes • Typically unary dependencies • Limited methods of prioritization • Acyclic models limited Directed Acyclic Graph • Task Variables • Computational times • Communications times • Deadlines (laxity) • Precedence • Number of children • Number of parents

  9. Technology Model Programming Difficulties CPU Performance Memory Bandwidth Relative Performance I/O Bandwidth Time • Other technological issues • Compiler optimization techniques • Multifunctional resources • Size, weight, and power considerations

  10. Fault Modeling Drivers • Visibility • Cost • Affects CAUSES Fault Avoidance Specification Implementation Externals Defects TYPES Fault Masking Hardware Software ERRORS • Fault model • Too simplistic • Single fault assumption • Fault isolated to task or processor • Limited recovery techniques • Inconsistent QoS issues Fault Tolerance FAILURES

  11. The Scheduling Framework Temporal Characteristics Hard, Soft, Fuzzy, Real-Time Static Plus Dynamic Adaptive Structured Development A Real-Time Hybrid Scheduling Framework for Fault Tolerant Polymorphic Computing Plan for Detection, Correction, and Recovery Quality of Service (QoS) Runtime Performance Development Efficiency Application Awareness Reconfigurability

  12. Framework Details • Structured development • Provides foundation • Validated by mapping know architecture • Hybrid scheduling • Focal point of research • Static and dynamic approaches • Real-Time • Formal temporal methods • Fault tolerance • Dynamic detection, correction, and recovery • Polymorphism • Reactive environments • Efficient ‘morphing’ • Computing • Quality of Service (QoS) • Usability and generality

More Related