retis lab
play

RETIS Lab Real-Time Systems Laboratory Real-Time Scheduling for - PDF document

RETIS Lab Real-Time Systems Laboratory Real-Time Scheduling for Multiprocessor Systems Giuseppe Lipari The multi-core revolution Technology trend use multiple processing elements on the same chip less power consumption, less


  1. RETIS Lab Real-Time Systems Laboratory Real-Time Scheduling for Multiprocessor Systems Giuseppe Lipari The multi-core revolution • Technology trend – use multiple processing elements on the same chip – less power consumption, less cost, more computational power • A wide choice of architectures – Homogeneous or Heterogeneous – SMPs, Dual-Quad cores, master – slaves, FPGAs with soft cores, etc. • Embedded systems 1

  2. RT-Systems • Theoretical research – single processors: well established and complete results – multiprocessors: many negative results, not enough research • Problems to be solved: – efficient scheduling algorithms and synchronization protocols – schedulability analysis and tools for multiprocessor systems • As Liu said: – “ The simple fact the a task can use only one resource even when several resources are free at the same time adds a surprising amount of difficulty to the scheduling of multiple resources”. Partitioning vs. Global scheduling • Partitioning: – tasks are statically allocated to processors – once partitioned, reduction to single processor scheduling – synchronization and interaction are taken into account separately – Good for static task sets and heterogeneous multiprocessors • Global scheduling – task are dynamically assigned to processors as they are activated (migration) – assumption: processors are all equal – automatic load balancing – Good for dynamic task sets (open systems, task may enter and leave the system dynamically) 2

  3. Partitioning vs. Global Scheduling CPU 0 Partitioning CPU 1 CPU 0 Global Scheduling CPU 1 • Problems – No optimal scheduling in the general case (all problems are similar to knapsack) – Partitioning: less overhead but less flexibility – Global scheduling: more overhead but automatic load balancing Research at RETIS lab • Scheduling algorithms and schedulability analysis of multiprocessor systems • Partitioning – Synchronization protocol (MSRP) – Transaction model for end-to-end constraints • Global scheduling – scheduling analysis of EDF, FP, EDZL • Fault-tolerant systems – a flexible multiprocessor platform, and scheduling analysis 3

  4. Synchronization mechanisms • Multiprocessor Stack Resource Policy – Allows tasks to share resources through critical sections guarded by mutex semaphores in multiprocessors – idea: mix spin-lock with blocking • Properties ρ 1 τ 2 ρ 2 τ 4 – Limits priority inversion τ 1 τ 3 τ 5 – Avoids chains of blocking – Very simple to implement CPU 1 CPU 2 • Results – performance comparable with MPCP (less complex and less overhead) – Implemented in a OSEK-like OS (can be used for automotive) P. Gai, G. Lipari, M. Di Natale, “ Stack size minimization for embedded real-time systems on a chip ”, Design Automation for Embedded Systesm, vol 7, nos. 1-2 Sept. 2002 Transaction model • Scheduling analysis of chains of tasks on multiprocessors – Tasks are statically allocated to processors – Transaction: chain of tasks with end-to-end time constraints (period and deadline) C 1 τ 1 NODE1 T C 2 C 4 τ 2 τ 4 NODE2 D C 3 τ 3 NODE3 • Analysis – Based on Holistic Analysis (Tindell et al. '94) – explicitly consider offsets in the analysis – up to 300% improvement over previous results R. Pellizzoni, G. Lipari, “ Holistic Analysis of Asynchronous real-time transactions with EDF ” Journal of Computer and System Sciences 4

  5. Global scheduling • Tasks may migrate among processors – assume homogeneous processors with shared memory (SMP) – automatic load balancing • Schedulability analysis results – Optimal scheduling for periodic tasks with constant execution tim with high overhead – Classical scheduling algorithms (EDF and FP) do not perform well – Dhall effect when considering heavy tasks – Existing scheduling analysis performs even worse • Our contribution – Improve schedulability analysis of classical algorithms M. Bertogna, M. Cirinei, G. Lipari, “ Improved Schedulability Analysis of EDF on Multiprocessor Platforms”, ECRTS 2005 Flexible Fault-Tolerant scheduling • Faults – as technology progress, transistor gate size is reduced – fault probability increases • Tipical approaches to Integrity – pairs processors executing in lock step – the computational power is drastically reduced – not all task require high integrity • Our approach – allow Fault Tolerant, Fault-Silent and Non Fault Tolerant task to coexist – dynamically reconfigure the multiprocessor platform to support the different tasks 5

  6. Flexible fault tolerant multiprocessors • Trade off between performance and integrity – different guarantees to different tasks – divide the time line – processors work in lock-step or in parallel Non Non Fault Fault Fault Fault tolerant tolerant tolerant tolerant CPU1 … … CPU2 … … 1 proc. 1 proc. 2 proc. 2 proc. equiv. equiv. M. Cirinei, E. Bini, G. Lipari, A. Ferrari, “ A Flexible Scheme for Scheduling Fault-Tolerant Real-Time Tasks on Multiprocessors ” (2007) Current and future work • Mixing Partitioning with Global Scheduling – difficult schedulability analysis! • Shared resources with Global Scheduling – little results until now • Extend resource reservations to multiprocessors – extension of BWI protocol – Virtualization of computational platform • Implementation on Linux – The AQuOSA framework (http://aquosa.sf.net) 6

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend