Empirical Approximation and Impact on Schedulability

Size: px
Start display at page:

Download "Empirical Approximation and Impact on Schedulability"

Transcription

1 Cache-Related Preemption and Migration Delays: Empirical Approximation and Impact on Schedulability OSPERT 2010, Brussels July 6, 2010 Andrea Bastoni University of Rome Tor Vergata Björn B. Brandenburg James H. Anderson The University of North Carolina at Chapel Hill Work supported by AT&T, IBM, and Sun Corps.; NSF grants CNS , CNS , and CNS ; ARO grant W911NF ; and AFOSR grant FA

2 The Problem Release Deadline P1 T1 T2 Overhead P2 T2 T3 T2 migrates to P t Multiprocessor Global l EDF schedule with overheads. Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 2

3 The Problem Kernel overheads (e.g., release overhead, scheduling overhead, etc.) are easy to measure. P1 T2 P2 T2 Can directly measure delay (code instrumentation) t Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 3

4 The Problem Overheads due to preemption / migrations are not! P1 T2 P2 T2 Delay does not occur consecutively, but in many little pieces. t Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 4

5 Outline Cache-related preemption and migration delays (CPMD). Two methods to measure CPMD. Experimental results and discussion. Impact on schedulability (sketch). Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 5

6 Cache-Related Preemption and Migration Delays (CPMD) Cache-related preemption and migration delays: Delays due to additional cache misses when resuming execution after a preemption or a migration. Data in local cache. (Re)fetch. T2 Data in remote cache. Invalidate. Heavily dependent on working set size (WSS). No effective WCET analysis techniques available for current multiprocessors with cache hierarchies. Need to rely on empirical measurements. Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 6

7 Detecting CPMD In this study: empirical approximation of CPMD. CPMD Complete access to J Working Set (WS), cache-cold. Complete access to J Working Set (WS), cache-warm. Complete access to J Working Set (WS), after preemption. Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 7

8 Measuring CPMD Directly measure delay with low-overhead overhead clock device Measure access times. Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 8

9 Measuring CPMD Indirectly measure delay with hardware perf. counters Count cache misses. Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 9

10 Outline Cache-related preemption and migration delays (CPMD). Two methods to measure CPMD. Experimental results and discussion. Impact on schedulability (sketch). Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 10

11 Schedule-Sensitive Method On-line recording of delays: Execute instrumented synthetic tasks under desired scheduling policy. Wide range of WSS, TSS, and read/write ratios. Can reveal dependencies on: Scheduling policy. Task set size (TSS). Cannot explicitly control preempt./migrat. P/M depends on the scheduling policy. Not every job yields a valid measure. Aj job may be preempted dtoo early, too late, or not at all. Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 11

12 Synthetic Method Fine-grained control on measurement process: Artificially trigger preemptions and migrations. Explicit control on preemptions and different types of migrations (through L2 cache, L3 cache, and memory). Fixed-prio scheduling policy (e.g., SCHED_FIFO). Single high-prio tasks access wide range of WSS. Wide range of read/write ratios. Every job yields a valid measure. Cannot detect dependencies on: Scheduling policy, TSS. Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 12

13 Operating System: Implementation LINUX + UNC s real-time Linux extension. Developed as kernel patch (currently based on Linux ). Code is available at Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 13

14 Implementation Issues Low-overhead clock device. Time-stamp counter (TSC). Per-core clock device. Clock skew among cores. WS access times only based on samples from the same processor. Interrupts interference. Interrupts disabled during WS access. How to detect when a preempt./migration occurred. Low-overhead kernel-user communication mechanism. Per-task memory page shared with the kernel. Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 14

15 Outline Cache-related preemption and migration delays (CPMD). Two methods to measure CPMD. Experimental results and discussion. Impact on schedulability (sketch). Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 15

16 Test Platform Intel Xeon L7455 Dunnington : 6 cores per socket. 4 physical sockets. Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 16

17 Test Platform Intel Xeon L7455 Dunnington : 12 MB L3 Cache. Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 17

18 Test Platform Intel Xeon L7455 Dunnington : 3 MB L2 Cache. Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 18

19 Test Platform Intel Xeon L7455 Dunnington : 32 KB 12 + MB 32 L3 KB Cache. L1 Cache. Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 19

20 Study Setup Schedule-Sensitive method: G-EDF algorithm (but can be applied to other algos). TSS between 25 and 250, tasks randomly generated. Uniform distribution. Periodic tasks with utilizations in [0.001, 0.1] and periods in [10,100] ms. WSS in the range from 4 KB to 2048 KB. Per-WSS write ratio 1/2 and 1/4. Synthetic method: Single SCHED_FIFO task at the highest priority. WSS in the range from 4 KB to 12 MB. Per-WSS write ratio in the range from 0 to 1. Preemption length uniformly distributed in [0,50] ms. Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 20

21 Study Setup Schedule-Sensitive method: G-EDF algorithm (but can be applied to other algos). TSS between 25 and 250, tasks randomly generated. Uniform distribution. Periodic tasks with utilizations in [0.001, Tested 0.1] and two periods configurations in [10,100] ms. for each method: WSS in the range from 4 KB to 2048 KB. Per-WSS Idle write system. ratio 1/2 and 1/4. Synthetic method: Under load. Single SCHED_FIFO task at the highest priority. WSS in the range from 4 KB to 12 MB. Per-WSS write ratio in the range from 0 to 1. Preemption length uniformly distributed in [0,50] ms. Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 21

22 Results Increas sing de elay (us s) Logarithmic scale (log-log plots). Graphs display delays. Results from synthetic method only. Results from schedule-sensitive method revealed that CPMD does not depend on TSS (on our platform). Increasing WSS (KB) Higher is worse. Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 22

23 Results (System under load) Size of L2 cache impacts predictability. Standard Deviation. Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 23

24 Results (System under load) Size of L2 cache impacts predictability. Linear trend for WSS < L2 cache. Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 24

25 Results (System under load) No substantial difference between preemption and migration costs. Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 25

26 Results (System under load) Worst-case scenario: must reload cache under intense bus contention. Applies unless no background activity it and only small WSS for all tasks. Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 26

27 Results (Idle system) Best-case scenario: virtually no contention for the memory sub-system. L3, Memory migrations. L2 migrations. Preemptions. Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 27

28 Outline Cache-related preemption and migration delays (CPMD). Two methods to measure CPMD. Experimental results and discussion. Impact on schedulability (sketch). Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 28

29 Impact on Schedulability Standard schedulability plot: Sch hedulab ble Tas sk Sets G-EDF Soft Real-Time. P-EDF C-EDF (L3) C-EDF (L2) Increasing utilization Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 29

30 Impact on Schedulability Standard schedulability plot: Sch hedulab ble Tas sk Sets Fixed CPMD value (fixed WSS value). Increasing utilization Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 30

31 Impact on Schedulability Weighted schedulability plot: Agg gregate e Sched dulabilit ty Compact > 300 of plots in ~ 10 plots. Increasing CPMD (us) Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 31

32 Evaluation of Scheduling Algorithms gregate e Sched dulabili ity Ag Soft Real-Time. C-EDF (L3) > P-EDF for CPMD < 600 us. Increasing CPMD (us) Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 32

33 Conclusions Empirical approximation of CPMD: Schedule-sensitive method. Synthetic method. CPMD strongly impacts evaluation of schedulers: Preemptions are not necessarily (much) cheaper than migrations (for worst-case overheads). If there is memory bus contention, then this is also true for average-case overheads. Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 33

34 Future Work Validate TSC-based results with performance counters. Apply the methodologies on NUMA and embedded platforms. Investigate impact of bus locking on CPMD. For example: DMA transfers, atomic instructions etc. Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 34

35 rt/ Thank You! Cache-Related Preemption and Migration Delays Bastoni, Brandenburg, and Anderson 35

The Limitations of Fixed-Priority Interrupt Handling in PREEMPT RT and Alternative Approaches

The Limitations of Fixed-Priority Interrupt Handling in PREEMPT RT and Alternative Approaches The Limitations of Fixed-Priority Interrupt Handling in PREEMPT RT and Alternative Approaches Glenn A. Elliott and James H. Anderson Department of Computer Science, University of North Carolina at Chapel

More information

An Empirical Comparison of Global, Partitioned, and Clustered Multiprocessor EDF Schedulers

An Empirical Comparison of Global, Partitioned, and Clustered Multiprocessor EDF Schedulers An Empirical Comparison of Global, Partitioned, and Clustered Multiprocessor EDF Schedulers Andrea Bastoni, Björn B. Brandenburg, and James H. Anderson Department of Computer Science, University of North

More information

Adaptive Clustered EDF in LITMUS RT

Adaptive Clustered EDF in LITMUS RT Adaptive Clustered EDF in LITMUS RT Aaron Block,. Sherman, Texas William Kelley, BAE Systems. Ft. Worth, Texas Adaptable System: Whisper Whisper is a motion tracking system Speakers are placed on users

More information

A 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 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 information

REPORT DOCUMENTATION PAGE Form Approved OMB NO

REPORT DOCUMENTATION PAGE Form Approved OMB NO REPORT DOCUMENTATION PAGE Form Approved OMB NO. 0704-0188 The public reporting burden for this collection of information is estimated to average 1 hour per response, including the time for reviewing instructions,

More information

Analysis and Implementation of Global Preemptive Fixed-Priority Scheduling with Dynamic Cache Allocation

Analysis and Implementation of Global Preemptive Fixed-Priority Scheduling with Dynamic Cache Allocation Analysis and Implementation of Global Preemptive Fixed-Priority Scheduling with Dynamic Cache Allocation Meng Xu Linh Thi Xuan Phan Hyon-Young Choi Insup Lee Department of Computer and Information Science

More information

Extending RTAI Linux with Fixed-Priority Scheduling with Deferred Preemption

Extending RTAI Linux with Fixed-Priority Scheduling with Deferred Preemption Extending RTAI Linux with Fixed-Priority Scheduling with Deferred Preemption Mark Bergsma, Mike Holenderski, Reinder J. Bril, Johan J. Lukkien System Architecture and Networking Department of Mathematics

More information

A Hybrid Real-Time Scheduling Approach for Large-Scale Multicore Platforms

A Hybrid Real-Time Scheduling Approach for Large-Scale Multicore Platforms A Hybrid Real-Time Scheduling Approach for Large-Scale Multicore Platforms John M. Calandrino 1, James H. Anderson 1, and Dan P. Baumberger 2 1 Department of Computer Science, The University of North Carolina

More information

Fast on Average, Predictable in the Worst Case

Fast on Average, Predictable in the Worst Case Fast on Average, Predictable in the Worst Case Exploring Real-Time Futexes in LITMUSRT Roy Spliet, Manohar Vanga, Björn Brandenburg, Sven Dziadek IEEE Real-Time Systems Symposium 2014 December 2-5, 2014

More information

Overhead-Aware Compositional Analysis of Real-Time Systems

Overhead-Aware Compositional Analysis of Real-Time Systems Overhead-Aware Compositional Analysis of Real-Time Systems Linh T.X. Phan Meng Xu Jaewoo Lee Insup Lee Oleg Sokolsky Department of Computer and Information Sciences, University of Pennsylvania Email: {linhphan,mengxu,jaewoo,lee,sokolsky}@cis.upenn.edu

More information

Uniprocessor Scheduling. Basic Concepts Scheduling Criteria Scheduling Algorithms. Three level scheduling

Uniprocessor Scheduling. Basic Concepts Scheduling Criteria Scheduling Algorithms. Three level scheduling Uniprocessor Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Three level scheduling 2 1 Types of Scheduling 3 Long- and Medium-Term Schedulers Long-term scheduler Determines which programs

More information

Partitioned Fixed-Priority Scheduling of Parallel Tasks Without Preemptions

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 information

Nested Multiprocessor Real-Time Locking with Improved Blocking

Nested Multiprocessor Real-Time Locking with Improved Blocking Nested Multiprocessor Real-Time Locking with Improved Blocking Bryan C. Ward and James H. Anderson Department of Computer Science, University of North Carolina at Chapel Hill Abstract Existing multiprocessor

More information

Measuring the impacts of the Preempt-RT patch

Measuring the impacts of the Preempt-RT patch Measuring the impacts of the Preempt-RT patch maxime.chevallier@smile.fr October 25, 2017 RT Linux projects Simulation platform : bi-xeon, lots ot RAM 200µs wakeup latency, networking Test bench : Intel

More information

COSC 6385 Computer Architecture - Thread Level Parallelism (I)

COSC 6385 Computer Architecture - Thread Level Parallelism (I) COSC 6385 Computer Architecture - Thread Level Parallelism (I) Edgar Gabriel Spring 2014 Long-term trend on the number of transistor per integrated circuit Number of transistors double every ~18 month

More information

Computer Science Window-Constrained Process Scheduling for Linux Systems

Computer Science Window-Constrained Process Scheduling for Linux Systems Window-Constrained Process Scheduling for Linux Systems Richard West Ivan Ganev Karsten Schwan Talk Outline Goals of this research DWCS background DWCS implementation details Design of the experiments

More information

Multiprocessors and Locking

Multiprocessors and Locking Types of Multiprocessors (MPs) Uniform memory-access (UMA) MP Access to all memory occurs at the same speed for all processors. Multiprocessors and Locking COMP9242 2008/S2 Week 12 Part 1 Non-uniform memory-access

More information

Overhead-Aware Compositional Analysis of Real- Time Systems

Overhead-Aware Compositional Analysis of Real- Time Systems University of Pennsylvania ScholarlyCommons Departmental Papers (CIS) Department of Computer & Information Science 4-203 Overhead-Aware Compositional Analysis of Real- Time Systems Linh T.X. Phan University

More information

Improving Real-Time Performance on Multicore Platforms Using MemGuard

Improving Real-Time Performance on Multicore Platforms Using MemGuard Improving Real-Time Performance on Multicore Platforms Using MemGuard Heechul Yun University of Kansas 2335 Irving hill Rd, Lawrence, KS heechul@ittc.ku.edu Abstract In this paper, we present a case-study

More information

W4118: advanced scheduling

W4118: advanced scheduling W4118: advanced scheduling Instructor: Junfeng Yang References: Modern Operating Systems (3 rd edition), Operating Systems Concepts (8 th edition), previous W4118, and OS at MIT, Stanford, and UWisc Outline

More information

Simplified design flow for embedded systems

Simplified design flow for embedded systems Simplified design flow for embedded systems 2005/12/02-1- Reuse of standard software components Knowledge from previous designs to be made available in the form of intellectual property (IP, for SW & HW).

More information

Sporadic Server Scheduling in Linux Theory vs. Practice. Mark Stanovich Theodore Baker Andy Wang

Sporadic Server Scheduling in Linux Theory vs. Practice. Mark Stanovich Theodore Baker Andy Wang Sporadic Server Scheduling in Linux Theory vs. Practice Mark Stanovich Theodore Baker Andy Wang Real-Time Scheduling Theory Analysis techniques to design a system to meet timing constraints Schedulability

More information

Towards the Integration of Theory and Practice in Multiprocessor Real-Time Scheduling

Towards the Integration of Theory and Practice in Multiprocessor Real-Time Scheduling UNIVERSITÀ DEGLI STUDI DI ROMA TOR VERGATA Facoltà di Ingegneria Dipartimento di Informatica, Sistemi, e Produzione Towards the Integration of Theory and Practice in Multiprocessor Real-Time Scheduling

More information

Making OpenVX Really Real Time

Making OpenVX Really Real Time Making OpenVX Really Real Time Ming Yang 1, Tanya Amert 1, Kecheng Yang 1,2, Nathan Otterness 1, James H. Anderson 1, F. Donelson Smith 1, and Shige Wang 3 1The University of North Carolina at Chapel Hill

More information

ANALYSIS OF A DYNAMIC FREQUENCY SCALING ALGORTIHM ON XSCALE.

ANALYSIS OF A DYNAMIC FREQUENCY SCALING ALGORTIHM ON XSCALE. ANALYSIS OF A DYNAMIC FREQUENCY SCALING ALGORTIHM ON XSCALE. Group 9 Ishdeep Singh Sawhney (issawhne@unity.ncsu.edu) Shobhit Kanaujia (sokanauj@unity.ncsu.edu) Prasanth Ganesan (pganesa@unity.ncsu.edu)

More information

Replica-Request Priority Donation: A Real-Time Progress Mechanism for Global Locking Protocols

Replica-Request Priority Donation: A Real-Time Progress Mechanism for Global Locking Protocols Replica-Request Priority Donation: A Real-Time Progress Mechanism for Global Locking Protocols Bryan C. Ward, Glenn A. Elliott, and James H. Anderson Department of Computer Science, University of North

More information

Introduction to Embedded Systems

Introduction to Embedded Systems Introduction to Embedded Systems Sanjit A. Seshia UC Berkeley EECS 9/9A Fall 0 008-0: E. A. Lee, A. L. Sangiovanni-Vincentelli, S. A. Seshia. All rights reserved. Chapter : Operating Systems, Microkernels,

More information

Multiprocessor scheduling

Multiprocessor scheduling Chapter 10 Multiprocessor scheduling When a computer system contains multiple processors, a few new issues arise. Multiprocessor systems can be categorized into the following: Loosely coupled or distributed.

More information

Multiprocessor Systems. Chapter 8, 8.1

Multiprocessor Systems. Chapter 8, 8.1 Multiprocessor Systems Chapter 8, 8.1 1 Learning Outcomes An understanding of the structure and limits of multiprocessor hardware. An appreciation of approaches to operating system support for multiprocessor

More information

Real-Time Synchronization on Multiprocessors: To Block or Not to Block, to Suspend or Spin?

Real-Time Synchronization on Multiprocessors: To Block or Not to Block, to Suspend or Spin? Real-Time Synchronization on Multiprocessors: To lock or Not to lock, to Suspend or Spin? jörn. randenburg, John Calandrino, Aaron lock, Hennadiy Leontyev, and James H. Anderson Department of Computer

More information

Supporting Time-sensitive Applications on a Commodity OS

Supporting Time-sensitive Applications on a Commodity OS Supporting Time-sensitive Applications on a Commodity OS Ashvin Goel, Luca Abeni, Charles Krasic, Jim Snow, Jonathan Walpole Department of Computer Science and Engineering Oregon Graduate Institute, Portland

More information

Chapter 6: CPU Scheduling. Operating System Concepts 9 th Edition

Chapter 6: CPU Scheduling. Operating System Concepts 9 th Edition Chapter 6: CPU Scheduling Silberschatz, Galvin and Gagne 2013 Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Thread Scheduling Multiple-Processor Scheduling Real-Time

More information

Scaling Global Scheduling with Message Passing

Scaling Global Scheduling with Message Passing Scaling Global Scheduling with Message Passing Felipe Cerqueira Manohar Vanga Björn B. Brandenburg Max Planck Institute for Software Systems (MPI-SWS) Abstract Global real-time schedulers have earned the

More information

Overhead-Aware Schedulability Analysis on Responsive Multithreaded Processor

Overhead-Aware Schedulability Analysis on Responsive Multithreaded Processor Overhead-Aware Schedulability Analysis on Responsive Multithreaded Processor Yusuke Kumura, Keigo Mizotani, Masayoshi Takasu, Hiroyuki Chishiro, and Nobuyuki Yamasaki Graduate School of Science and Technology,

More information

Optimizing Preemption-Overhead Accounting in Multiprocessor Real-Time Systems

Optimizing Preemption-Overhead Accounting in Multiprocessor Real-Time Systems Optimizing Preemption-Overhead Accounting in Multiprocessor Real-Time Systems Bryan C. Ward Dept. of Computer Science University of North Carolina at Chapel Hill Abhilash Thekkilakattil Div. of Software

More information

Document downloaded from: http://hdl.handle.net/10251/38978 This paper must be cited as: Sáez Barona, S.; Crespo, A. (2013). Deferred setting of scheduling attributes in Ada 2012. Ada Letters. 33(1):93-100.

More information

How Linux RT_PREEMPT Works

How Linux RT_PREEMPT Works How Linux RT_PREEMPT Works A common observation about real time systems is that the cost of the increased determinism of real time is decreased throughput and increased average latency. This presentation

More information

Multiprocessor System. Multiprocessor Systems. Bus Based UMA. Types of Multiprocessors (MPs) Cache Consistency. Bus Based UMA. Chapter 8, 8.

Multiprocessor System. Multiprocessor Systems. Bus Based UMA. Types of Multiprocessors (MPs) Cache Consistency. Bus Based UMA. Chapter 8, 8. Multiprocessor System Multiprocessor Systems Chapter 8, 8.1 We will look at shared-memory multiprocessors More than one processor sharing the same memory A single CPU can only go so fast Use more than

More information

First-In-First-Out (FIFO) Algorithm

First-In-First-Out (FIFO) Algorithm First-In-First-Out (FIFO) Algorithm Reference string: 7,0,1,2,0,3,0,4,2,3,0,3,0,3,2,1,2,0,1,7,0,1 3 frames (3 pages can be in memory at a time per process) 15 page faults Can vary by reference string:

More information

Multiprocessor Systems. COMP s1

Multiprocessor Systems. COMP s1 Multiprocessor Systems 1 Multiprocessor System We will look at shared-memory multiprocessors More than one processor sharing the same memory A single CPU can only go so fast Use more than one CPU to improve

More information

CSC501 Operating Systems Principles. OS Structure

CSC501 Operating Systems Principles. OS Structure CSC501 Operating Systems Principles OS Structure 1 Announcements q TA s office hour has changed Q Thursday 1:30pm 3:00pm, MRC-409C Q Or email: awang@ncsu.edu q From department: No audit allowed 2 Last

More information

Department 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. 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 information

Blocking Analysis of FIFO, Unordered, and Priority-Ordered Spin Locks

Blocking 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 information

Cost of Concurrency in Hybrid Transactional Memory. Trevor Brown (University of Toronto) Srivatsan Ravi (Purdue University)

Cost of Concurrency in Hybrid Transactional Memory. Trevor Brown (University of Toronto) Srivatsan Ravi (Purdue University) Cost of Concurrency in Hybrid Transactional Memory Trevor Brown (University of Toronto) Srivatsan Ravi (Purdue University) 1 Transactional Memory: a history Hardware TM Software TM Hybrid TM 1993 1995-today

More information

Subject Name: OPERATING SYSTEMS. Subject Code: 10EC65. Prepared By: Kala H S and Remya R. Department: ECE. Date:

Subject Name: OPERATING SYSTEMS. Subject Code: 10EC65. Prepared By: Kala H S and Remya R. Department: ECE. Date: Subject Name: OPERATING SYSTEMS Subject Code: 10EC65 Prepared By: Kala H S and Remya R Department: ECE Date: Unit 7 SCHEDULING TOPICS TO BE COVERED Preliminaries Non-preemptive scheduling policies Preemptive

More information

Efficient Implementation of IPCP and DFP

Efficient Implementation of IPCP and DFP Efficient Implementation of IPCP and DFP N.C. Audsley and A. Burns Department of Computer Science, University of York, York, UK. email: {neil.audsley, alan.burns}@york.ac.uk Abstract Most resource control

More information

4. Hardware Platform: Real-Time Requirements

4. Hardware Platform: Real-Time Requirements 4. Hardware Platform: Real-Time Requirements Contents: 4.1 Evolution of Microprocessor Architecture 4.2 Performance-Increasing Concepts 4.3 Influences on System Architecture 4.4 A Real-Time Hardware Architecture

More information

Recap. Run to completion in order of arrival Pros: simple, low overhead, good for batch jobs Cons: short jobs can stuck behind the long ones

Recap. Run to completion in order of arrival Pros: simple, low overhead, good for batch jobs Cons: short jobs can stuck behind the long ones Recap First-Come, First-Served (FCFS) Run to completion in order of arrival Pros: simple, low overhead, good for batch jobs Cons: short jobs can stuck behind the long ones Round-Robin (RR) FCFS with preemption.

More information

Multiple Issue and Static Scheduling. Multiple Issue. MSc Informatics Eng. Beyond Instruction-Level Parallelism

Multiple Issue and Static Scheduling. Multiple Issue. MSc Informatics Eng. Beyond Instruction-Level Parallelism Computing Systems & Performance Beyond Instruction-Level Parallelism MSc Informatics Eng. 2012/13 A.J.Proença From ILP to Multithreading and Shared Cache (most slides are borrowed) When exploiting ILP,

More information

Today s class. Scheduling. Informationsteknologi. Tuesday, October 9, 2007 Computer Systems/Operating Systems - Class 14 1

Today s class. Scheduling. Informationsteknologi. Tuesday, October 9, 2007 Computer Systems/Operating Systems - Class 14 1 Today s class Scheduling Tuesday, October 9, 2007 Computer Systems/Operating Systems - Class 14 1 Aim of Scheduling Assign processes to be executed by the processor(s) Need to meet system objectives regarding:

More information

A Server-based Approach for Predictable GPU Access Control

A Server-based Approach for Predictable GPU Access Control A Server-based Approach for Predictable GPU Access Control Hyoseung Kim * Pratyush Patel Shige Wang Raj Rajkumar * University of California, Riverside Carnegie Mellon University General Motors R&D Benefits

More information

Hybrid EDF Packet Scheduling for Real-Time Distributed Systems

Hybrid EDF Packet Scheduling for Real-Time Distributed Systems Hybrid EDF Packet Scheduling for Real-Time Distributed Systems Tao Qian 1, Frank Mueller 1, Yufeng Xin 2 1 North Carolina State University, USA 2 RENCI, University of North Carolina at Chapel Hill This

More information

Modification and Evaluation of Linux I/O Schedulers

Modification and Evaluation of Linux I/O Schedulers Modification and Evaluation of Linux I/O Schedulers 1 Asad Naweed, Joe Di Natale, and Sarah J Andrabi University of North Carolina at Chapel Hill Abstract In this paper we present three different Linux

More information

Predictable Interrupt Management and Scheduling in the Composite Component-based System

Predictable Interrupt Management and Scheduling in the Composite Component-based System Predictable Interrupt Management and Scheduling in the Composite Component-based System Gabriel Parmer and Richard West Computer Science Department Boston University Boston, MA 02215 {gabep1, richwest}@cs.bu.edu

More information

Chapter 8: Virtual Memory. Operating System Concepts

Chapter 8: Virtual Memory. Operating System Concepts Chapter 8: Virtual Memory Silberschatz, Galvin and Gagne 2009 Chapter 8: Virtual Memory Background Demand Paging Copy-on-Write Page Replacement Allocation of Frames Thrashing Memory-Mapped Files Allocating

More information

CPU Scheduling. Operating Systems (Fall/Winter 2018) Yajin Zhou ( Zhejiang University

CPU 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 information

Real-Time Cache Management for Multi-Core Virtualization

Real-Time Cache Management for Multi-Core Virtualization Real-Time Cache Management for Multi-Core Virtualization Hyoseung Kim 1,2 Raj Rajkumar 2 1 University of Riverside, California 2 Carnegie Mellon University Benefits of Multi-Core Processors Consolidation

More information

ARTIST-Relevant Research from Linköping

ARTIST-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 information

EECS750: Advanced Operating Systems. 2/24/2014 Heechul Yun

EECS750: Advanced Operating Systems. 2/24/2014 Heechul Yun EECS750: Advanced Operating Systems 2/24/2014 Heechul Yun 1 Administrative Project Feedback of your proposal will be sent by Wednesday Midterm report due on Apr. 2 3 pages: include intro, related work,

More information

Graphite IntroducDon and Overview. Goals, Architecture, and Performance

Graphite IntroducDon and Overview. Goals, Architecture, and Performance Graphite IntroducDon and Overview Goals, Architecture, and Performance 4 The Future of MulDcore #Cores 128 1000 cores? CompuDng has moved aggressively to muldcore 64 32 MIT Raw Intel SSC Up to 72 cores

More information

238P: Operating Systems. Lecture 14: Process scheduling

238P: Operating Systems. Lecture 14: Process scheduling 238P: Operating Systems Lecture 14: Process scheduling This lecture is heavily based on the material developed by Don Porter Anton Burtsev November, 2017 Cooperative vs preemptive What is cooperative multitasking?

More information

Computer Architecture

Computer Architecture Jens Teubner Computer Architecture Summer 2016 1 Computer Architecture Jens Teubner, TU Dortmund jens.teubner@cs.tu-dortmund.de Summer 2016 Jens Teubner Computer Architecture Summer 2016 83 Part III Multi-Core

More information

Lecture Topics. Announcements. Today: Advanced Scheduling (Stallings, chapter ) Next: Deadlock (Stallings, chapter

Lecture Topics. Announcements. Today: Advanced Scheduling (Stallings, chapter ) Next: Deadlock (Stallings, chapter Lecture Topics Today: Advanced Scheduling (Stallings, chapter 10.1-10.4) Next: Deadlock (Stallings, chapter 6.1-6.6) 1 Announcements Exam #2 returned today Self-Study Exercise #10 Project #8 (due 11/16)

More information

Embedded Systems: OS. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

Embedded Systems: OS. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University Embedded Systems: OS Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Standalone Applications Often no OS involved One large loop Microcontroller-based

More information

Event-Driven Scheduling. (closely following Jane Liu s Book)

Event-Driven Scheduling. (closely following Jane Liu s Book) Event-Driven Scheduling (closely following Jane Liu s Book) Real-Time Systems, 2006 Event-Driven Systems, 1 Principles Assign priorities to Jobs At events, jobs are scheduled according to their priorities

More information

Exam Review TexPoint fonts used in EMF.

Exam Review TexPoint fonts used in EMF. Exam Review Generics Definitions: hard & soft real-time Task/message classification based on criticality and invocation behavior Why special performance measures for RTES? What s deadline and where is

More information

Caches in Real-Time Systems. Instruction Cache vs. Data Cache

Caches in Real-Time Systems. Instruction Cache vs. Data Cache Caches in Real-Time Systems [Xavier Vera, Bjorn Lisper, Jingling Xue, Data Caches in Multitasking Hard Real- Time Systems, RTSS 2003.] Schedulability Analysis WCET Simple Platforms WCMP (memory performance)

More information

Realtime Tuning 101. Tuning Applications on Red Hat MRG Realtime Clark Williams

Realtime Tuning 101. Tuning Applications on Red Hat MRG Realtime Clark Williams Realtime Tuning 101 Tuning Applications on Red Hat MRG Realtime Clark Williams Agenda Day One Terminology and Concepts Realtime Linux differences from stock Linux Tuning Tools for Tuning Tuning Tools Lab

More information

PROCESS SCHEDULING II. CS124 Operating Systems Fall , Lecture 13

PROCESS SCHEDULING II. CS124 Operating Systems Fall , Lecture 13 PROCESS SCHEDULING II CS124 Operating Systems Fall 2017-2018, Lecture 13 2 Real-Time Systems Increasingly common to have systems with real-time scheduling requirements Real-time systems are driven by specific

More information

Real-time Operating System Timing Jitter and its Impact on Motor Control

Real-time Operating System Timing Jitter and its Impact on Motor Control Real-time Operating System Timing Jitter and its Impact on Motor Control Frederick M. Proctor and William P. Shackleford National Institute of Standards and Technology Building 220, Room B124 Gaithersburg,

More information

SMD149 - Operating Systems - Multiprocessing

SMD149 - Operating Systems - Multiprocessing SMD149 - Operating Systems - Multiprocessing Roland Parviainen December 1, 2005 1 / 55 Overview Introduction Multiprocessor systems Multiprocessor, operating system and memory organizations 2 / 55 Introduction

More information

Overview. SMD149 - Operating Systems - Multiprocessing. Multiprocessing architecture. Introduction SISD. Flynn s taxonomy

Overview. SMD149 - Operating Systems - Multiprocessing. Multiprocessing architecture. Introduction SISD. Flynn s taxonomy Overview SMD149 - Operating Systems - Multiprocessing Roland Parviainen Multiprocessor systems Multiprocessor, operating system and memory organizations December 1, 2005 1/55 2/55 Multiprocessor system

More information

Parallel Architectures

Parallel Architectures Parallel Architectures Part 1: The rise of parallel machines Intel Core i7 4 CPU cores 2 hardware thread per core (8 cores ) Lab Cluster Intel Xeon 4/10/16/18 CPU cores 2 hardware thread per core (8/20/32/36

More information

TOWARD PREDICTABLE PERFORMANCE IN SOFTWARE PACKET-PROCESSING PLATFORMS. Mihai Dobrescu, EPFL Katerina Argyraki, EPFL Sylvia Ratnasamy, UC Berkeley

TOWARD PREDICTABLE PERFORMANCE IN SOFTWARE PACKET-PROCESSING PLATFORMS. Mihai Dobrescu, EPFL Katerina Argyraki, EPFL Sylvia Ratnasamy, UC Berkeley TOWARD PREDICTABLE PERFORMANCE IN SOFTWARE PACKET-PROCESSING PLATFORMS Mihai Dobrescu, EPFL Katerina Argyraki, EPFL Sylvia Ratnasamy, UC Berkeley Programmable Networks 2 Industry/research community efforts

More information

CS 326: Operating Systems. CPU Scheduling. Lecture 6

CS 326: Operating Systems. CPU Scheduling. Lecture 6 CS 326: Operating Systems CPU Scheduling Lecture 6 Today s Schedule Agenda? Context Switches and Interrupts Basic Scheduling Algorithms Scheduling with I/O Symmetric multiprocessing 2/7/18 CS 326: Operating

More information

Supporting Nested Locking in Multiprocessor Real-Time Systems

Supporting Nested Locking in Multiprocessor Real-Time Systems Supporting Nested Locking in Multiprocessor Real-Time Systems Bryan C. Ward and James H. Anderson Department of Computer Science, University of North Carolina at Chapel Hill Abstract This paper presents

More information

Reservation-Based Scheduling for IRQ Threads

Reservation-Based Scheduling for IRQ Threads Reservation-Based Scheduling for IRQ Threads Luca Abeni, Nicola Manica, Luigi Palopoli luca.abeni@unitn.it, nicola.manica@gmail.com, palopoli@dit.unitn.it University of Trento, Trento - Italy Reservation-Based

More information

Multimedia Systems 2011/2012

Multimedia 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 information

Schedulability Analysis of the Linux Push and Pull Scheduler with Arbitrary Processor Affinities

Schedulability Analysis of the Linux Push and Pull Scheduler with Arbitrary Processor Affinities Schedulability Analysis of the Linux Push and Pull Scheduler with Arbitrary Processor Affinities Arpan Gujarati, Felipe Cerqueira, and Björn Brandenburg Multiprocessor real-time scheduling theory Global

More information

Chapter 1 Computer System Overview

Chapter 1 Computer System Overview Operating Systems: Internals and Design Principles Chapter 1 Computer System Overview Ninth Edition By William Stallings Operating System Exploits the hardware resources of one or more processors Provides

More information

Hierarchical PLABs, CLABs, TLABs in Hotspot

Hierarchical PLABs, CLABs, TLABs in Hotspot Hierarchical s, CLABs, s in Hotspot Christoph M. Kirsch ck@cs.uni-salzburg.at Hannes Payer hpayer@cs.uni-salzburg.at Harald Röck hroeck@cs.uni-salzburg.at Abstract Thread-local allocation buffers (s) are

More information

Embedded Systems: OS

Embedded Systems: OS Embedded Systems: OS Jinkyu Jeong (Jinkyu@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu ICE3028: Embedded Systems Design, Fall 2018, Jinkyu Jeong (jinkyu@skku.edu) Standalone

More information

Process management. Scheduling

Process management. Scheduling Process management Scheduling Points of scheduler invocation (recap) User Kernel Return from system call Process Schedule Return from interrupt handler Timer interrupts to ensure OS control Return from

More information

Microkernel/OS and Real-Time Scheduling

Microkernel/OS and Real-Time Scheduling Chapter 12 Microkernel/OS and Real-Time Scheduling Hongwei Zhang http://www.cs.wayne.edu/~hzhang/ Ack.: this lecture is prepared in part based on slides of Lee, Sangiovanni-Vincentelli, Seshia. Outline

More information

CIS Operating Systems Memory Management Cache. Professor Qiang Zeng Fall 2017

CIS Operating Systems Memory Management Cache. Professor Qiang Zeng Fall 2017 CIS 5512 - Operating Systems Memory Management Cache Professor Qiang Zeng Fall 2017 Previous class What is logical address? Who use it? Describes a location in the logical memory address space Compiler

More information

Department of Computer Science Institute for System Architecture, Operating Systems Group REAL-TIME MICHAEL ROITZSCH OVERVIEW

Department of Computer Science Institute for System Architecture, Operating Systems Group REAL-TIME MICHAEL ROITZSCH OVERVIEW Department of Computer Science Institute for System Architecture, Operating Systems Group REAL-TIME MICHAEL ROITZSCH OVERVIEW 2 SO FAR talked about in-kernel building blocks: threads memory IPC drivers

More information

REAL-TIME SCHEDULING FOR GPUS WITH APPLICATIONS IN ADVANCED AUTOMOTIVE SYSTEMS. Glenn A. Elliott. Chapel Hill 2015

REAL-TIME SCHEDULING FOR GPUS WITH APPLICATIONS IN ADVANCED AUTOMOTIVE SYSTEMS. Glenn A. Elliott. Chapel Hill 2015 REAL-TIME SCHEDULING FOR GPUS WITH APPLICATIONS IN ADVANCED AUTOMOTIVE SYSTEMS Glenn A. Elliott A dissertation submitted to the faculty at the University of North Carolina at Chapel Hill in partial fulfillment

More information

Go Deep: Fixing Architectural Overheads of the Go Scheduler

Go Deep: Fixing Architectural Overheads of the Go Scheduler Go Deep: Fixing Architectural Overheads of the Go Scheduler Craig Hesling hesling@cmu.edu Sannan Tariq stariq@cs.cmu.edu May 11, 2018 1 Introduction Golang is a programming language developed to target

More information

OVERHEADS ENHANCEMENT IN MUTIPLE PROCESSING SYSTEMS BY ANURAG REDDY GANKAT KARTHIK REDDY AKKATI

OVERHEADS 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 information

CPU Scheduling: Objectives

CPU 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 information

Multiprocessor and Real-Time Scheduling. Chapter 10

Multiprocessor and Real-Time Scheduling. Chapter 10 Multiprocessor and Real-Time Scheduling Chapter 10 1 Roadmap Multiprocessor Scheduling Real-Time Scheduling Linux Scheduling Unix SVR4 Scheduling Windows Scheduling Classifications of Multiprocessor Systems

More information

Realtime BoF Session RealTime Testing Best Practice of RealTime WG YungJoon Jung

Realtime BoF Session RealTime Testing Best Practice of RealTime WG YungJoon Jung Realtime BoF Session RealTime Testing Best Practice of RealTime WG YungJoon Jung April 15th, 2008 CE Linux Forum 1 Contents Introduction Current RealTime Testing Methods Plan April 15th, 2008 CE Linux

More information

A hardware operating system kernel for multi-processor systems

A hardware operating system kernel for multi-processor systems A hardware operating system kernel for multi-processor systems Sanggyu Park a), Do-sun Hong, and Soo-Ik Chae School of EECS, Seoul National University, Building 104 1, Seoul National University, Gwanakgu,

More information

Chapter 5: CPU Scheduling

Chapter 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 information

CS370 Operating Systems

CS370 Operating Systems CS370 Operating Systems Colorado State University Yashwant K Malaiya Fall 2017 Lecture 10 Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 Chapter 6: CPU Scheduling Basic Concepts

More information

Towards Partitioned Hierarchical Real-Time Scheduling on Multi-core Processors

Towards Partitioned Hierarchical Real-Time Scheduling on Multi-core Processors Towards Partitioned Hierarchical Real-Time Scheduling on Multi-core Processors Mikael Åsberg Mälardalen Real-Time Research Center Mälardalen University Västerås, Sweden mikael.asberg@mdh.se Thomas Nolte

More information

Adventures In Real-Time Performance Tuning, Part 2

Adventures In Real-Time Performance Tuning, Part 2 Adventures In Real-Time Performance Tuning, Part 2 The real-time for Linux patchset does not guarantee adequate real-time behavior for all target platforms. When using real-time Linux on a new platform

More information

An Integration of Imprecise Computation Model and Real-Time Voltage and Frequency Scaling

An Integration of Imprecise Computation Model and Real-Time Voltage and Frequency Scaling An Integration of Imprecise Computation Model and Real-Time Voltage and Frequency Scaling Keigo Mizotani, Yusuke Hatori, Yusuke Kumura, Masayoshi Takasu, Hiroyuki Chishiro, and Nobuyuki Yamasaki Graduate

More information

Operating Systems. Process scheduling. Thomas Ropars.

Operating Systems. Process scheduling. Thomas Ropars. 1 Operating Systems Process scheduling Thomas Ropars thomas.ropars@univ-grenoble-alpes.fr 2018 References The content of these lectures is inspired by: The lecture notes of Renaud Lachaize. The lecture

More information

Real-Time Technology in Linux

Real-Time Technology in Linux Real-Time Technology in Linux Sven-Thorsten Dietrich Real-Time Architect Introductions MontaVista Software is a leading global supplier of systems software and development tools for intelligent connected

More information