Achieving Predictable Multicore Execution of Automotive Applications Using the LET Paradigm
|
|
- Ralph Chapman
- 5 years ago
- Views:
Transcription
1 Achieving Predictable Multicore Execution of Automotive Applications Using the LET Paradigm Alessandro Biondi and Marco Di Natale Scuola Superiore Sant Anna, Pisa, Italy
2 Introduction The introduction of safety-critical functions in automotive systems, together with the advent of multicore platforms, brings the need to rethink the development and execution paradigms for embedded functionality Several issues in switching to multicores Lack of appropriate modeling for partitioning applications Legacy SW with causality implicitly verified on single core Need for a portable timing model Achieving timing predictability is not trivial plus increasingly stringent legal regulations and certifiability requirements 2
3 Logical Execution Time Logical Execution Time (LET) introduced as a method to eliminate output jitter and provide determinism in the implementation of control algorithms [Henzinger et al. 2003] LET can be realized with different scheduling strategies provided that the desired semantic is respected Classical design prone to large input/output jitter LET input output/action 3
4 Logical Execution Time Recent renewed attention on LET by automotive industry Several players are adopting LET to provide deterministic end-toend latencies of chains of communicating tasks LET seems a promising solution to also solve other issues in the design and development of real- systems (e.g., SW portability, interface with control engineers, etc.) 5ms Task 10ms Task 20ms Task Example from Dirk Ziegenbein s talk at Dagstuhl seminar on LET 4
5 This Talk 1 Scheduling strategy for realizing LET communication in multicore platforms to achieve execution predictability 2 Implementation on Aurix Tricore TC275 and evaluation with a pseudo-realistic case study (WATERS Challenge 2017 by Bosch) 5
6 Platform & System Model Partitioned Fixed-Priority Scheduling periodic tasks with constrained deadlines T2 T1 T5 T4 T3 T7 T6 T8 CPU 0 CPU 1 CPU 2 CPU 3 core local memory (scratchpad) LM 0 LM 1 LM 2 LM3 Crossbar global memory GM provides point-to-point communication between each core and memory 6
7 Inter-task Communication l Tasks communicate by means of labels, i.e., atomic shared variables (size processor word) Realistic applications include thousands of labels, as witnessed by the 2017 WATERS Challenge data provided by Bosch Communications through labels originate causality dependencies and task chains, typically also across different cores 10ms, CPU#0 l l Task 1 Task 2 Task 3 l 5ms, CPU#2 l l 20ms, CPU#0 7
8 LET AS AN OPPORTUNITY TO CONTROL MEMORY CONTENTION
9 Memory contention Contention in accessing shared memories strongly harms the predictability of software running upon multicores Any- access to shared memories carries considerable pessimism in timing/schedulability analysis We like simple models a sustainable analysis have to consider that memory accesses are ordered such that contention is maximized Bounds on worst-case response s tend to be large CPU #0 under analysis Contention delay Memory access CPU #1 CPU #2 9
10 Controlling Memory Contention Selling point: scheduling LET communication at the beginning of periodic instances allows localizing the access to shared memories in precise windows Such windows are determined by the tasks periods they are hence predictable (off-line) and can host explicit arbitration to avoid contention 10
11 Realizing LET Communication Local copies of data allocated in the scratchpads Shared copies allocated in the global memory LET communication stack moves data from global to local memories and viceversa LET comm read write Task Preemptable task execution with contention-free accesses to local memory CPU 0 CPU 1 CPU 2 CPU 3 l LM 0 LM 1 LM 2 LM3 Crossbar GM l 11
12 Realizing LET Communication Understanding & Modeling the timing of LET communications Coordination of LET communications across cores (controlling the access to global memory) 12
13 LET Timing: Logical View Understanding LET timing: not all reads and writes are actually necessary Write (output) Read (input) τ 1 producer τ 2 consumer (undersampling) τ 3 consumer τ 4 producer (oversampling) 13
14 LET Timing: Scheduling LET task τ 1 producer τ 2 consumer (undersampling) τ 3 consumer τ 4 producer (oversampling) 14
15 LET Tasks LET task τ 1 producer τ 2 consumer τ 3 consumer Generalized Multi-Frame (GMF) Task Variable frames with different inter-arrival and (undersampling) execution s Each frame consists in a set of read/write operations Frames are cyclically repeated and can be determined off-line as a function of the tasks periods and the communication map τ 4 producer (oversampling) 15
16 Realizing LET Communication Understanding & Modeling the timing of LET communications Coordination of LET communications across cores (controlling the access to global memory) 16
17 LET Tasks: Synchronization One GMF Task running at the highest priority in each core to implement LET communication Access to shared memory is regulated by lightweight spin-based synchronization CPU #0 CPU #1 CPU #2 Write (output) Read (input) Busy waiting 17
18 LET Tasks: Synchronization One GMF Task running at the highest priority in each core to implement LET communication Access to shared memory is regulated by lightweight spin-based synchronization Write Read Update shared copy of data (copy from local memory to global memory) Read shared copy of data (copy from global memory to local memory) Avoid contention when accessing the global memory (explicit synchronization) removing pessimism in the analysis Limited jitter X Potential priority inversion due to high-priority communication 18
19 LET and AUTOSAR RTE The GMF tasks implementing the LET communication can be automatically generated as part of the AUTOSAR RTE Our approach is prone for being implemented in a modelbased design flow Integration within AUTOSAR RTE takes care of mirroring local copies according to the LET paradigm RTE offers an API to access the local copies Local copies are accessed with explicit communication RTE LET task from global to local from local to global Application Contention-free accesses to local memory τ i 19
20 IMPLEMENTATION
21 Implementation Reference platform: Infineon Aurix TC275 Asymmetric Tricore with scratchpads Widely adopted by the automotive industry Can be configured to match the abstract model introduced before RTOS: Implementation based on ERIKA Enterprise v2 OSEK certified De-facto representative of the typical behavior of AUTOSAR Oses Open-source 21
22 Aurix TC27x Global memory Local (scratchpad) data memories source: TC27x datasheet 22
23 Implementation (1) The implementation required facing with three major issues: 1. Synchronization of task activations across cores Solved using remote procedure call (RPC) features available in ERIKA Single r connected to an OSEK counter handled in CPU #0 CPU #0 uses RPC to activate the tasks in all the cores by means of OSEK alarms (inter-core interrupts are leveraged) HW Timer INT OSEK counter CPU 0 CPU 1 CPU 2 RPC RPC 23
24 Implementation (2) The implementation required facing with three major issues: 2. Realization of GMF tasks Memory vs. trade-off Possible approach: scheduling table Potentially needs to store information up to the hyper-period It would introduce a lot of duplicate information Hint: We are dealing with specific instances of GMF tasks! Leveraging some analytical properties of LET timing, GMF tasks can be implemented with counters for each pair of communicating tasks Need to keep track to the next activation LET task Need to determine which communications must be performed 24
25 Implementation (3) The implementation required facing with three major issues: 3. Inter-core synchronization to access global memory Similar strategy as for Mellor-Crummey & Scott locks Spin variables allocated to local scratchpads Each core can directly access all local scratchpads, hence making notification of a spinning core easy (baton passing) Need to pay attention to achieve sequential consistency (barriers with DSYNC) spin CPU 0 CPU 1 CPU 2 CPU 3 LM0 LM1 LM2 LM3 notify Crossbar GM 25
26 Case Study Implementation tested with a case study Mock application generated from the model provided by Bosch for the WATERS 2017 challenge representative of an engine control application ~20 tasks partitioned into the three cores of the TC275 ~5000 labels (atomic variables) used by the tasks to communicate Experimental setup Infineon TriBoard v2 with 200MHz ERIKA Enterprise v2.7 HIGHTECH Aurix C compiler v4.6 Lauterbach PowerTrace-II & PowerDebug 26
27 Code Generation WATERS 2017 Challenge provided by Bosch Amalthea model (XML) Parser & Model transformation Code Generator Mock Application (.c/.h) RTOS configuration (OIL/.c) RTE to access labels (.c/.h) LET communication stack (.c/.h) 27
28 Experimental Results The adoption of the LET paradigm significantly increase determinism - it s an additional system feature! From a scheduling (timing) perspective, our realization faces with two conflicting trends Worst-case delays due to memory contention are reduced. Pessimism is removed by design and schedulability analysis is simplified. High priority workload is required to perform LET communications, which may harm latency-sensitive tasks (priority inversion). 28
29 Experimental Results What s the impact of the proposed approach in terms of run- overhead and memory footprint? Despite the benefits in controlling memory contention, is the priority inversion introduced by LET communication harmful? Exec first frame of LET tasks (most expensive) Footprint (in bytes) +7.5% (can be lower for a real appplication) Mostly due local copies of labels and code of LET communication 29
30 OTHER CONTRIBUTIONS LET semantic options & analysis
31 Memory-aware RTA Objective: extend the response- analysis for partitioned fixed-priority scheduling to explicitly account for delays due to memory contention Analysis design principles: 1. Use a simple task model (no execution traces) Contention-free WCET Period and deadline Per-job max. number of accesses to global memory 2. Do not inflate WCETs but rather account for contention at the stage of response- analysis [inflation-free analysis, Brandenburg 2013] Provides a taste of the impact of any- memory accesses on response s Still, it is affected by considerable intrinsic pessimism 31
32 Memory-aware RTA With the proposed approach the analysis is simplified: Standard RTA for partitioned fixed-priority scheduling plus a high-priority GMF task Parameters of the GMF tasks can be derived as a function of Periods of the periodic tasks Labels accessed by each task Configuration of the inter-core synchronization mechanism LET Task Task 1 Task 2 32
33 Clarifications on LET Semantics Warning: different scheduling decisions for LET communications may lead to completely different LET semantics! The order with which read and write operations are performed is really important Different orders also lead to different worst-case end-to-end latencies in task chains A clear formalization of the adopted semantic is needed to avoid misunderstanding when talking about LET To shed the light on possible pitfalls, the paper also discusses three different LET semantic options, focusing on the impact of scheduling decisions on end-to-end latencies 33
34 Conclusions Presented a scheme for practical implementation and analysis of LET communication for multicore systems LET taken as an opportunity to control memory contention Implemented upon ERIKAv2 on Infineon Tricore TC275 and tested with a case study based on WATERS 2017 Challenge model Take-away messages Impact on run- overhead has been found negligible The only concern may be the increase of footprint There are a lot of open problems and possible improvements Future works Ad-hoc schedulability analysis under the proposed scheme Holistic synthesis methodology that optimizes label placement, the generation of the LET communication stack, # of buffers, and possibly the runnable placement 34
35 Thank you! Alessandro Biondi
Partitioned Fixed-Priority Scheduling of Parallel Tasks Without Preemptions
Partitioned Fixed-Priority Scheduling of Parallel Tasks Without Preemptions *, Alessandro Biondi *, Geoffrey Nelissen, and Giorgio Buttazzo * * ReTiS Lab, Scuola Superiore Sant Anna, Pisa, Italy CISTER,
More informationBlocking Analysis of FIFO, Unordered, and Priority-Ordered Spin Locks
On Spin Locks in AUTOSAR: Blocking Analysis of FIFO, Unordered, and Priority-Ordered Spin Locks Alexander Wieder and Björn Brandenburg MPI-SWS RTSS 2013 12/04/2013 Vancouver, Canada Motivation: AUTOSAR:
More informationRTA-OSEK. fåñáåéçå=qêá`çêé=ñ~ãáäó=ïáíü=íüé=q~ëâáåö=`çãéáäéê. cé~íìêéë=~í=~=dä~ååé. oq^jlpbh. `çãéáäéêl^ëëéãääéêliáåâéê.
RTA-OSEK fåñáåéçå=qêá`çêé=ñ~ãáäó=ïáíü=íüé=q~ëâáåö=`çãéáäéê cé~íìêéë=~í=~=dä~ååé OSEK/VDX OS version 2.2 certified OS RTOS overhead: 28 bytes RAM, 192 bytes ROM Category 2 interrupt latency: 33 CPU cycles
More informationAUTOBEST: A United AUTOSAR-OS And ARINC 653 Kernel. Alexander Züpke, Marc Bommert, Daniel Lohmann
AUTOBEST: A United AUTOSAR-OS And ARINC 653 Kernel Alexander Züpke, Marc Bommert, Daniel Lohmann alexander.zuepke@hs-rm.de, marc.bommert@hs-rm.de, lohmann@cs.fau.de Motivation Automotive and Avionic industry
More informationRTA-OSEK Infineon TriCore with the Green Hills Software Compiler
RTA-OSEK Infineon TriCore with the Green Hills Software Compiler Features at a Glance OSEK/VDX OS v2.2 Certified OS RTOS overhead: 30 bytes RAM, 150 bytes ROM Category 2 interrupt latency: 29 CPU cycles
More informationReal Time Operating Systems and Middleware
Real Time Operating Systems and Middleware Introduction to Real-Time Systems Luca Abeni abeni@disi.unitn.it Credits: Luigi Palopoli, Giuseppe Lipari, Marco Di Natale, and Giorgio Buttazzo Scuola Superiore
More informationHandling Challenges of Multi-Core Technology in Automotive Software Engineering
Model Based Development Tools for Embedded Multi-Core Systems Handling Challenges of Multi-Core Technology in Automotive Software Engineering VECTOR INDIA CONFERENCE 2017 Timing-Architects Embedded Systems
More informationMulticore for safety-critical embedded systems: challenges andmarch opportunities 15, / 28
Multicore for safety-critical embedded systems: challenges and opportunities Giuseppe Lipari CRItAL - Émeraude March 15, 2016 Multicore for safety-critical embedded systems: challenges andmarch opportunities
More informationPorting applications over the various conformance classes of Erika Enterprise
Porting applications over the various conformance classes of Erika Enterprise Quick guide version: 1.0.1 December 11, 2012 About Evidence S.r.l. Evidence is a spin-off company of the ReTiS Lab of the Scuola
More informationEnsuring Schedulability of Spacecraft Flight Software
Ensuring Schedulability of Spacecraft Flight Software Flight Software Workshop 7-9 November 2012 Marek Prochazka & Jorge Lopez Trescastro European Space Agency OUTLINE Introduction Current approach to
More informationTDDD07 Real-time Systems Lecture 10: Wrapping up & Real-time operating systems
TDDD07 Real-time Systems Lecture 10: Wrapping up & Real-time operating systems Simin Nadjm-Tehrani Real-time Systems Laboratory Department of Computer and Information Science Linköping Univerity 28 pages
More informationAutomotive and open-source: Current solutions and future developments
Automotive and open-source: Current solutions and future developments Evidence Srl: Cobra AT: Paolo Gai, pj@evidence.eu.com Marco Di Natale, marco@sssup.it Graziano Mangarotti, g.mangiarotti@cobra-at.com
More informationAUTOBEST: A microkernel-based system (not only) for automotive applications. Marc Bommert, Alexander Züpke, Robert Kaiser.
AUTOBEST: A microkernel-based system (not only) for automotive applications Marc Bommert, Alexander Züpke, Robert Kaiser vorname.name@hs-rm.de Outline Motivation AUTOSAR ARINC 653 AUTOBEST Architecture
More informationWhat s An OS? Cyclic Executive. Interrupts. Advantages Simple implementation Low overhead Very predictable
What s An OS? Provides environment for executing programs Process abstraction for multitasking/concurrency scheduling Hardware abstraction layer (device drivers) File systems Communication Do we need an
More informationUNIT -3 PROCESS AND OPERATING SYSTEMS 2marks 1. Define Process? Process is a computational unit that processes on a CPU under the control of a scheduling kernel of an OS. It has a process structure, called
More informationGreen Hills Software, Inc.
Green Hills Software, Inc. A Safe Tasking Approach to Ada95 Jim Gleason Engineering Manager Ada Products 5.0-1 Overview Multiple approaches to safe tasking with Ada95 No Tasking - SPARK Ada95 Restricted
More informationTaking the Right Turn with Safe and Modular Solutions for the Automotive Industry
Taking the Right Turn with Safe and Modular Solutions for the Automotive Industry A Time-Triggered Middleware for Safety- Critical Automotive Applications Ayhan Mehmet, Maximilian Rosenblattl, Wilfried
More informationReference Model and Scheduling Policies for Real-Time Systems
ESG Seminar p.1/42 Reference Model and Scheduling Policies for Real-Time Systems Mayank Agarwal and Ankit Mathur Dept. of Computer Science and Engineering, Indian Institute of Technology Delhi ESG Seminar
More informationERIKA Enterprise LWIP Tutorial
ERIKA Enterprise LWIP Tutorial for the Altera Nios II platform version: 1.0.1 December 11, 2012 About Evidence S.r.l. Evidence is a spin-off company of the ReTiS Lab of the Scuola Superiore S. Anna, Pisa,
More informationERIKA Enterprise Manual for the Altera Nios II target. the multicore RTOS on FPGAs
ERIKA Enterprise Manual for the Altera Nios II target the multicore RTOS on FPGAs version: 1.2.1 March 5, 2009 About Evidence S.r.l. Evidence is a spin-off company of the ReTiS Lab of the Scuola Superiore
More informationCapita Selecta: Software engineering for automotive systems
Capita Selecta: Software engineering for automotive systems Objective Architecture Description Languages: o Students understand the purpose of an ADL. o Students can use a specific ADL for automotive systems.
More informationIEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS, VOL. 7, NO. 1, FEBRUARY
IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS, VOL. 7, NO. 1, FEBRUARY 2011 1 Schedule Optimization of Time-Triggered Systems Communicating Over the FlexRay Static Segment Haibo Zeng, Marco Di Natale, Member,
More informationRTA-OSEK Texas Instruments TMS570 with the TI Compiler
RTA-OSEK Texas Instruments TMS570 with the TI Compiler Features at a Glance OSEK/VDX OS v2.2 Certified OS RTOS overhead: 28 bytes RAM, 176 bytes ROM Category 2 interrupt latency: 214 CPU cycles Applications
More informationReal-Time Component Software. slide credits: H. Kopetz, P. Puschner
Real-Time Component Software slide credits: H. Kopetz, P. Puschner Overview OS services Task Structure Task Interaction Input/Output Error Detection 2 Operating System and Middleware Application Software
More informationCommunication Centric Design in Complex Automotive Embedded Systems
Communication Centric Design in Complex Automotive Embedded Systems Arne Hamann 1, Dakshina Dasari 2, Simon Kramer 3, Michael Pressler 4, and Falk Wurst 5 1 Corporate Research, Robert Bosch GmbH, Germany
More information2. Introduction to Software for Embedded Systems
2. Introduction to Software for Embedded Systems Lothar Thiele ETH Zurich, Switzerland 2-1 Contents of Lectures (Lothar Thiele) 1. Introduction to Embedded System Design 2. Software for Embedded Systems
More informationMechanisms for Guaranteeing Data Consistency and Flow Preservation in AUTOSAR Software on Multi-core Platforms
Mechanisms for Guaranteeing Data Consistency and Flow Preservation in AUTOSAR Software on Multi-core Platforms Haibo Zeng General Motors R&D, haibo.zeng@gm.com Marco Di Natale Scuola Superiore S. Anna,
More informationAMDC 2017 Liviona Multi-Core in Automotive Powertrain and Next Steps Towards Parallelization
Bitte decken Sie die schraffierte Fläche mit einem Bild ab. Please cover the shaded area with a picture. (24,4 x 11,0 cm) AMDC 2017 Liviona Multi-Core in Automotive Powertrain and Ralph Mader, 25. April
More informationEmbedded Systems. 6. Real-Time Operating Systems
Embedded Systems 6. Real-Time Operating Systems Lothar Thiele 6-1 Contents of Course 1. Embedded Systems Introduction 2. Software Introduction 7. System Components 10. Models 3. Real-Time Models 4. Periodic/Aperiodic
More informationCPSC/ECE 3220 Summer 2018 Exam 2 No Electronics.
CPSC/ECE 3220 Summer 2018 Exam 2 No Electronics. Name: Write one of the words or terms from the following list into the blank appearing to the left of the appropriate definition. Note that there are more
More informationOVERHEADS ENHANCEMENT IN MUTIPLE PROCESSING SYSTEMS BY ANURAG REDDY GANKAT KARTHIK REDDY AKKATI
CMPE 655- MULTIPLE PROCESSOR SYSTEMS OVERHEADS ENHANCEMENT IN MUTIPLE PROCESSING SYSTEMS BY ANURAG REDDY GANKAT KARTHIK REDDY AKKATI What is MULTI PROCESSING?? Multiprocessing is the coordinated processing
More informationOperating Systems (2INC0) 2018/19. Introduction (01) Dr. Tanir Ozcelebi. Courtesy of Prof. Dr. Johan Lukkien. System Architecture and Networking Group
Operating Systems (2INC0) 20/19 Introduction (01) Dr. Courtesy of Prof. Dr. Johan Lukkien System Architecture and Networking Group Course Overview Introduction to operating systems Processes, threads and
More informationEMBEDDED OPERATING SYSTEMS
EMBEDDED OPERATING SYSTEMS Embedded Operating Systems Requirements Real-time OSes General requirements Scheduling, task switching, and I/O Require the support of an OS for embedded applications Some very
More informationERIKA Enterprise FIFO message passing Tutorial
ERIKA Enterprise FIFO message passing Tutorial for the Altera Nios II platform version: 1.1.0 December 11, 2012 About Evidence S.r.l. Evidence is a spin-off company of the ReTiS Lab of the Scuola Superiore
More informationRTA-OSEK Texas Instruments TMS470R1x with the TI Compiler
RTA-OSEK Texas Instruments TMS470R1x with the TI Compiler Features at a Glance OSEK/VDX OS v2.2 Certified OS RTOS overhead: 30 bytes RAM, 144 bytes ROM Category 2 interrupt latency: 87 CPU cycles Applications
More informationEvidence Company description and future challenges. Paolo Gai, IWES Workshop Pisa, 21 September 2016
1 Evidence Company description and future challenges Paolo Gai, pj@evidence.eu.com IWES Workshop Pisa, 21 September 2016 2 The company Founded in 2002 as spin-off company of the Real-Time Systems Lab at
More informationAdding Timing Analysis to Functional Design to Predict Implementation Errors
2007-01-1272 Adding Timing Analysis to Functional Design to Predict Implementation Errors Paolo Gai Evidence Srl, Italy, pj@evidence.eu.com Giuseppe Lipari, Marco Di Natale, Nicola Serreli Scuola Superiore
More informationProcesses and Non-Preemptive Scheduling. Otto J. Anshus
Processes and Non-Preemptive Scheduling Otto J. Anshus Threads Processes Processes Kernel An aside on concurrency Timing and sequence of events are key concurrency issues We will study classical OS concurrency
More informationCS140 Operating Systems Midterm Review. Feb. 5 th, 2009 Derrick Isaacson
CS140 Operating Systems Midterm Review Feb. 5 th, 2009 Derrick Isaacson Midterm Quiz Tues. Feb. 10 th In class (4:15-5:30 Skilling) Open book, open notes (closed laptop) Bring printouts You won t have
More informationSleepy Sloth: Threads as Interrupts as Threads
Sleepy Sloth: Threads as Interrupts as Threads Wanja Hofer, Daniel Lohmann, Wolfgang Schröder-Preikschat 32nd IEEE Real-Time Systems Symposium November 30, 2011 My Personal Dilemma Motivation Get a PhD
More informationRTA-OSEK Renesas SH2A with the WindRiver Compiler
RTA-OSEK Renesas SH2A with the WindRiver Compiler Features at a Glance OSEK/VDX OS v2.2 Certified OS RTOS overhead: 30 bytes RAM, 150 bytes ROM Category 2 interrupt latency: 83 CPU cycles Applications
More informationSystems Integration. Gautam H. Thaker Patrick J. Lardieri Donald Krecker Keith O Hara Chuck Winters
Systems Integration Achieving Bounded End-to to-end Latencies with Real-time Linux and Realtime CORBA Gautam H. Thaker Patrick J. Lardieri Donald Krecker Keith O Hara Chuck Winters LM Advanced Technology
More informationCS 471 Operating Systems. Yue Cheng. George Mason University Fall 2017
CS 471 Operating Systems Yue Cheng George Mason University Fall 2017 Outline o Process concept o Process creation o Process states and scheduling o Preemption and context switch o Inter-process communication
More informationRTA-OSEK Freescale MPC55xx/56xx with the WindRiver Compiler
RTA-OSEK Freescale MPC55xx/56xx with the WindRiver Compiler Features at a Glance OSEK/VDX OS v2.2 Certified OS RTOS overhead: 42 bytes RAM, 190 bytes ROM Category 2 interrupt latency: 133 CPU cycles Applications
More informationAn implementation of the flexible spin-lock model in ERIKA Enterprise on a multi-core platform
An implementation of the flexible spin-lock model in ERIKA Enterprise on a multi-core platform Sara Afshar 1, Maikel P.W. Verwielen 2, Paolo Gai 3, Moris Behnam 1, Reinder J. Bril 1,2 1 Mälardalen University,
More informationCSE 120 Principles of Operating Systems
CSE 120 Principles of Operating Systems Spring 2018 Lecture 15: Multicore Geoffrey M. Voelker Multicore Operating Systems We have generally discussed operating systems concepts independent of the number
More informationProfiling and Debugging OpenCL Applications with ARM Development Tools. October 2014
Profiling and Debugging OpenCL Applications with ARM Development Tools October 2014 1 Agenda 1. Introduction to GPU Compute 2. ARM Development Solutions 3. Mali GPU Architecture 4. Using ARM DS-5 Streamline
More informationVerification and Profiling tools
Verification and Profiling tools Dissemination Event September 2014 Nick Lay Dave George Rapita Systems Ltd. Introduction to Rapita Systems www.rapitasystems.com Rapita Systems Ltd. Founded in January
More informationThe Real-time Specification for Java
The Real-time Specification for Java Roadmap Overview of the RTSJ Memory Management Clocks and Time Scheduling and Schedulable Objects Asynchronous Events and Handlers Real-Time Threads Asynchronous Transfer
More informationMULTI SLOTH: An Efficient Multi-Core RTOS using Hardware-Based Scheduling
MULTI SLOTH: An Efficient Multi-Core RTOS using Hardware-Based Scheduling Rainer Müller, Daniel Danner, Wolfgang Schröder-Preikschat, Daniel Lohmann Friedrich Alexander Universität (FAU) Erlangen Nürnberg,
More informationProgramming Languages for Real-Time Systems. LS 12, TU Dortmund
Programming Languages for Real-Time Systems Prof. Dr. Jian-Jia Chen LS 12, TU Dortmund 20 June 2016 Prof. Dr. Jian-Jia Chen (LS 12, TU Dortmund) 1 / 41 References Slides are based on Prof. Wang Yi, Prof.
More informationWCET-Aware C Compiler: WCC
12 WCET-Aware C Compiler: WCC Jian-Jia Chen (slides are based on Prof. Heiko Falk) TU Dortmund, Informatik 12 2015 年 05 月 05 日 These slides use Microsoft clip arts. Microsoft copyright restrictions apply.
More informationRT- Xen: Real- Time Virtualiza2on. Chenyang Lu Cyber- Physical Systems Laboratory Department of Computer Science and Engineering
RT- Xen: Real- Time Virtualiza2on Chenyang Lu Cyber- Physical Systems Laboratory Department of Computer Science and Engineering Embedded Systems Ø Consolidate 100 ECUs à ~10 multicore processors. Ø Integrate
More informationA Comparison of Scheduling Latency in Linux, PREEMPT_RT, and LITMUS RT. Felipe Cerqueira and Björn Brandenburg
A Comparison of Scheduling Latency in Linux, PREEMPT_RT, and LITMUS RT Felipe Cerqueira and Björn Brandenburg July 9th, 2013 1 Linux as a Real-Time OS 2 Linux as a Real-Time OS Optimizing system responsiveness
More informationCPU Scheduling. Operating Systems (Fall/Winter 2018) Yajin Zhou ( Zhejiang University
Operating Systems (Fall/Winter 2018) CPU Scheduling Yajin Zhou (http://yajin.org) Zhejiang University Acknowledgement: some pages are based on the slides from Zhi Wang(fsu). Review Motivation to use threads
More informationA Predictable RTOS. Mantis Cheng Department of Computer Science University of Victoria
A Predictable RTOS Mantis Cheng Department of Computer Science University of Victoria Outline I. Analysis of Timeliness Requirements II. Analysis of IO Requirements III. Time in Scheduling IV. IO in Scheduling
More informationCPU Scheduling: Objectives
CPU Scheduling: Objectives CPU scheduling, the basis for multiprogrammed operating systems CPU-scheduling algorithms Evaluation criteria for selecting a CPU-scheduling algorithm for a particular system
More informationScheduling Algorithm and Analysis
Scheduling Algorithm and Analysis Model and Cyclic Scheduling (Module 27) Yann-Hang Lee Arizona State University yhlee@asu.edu (480) 727-7507 Summer 2014 Task Scheduling Schedule: to determine which task
More informationARTIST-Relevant Research from Linköping
ARTIST-Relevant Research from Linköping Department of Computer and Information Science (IDA) Linköping University http://www.ida.liu.se/~eslab/ 1 Outline Communication-Intensive Real-Time Systems Timing
More informationHSA Foundation! Advanced Topics on Heterogeneous System Architectures. Politecnico di Milano! Seminar Room (Bld 20)! 15 December, 2017!
Advanced Topics on Heterogeneous System Architectures HSA Foundation! Politecnico di Milano! Seminar Room (Bld 20)! 15 December, 2017! Antonio R. Miele! Marco D. Santambrogio! Politecnico di Milano! 2
More informationNon-Blocking Write Protocol NBW:
Non-Blocking Write Protocol NBW: A Solution to a Real-Time Synchronization Problem By: Hermann Kopetz and Johannes Reisinger Presented By: Jonathan Labin March 8 th 2005 Classic Mutual Exclusion Scenario
More informationAUTOSAR Extensions for Predictable Task Synchronization in Multi- Core ECUs
11AE-0089 AUTOSAR Extensions for Predictable Task Synchronization in Multi- Core ECUs Copyright 2011 SAE International Karthik Lakshmanan, Gaurav Bhatia, Ragunathan (Raj) Rajkumar Carnegie Mellon University
More informationReal Time Linux patches: history and usage
Real Time Linux patches: history and usage Presentation first given at: FOSDEM 2006 Embedded Development Room See www.fosdem.org Klaas van Gend Field Application Engineer for Europe Why Linux in Real-Time
More informationCEC 450 Real-Time Systems
CEC 450 Real-Time Systems Lecture 6 Accounting for I/O Latency September 28, 2015 Sam Siewert A Service Release and Response C i WCET Input/Output Latency Interference Time Response Time = Time Actuation
More informationThreads SPL/2010 SPL/20 1
Threads 1 Today Processes and Scheduling Threads Abstract Object Models Computation Models Java Support for Threads 2 Process vs. Program processes as the basic unit of execution managed by OS OS as any
More informationSemantics-Based Integration of Embedded Systems Models
Semantics-Based Integration of Embedded Systems Models Project András Balogh, OptixWare Research & Development Ltd. n 100021 Outline Embedded systems overview Overview of the GENESYS-INDEXYS approach Current
More informationDriving the standard for optimized embedded systems
TM Driving the standard for optimized embedded systems By Michael O Donnell he embedded engineering community has recognized OSEK/VDX as an optimal standard for creating embedded applications. Its primary
More informationProcesses. CS 475, Spring 2018 Concurrent & Distributed Systems
Processes CS 475, Spring 2018 Concurrent & Distributed Systems Review: Abstractions 2 Review: Concurrency & Parallelism 4 different things: T1 T2 T3 T4 Concurrency: (1 processor) Time T1 T2 T3 T4 T1 T1
More informationDepartment of Computer Science, Institute for System Architecture, Operating Systems Group. Real-Time Systems '08 / '09. Hardware.
Department of Computer Science, Institute for System Architecture, Operating Systems Group Real-Time Systems '08 / '09 Hardware Marcus Völp Outlook Hardware is Source of Unpredictability Caches Pipeline
More informationChapter 4: Multithreaded
Chapter 4: Multithreaded Programming Chapter 4: Multithreaded Programming Overview Multithreading Models Thread Libraries Threading Issues Operating-System Examples 2009/10/19 2 4.1 Overview A thread is
More informationUsing Industry Standards to Exploit the Advantages and Resolve the Challenges of Multicore Technology
Using Industry Standards to Exploit the Advantages and Resolve the Challenges of Multicore Technology September 19, 2007 Markus Levy, EEMBC and Multicore Association Enabling the Multicore Ecosystem Multicore
More informationCost models for shared memory architectures
University of Pisa and Scuola Superiore Sant Anna Master Degree in Computer Science and Networking Laurea Magistrale in Informatica e Networking Master Thesis Cost models for shared memory architectures
More informationCHAPTER 2: PROCESS MANAGEMENT
1 CHAPTER 2: PROCESS MANAGEMENT Slides by: Ms. Shree Jaswal TOPICS TO BE COVERED Process description: Process, Process States, Process Control Block (PCB), Threads, Thread management. Process Scheduling:
More informationLecture 4: Memory Management & The Programming Interface
CS 422/522 Design & Implementation of Operating Systems Lecture 4: Memory Management & The Programming Interface Zhong Shao Dept. of Computer Science Yale University Acknowledgement: some slides are taken
More informationFoundations of the C++ Concurrency Memory Model
Foundations of the C++ Concurrency Memory Model John Mellor-Crummey and Karthik Murthy Department of Computer Science Rice University johnmc@rice.edu COMP 522 27 September 2016 Before C++ Memory Model
More informationHardware-Software Codesign
Hardware-Software Codesign 8. Performance Estimation Lothar Thiele 8-1 System Design specification system synthesis estimation -compilation intellectual prop. code instruction set HW-synthesis intellectual
More informationEMERALDS: a small-memory real-time microkernel
EMERALDS: a small-memory real-time microkernel By Khawar M. Zuberi, Padmanabhan Pillai, and Kang G. Shin 4/28/2005 CMSC 691S Real-Time Systems 1 Outline Introduction Requirements EMERALDS Overview CSD
More informationCPSC/ECE 3220 Summer 2017 Exam 2
CPSC/ECE 3220 Summer 2017 Exam 2 Name: Part 1: Word Bank Write one of the words or terms from the following list into the blank appearing to the left of the appropriate definition. Note that there are
More informationChapter 5: CPU Scheduling
COP 4610: Introduction to Operating Systems (Fall 2016) Chapter 5: CPU Scheduling Zhi Wang Florida State University Contents Basic concepts Scheduling criteria Scheduling algorithms Thread scheduling Multiple-processor
More informationMultimedia Systems 2011/2012
Multimedia Systems 2011/2012 System Architecture Prof. Dr. Paul Müller University of Kaiserslautern Department of Computer Science Integrated Communication Systems ICSY http://www.icsy.de Sitemap 2 Hardware
More informationImplementing Scheduling Algorithms. Real-Time and Embedded Systems (M) Lecture 9
Implementing Scheduling Algorithms Real-Time and Embedded Systems (M) Lecture 9 Lecture Outline Implementing real time systems Key concepts and constraints System architectures: Cyclic executive Microkernel
More informationAstréeA From Research To Industry
AstréeA From Research To Industry Dr.-Ing. Stephan Wilhelm, AbsInt GmbH Workshop on Static Analysis of Concurrent Software Edinburgh, 2016 2 AbsInt Angewandte Informatik GmbH Provides advanced development
More informationCERTIFICATION ISSUES IN AUTOMOTIVE SOFTWARE
CERTIFICATION ISSUES IN AUTOMOTIVE SOFTWARE Speaker: Mario Fusani Systems and Software Evaluation Centre ISTI CNR, Pisa, Italy mario.fusani@isti.cnr.it 1 CONTENTS Certification What is certification? Definitions
More informationAgenda. Threads. Single and Multi-threaded Processes. What is Thread. CSCI 444/544 Operating Systems Fall 2008
Agenda Threads CSCI 444/544 Operating Systems Fall 2008 Thread concept Thread vs process Thread implementation - user-level - kernel-level - hybrid Inter-process (inter-thread) communication What is Thread
More informationConcurrent Programming. Implementation Alternatives. Content. Real-Time Systems, Lecture 2. Historical Implementation Alternatives.
Content Concurrent Programming Real-Time Systems, Lecture 2 [Real-Time Control System: Chapter 3] 1. Implementation Alternatives Martina Maggio 19 January 2017 Lund University, Department of Automatic
More informationOPERATING SYSTEMS CS3502 Spring Processor Scheduling. Chapter 5
OPERATING SYSTEMS CS3502 Spring 2018 Processor Scheduling Chapter 5 Goals of Processor Scheduling Scheduling is the sharing of the CPU among the processes in the ready queue The critical activities are:
More informationConcurrent Programming
Concurrent Programming Real-Time Systems, Lecture 2 Martina Maggio 19 January 2017 Lund University, Department of Automatic Control www.control.lth.se/course/frtn01 Content [Real-Time Control System: Chapter
More informationModern Processor Architectures. L25: Modern Compiler Design
Modern Processor Architectures L25: Modern Compiler Design The 1960s - 1970s Instructions took multiple cycles Only one instruction in flight at once Optimisation meant minimising the number of instructions
More informationTasks. Task Implementation and management
Tasks Task Implementation and management Tasks Vocab Absolute time - real world time Relative time - time referenced to some event Interval - any slice of time characterized by start & end times Duration
More informationReal-Time Mixed-Criticality Wormhole Networks
eal-time Mixed-Criticality Wormhole Networks Leandro Soares Indrusiak eal-time Systems Group Department of Computer Science University of York United Kingdom eal-time Systems Group 1 Outline Wormhole Networks
More informationContext. Hardware Performance. Increasing complexity. Software Complexity. And the Result is. Embedded systems are becoming more complex every day:
Context Embedded systems are becoming more complex every day: Giorgio uttazzo g.buttazzo@sssup.it more functions higher performance higher efficiency Scuola Superiore Sant nna new hardware s Increasing
More informationContext. Giorgio Buttazzo. Scuola Superiore Sant Anna. Embedded systems are becoming more complex every day: more functions. higher performance
Giorgio uttazzo g.buttazzo@sssup.it Scuola Superiore Sant nna Context Embedded systems are becoming more complex every day: more functions higher performance higher efficiency new hardware platforms 2
More informationReal-time Support in Operating Systems
Real-time Support in Operating Systems Colin Perkins teaching/2003-2004/rtes4/lecture11.pdf Lecture Outline Overview of the rest of the module Real-time support in operating systems Overview of concepts
More informationImpact of Runtime Architectures on Control System Stability
Impact of Runtime Architectures on Control System Stability P. Feiler, J. Hansson Software Engineering Institute, Pittsburgh, PA Abstract: Control systems are sensitive to the endto-end latency and age
More informationMulticore Migration Study in Automotive Powertrain Domain
2 nd Workshop on Certifiable Multicore Avionics and Automotive Systems Multicore Migration Study in Automotive Powertrain Domain 21/Apr/2017 Hitachi, Ltd., Takeshi Fukuda Tasuku Ishigooka, Fumio Narisawa
More informationCs703 Current Midterm papers solved by Naina_Mailk. Q: 1 what are the Characteristics of Real-Time Operating system?
Cs703 Current Midterm papers solved by Naina_Mailk Q: 1 what are the Characteristics of Real-Time Operating system? Characteristics of Real-Time Operating Systems Deterministic Operations are performed
More informationParallelism Marco Serafini
Parallelism Marco Serafini COMPSCI 590S Lecture 3 Announcements Reviews First paper posted on website Review due by this Wednesday 11 PM (hard deadline) Data Science Career Mixer (save the date!) November
More informationChapter 1 Computer System Overview
Operating Systems: Internals and Design Principles Chapter 1 Computer System Overview Seventh Edition By William Stallings Objectives of Chapter To provide a grand tour of the major computer system components:
More informationPattern-Based Analysis of an Embedded Real-Time System Architecture
Pattern-Based Analysis of an Embedded Real-Time System Architecture Peter Feiler Software Engineering Institute phf@sei.cmu.edu 412-268-7790 Outline Introduction to SAE AADL Standard The case study Towards
More informationEmbedded Systems. 5. Operating Systems. Lothar Thiele. Computer Engineering and Networks Laboratory
Embedded Systems 5. Operating Systems Lothar Thiele Computer Engineering and Networks Laboratory Embedded Operating Systems 5 2 Embedded Operating System (OS) Why an operating system (OS) at all? Same
More information