Shared Cache Aware Task Mapping for WCRT Minimization

Size: px
Start display at page:

Download "Shared Cache Aware Task Mapping for WCRT Minimization"

Transcription

1 Shared Cache Aware Task Mapping for WCRT Minimization Huping Ding & Tulika Mitra School of Computing, National University of Singapore Yun Liang Center for Energy-efficient Computing and Applications, School of EECS, Peking University

2 Multi-core Processor in Embedded Systems Core 1 Core 2. Core n Shared Resources Embedded systems adopt multi-core processors due to performance, thermal and power constraints Embedded systems have real-time constraints, e.g., time deadline of tasks Shared Resources, like shared cache, make the timing difficult to estimate, e.g. Worst-Case Response Time (WCRT) analysis

3 Worst-Case Response Time t1 A multitasking application t2 t3 t4 t5 Tasks can be mapped to any core in a multi-core systems The maximal latest finish time among all these tasks is the Worst-Case Response Time (WCRT) of the application An important metric for schedulability analysis Our purpose is to minimize WCRT in multi-core systems with shared cache via task mapping

4 Previous Task Mapping Approaches They usually focus on balancing the workload They are agnostic to the shared cache behavior State-of-the-art works on shared cache usually fix task mapping before shared L2 cache analysis

5 WCRT (million cycles) Motivating Example Task graph ndes crc adpcm minver compress Configuration: 2-core, private L1 cache: 256 bytes, shared L2 cache: 2KB w/o L2 cache modeling: Assume cache miss (hit) for each L2 access in the worst (best) case w/o L2 cache modeling with L2 cache modeling It is imperative to design a shared cache aware task mapping solution! Task mappings

6 Our Architecture Core1 CPU Core 2 CPU Core n CPU L1 cache L1 cache L1 cache Shared L2 cache Main memory A private L1 cache for each core All cores share a L2 cache Tasks execute in a non-preemptive fashion

7 Private Cache Systems CPU Cache Off-chip Main Memory Usually only the intra-task analysis is required to estimate the WCET (Worst-Case Execution Time) No inter-core cache conflicts

8 Shared Cache Multi-core Systems Inter-core cache conflicts Lead to extra L2 cache misses This makes the timing analysis complex Hit Core 1 Task T Core 2 Miss Core 1 Task T Core 2 Task T Access m2 Access m2 Access m1 m1 m2 m1 m2 m1 Shared L2 cache young old LRU replacement policy Shared L2 cache young old LRU replacement policy

9 Task Interference Task lifetime : [Earliest Ready, Latest Finish] Interfering tasks : Two tasks mapped to different cores with lifetime overlapped Two tasks with dependence between them can never interfere with each other t1 Core 1 Core 2 t1 t2 t3 Time t2 t3 t4 t4 Interfering tasks: t2 and t3, t2 and t4

10 Current Efforts on Shared Cache They focus on modeling cache and inter-core cache conflicts (Yan and Zhang RTAS 2008, Hardy and Puaut RTSS 2008 and Liang et al. RTS 2012) Task mapping is fixed (known) before analysis, and agnostic to the shared cache conflicts

11 Impact of Task Mapping Task interference Two tasks can interfere with each other only when they are mapped to different cores Task interference Inter-core cache conflict Execution time of task WCRT Workload balance among cores Workload balance influences the total execution time of a multitasking application, thus impacts its WCRT

12 Our Aims We target the task mapping problem in multi-core systems with shared cache, in order to optimize the WCRT We not only consider workload balance, but also minimize inter-core cache conflicts

13 Challenges Exhaustive enumeration of all mappings is impossible as # of cores and # of tasks increase Significant complexity due to inter-dependency between task mapping and task execution time Task mapping Workload balancing Task execution time Task interference Cache conflict

14 Our Approach An approach based on ILP (integer linear programming) formulation Intra-task cache analysis Task mapping modeling Shared cache modeling WCET computation modeling WCRT computation modeling ILP problem Objective: minimize WCRT ILP solver Result: a task mapping Accurate WCRT analysis framework Final WCRT

15 Intra-task Analysis Must analysis Captures the memory blocks that are guaranteed in the cache May analysis Captures the memory blocks that are never in the cache Memory block access classification Always hit Always miss Non-classified

16 Task Mapping Modeling Suppose there are N tasks and M cores in the multi-core system. MAP ik is a 0-1 decision variable to indicate if task i is mapped to core k. Then for any task i (0<i N). 0 < k M MAP ik = 1 For two task i and j, SC ij is a 0-1 decision variable to indicate if tasks i and j are mapped to the same core; DC ij is a 0-1 decision variable to indicate if tasks i and j are mapped to different cores SC ij = < k M, MAP ik = 1 and MAP jk = 1 otherwise DC ij = 1 SC ij

17 Shared Cache Modeling {m, a, b, c, d, e} are mapped to the same set s in shared L2 cache. m, a, b and c are from task i, while d and e are tasks u and v respectively young old Cache state before considering cache conflicts a b m c LRU replacement policy (age m + j intf(i) conflict j s ) A Possible cache states after considering cache conflicts d a b m d e a b Hit Miss

18 WCET and WCRT Computation WCET Intra-task analysis and shared cache modeling WCRT WCRT is the summation of WCET value on the critical path

19 Approximations in ILP Interfering tasks Two tasks i and j have no dependence and are mapped to different cores interfere ij = DC ij WCET = Original WCET + Cache conflict penalty Intra-task cache analysis Original WCET Shared cache modeling Cache conflict penalty Why approximations? Make the problem easy to solve Estimate accurate WCRT with the mapping released by ILP formulation by a WCRT analysis framework

20 Iterative Analysis Framework Yun Liang, Huping Ding, Tulika Mitra, Abhik Roychoudhury, Yan Li, Vivy Suhendra Timing Analysis of Concurrent Programs Running on Shared Cache Multi-Cores. In Real-Time System Journal 2012 L1 cache analysis Core 1 Core 2 Filter L2 cache analysis L1 cache analysis Filter L2 cache analysis Initial task interference Estimated WCRT L2 cache Conflict analysis WCRT analysis Modified task interference no Interference changes? yes

21 Experimental Evaluation Real-world benchmark: DEBIE benchmark Synthetic benchmarks: MRTC benchmark suite Comparison among different approaches Optimal mapping Our mapping Mapping w/o L2 cache modeling Enumerate all Task mappings ILP formulation Enumerate all Task mappings Evaluate WCRT with L2 cache modeling Solve ILP problem Evaluate WCRT w/o L2 cache modeling Select the best mapping Task mapping released Select the best mapping Iterative analysis framework

22 WCRT (million cycles) DEBIE Benchmark Results Optimal Our approach w/o L2 cache modeling L1:1KB L2:16KB Configuration: 4-core

23 Relative WCRT Synthetic Benchmarks Results Task graph 1 Optimal Our approach w/o L2 cache modeling Task graph 2 Task Task Task Task Task graph 3 graph 4 graph 5 graph 6 graph 7 Configurations: 4-core, L1:512B, L2:4KB Task graph 8 Task graph 9

24 Runtime for Synthetic Benchmarks Task graph # of tasks Our approach (seconds) Optimal (seconds) , ,794.00

25 Conclusions Tasking mapping has a great impact on WCRT An ILP formulation approach that is aware of the shared cache conflict Our approach not only considers the workload balance but also minimizes inter-core cache conflict Significant reduction in WCRT compared to traditional approach agnostic to shared cache conflicts

26 Q & A

Sireesha R Basavaraju Embedded Systems Group, Technical University of Kaiserslautern

Sireesha R Basavaraju Embedded Systems Group, Technical University of Kaiserslautern Sireesha R Basavaraju Embedded Systems Group, Technical University of Kaiserslautern Introduction WCET of program ILP Formulation Requirement SPM allocation for code SPM allocation for data Conclusion

More information

Managing Hybrid On-chip Scratchpad and Cache Memories for Multi-tasking Embedded Systems

Managing Hybrid On-chip Scratchpad and Cache Memories for Multi-tasking Embedded Systems Managing Hybrid On-chip Scratchpad and Cache Memories for Multi-tasking Embedded Systems Zimeng Zhou, Lei Ju, Zhiping Jia, Xin Li School of Computer Science and Technology Shandong University, China Outline

More information

Hybrid SPM-Cache Architectures to Achieve High Time Predictability and Performance

Hybrid SPM-Cache Architectures to Achieve High Time Predictability and Performance Hybrid SPM-Cache Architectures to Achieve High Time Predictability and Performance Wei Zhang and Yiqiang Ding Department of Electrical and Computer Engineering Virginia Commonwealth University {wzhang4,ding4}@vcu.edu

More information

Modeling Shared Cache and Bus in Multi-cores for Timing Analysis

Modeling Shared Cache and Bus in Multi-cores for Timing Analysis Modeling Shared Cache and Bus in Multi-cores for Timing Analysis Sudipta Chattopadhyay Abhik Roychoudhury Tulika Mitra National University of Singapore {sudiptac,abhik,tulika}@comp.nus.edu.sg ABSTRACT

More information

A Data Centered Approach for Cache Partitioning in Embedded Real- Time Database System

A Data Centered Approach for Cache Partitioning in Embedded Real- Time Database System A Data Centered Approach for Cache Partitioning in Embedded Real- Time Database System HU WEI CHEN TIANZHOU SHI QINGSONG JIANG NING College of Computer Science Zhejiang University College of Computer Science

More information

A Data Centered Approach for Cache Partitioning in Embedded Real- Time Database System

A Data Centered Approach for Cache Partitioning in Embedded Real- Time Database System A Data Centered Approach for Cache Partitioning in Embedded Real- Time Database System HU WEI, CHEN TIANZHOU, SHI QINGSONG, JIANG NING College of Computer Science Zhejiang University College of Computer

More information

A Fast and Precise Worst Case Interference Placement for Shared Cache Analysis

A Fast and Precise Worst Case Interference Placement for Shared Cache Analysis A Fast and Precise Worst Case Interference Placement for Shared Cache Analysis KARTIK NAGAR and Y N SRIKANT, Indian Institute of Science Real-time systems require a safe and precise estimate of the Worst

More information

-- the Timing Problem & Possible Solutions

-- the Timing Problem & Possible Solutions ARTIST Summer School in Europe 2010 Autrans (near Grenoble), France September 5-10, 2010 Towards Real-Time Applications on Multicore -- the Timing Problem & Possible Solutions Wang Yi Uppsala University,

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

HW/SW Codesign. WCET Analysis

HW/SW Codesign. WCET Analysis HW/SW Codesign WCET Analysis 29 November 2017 Andres Gomez gomeza@tik.ee.ethz.ch 1 Outline Today s exercise is one long question with several parts: Basic blocks of a program Static value analysis WCET

More information

FIFO Cache Analysis for WCET Estimation: A Quantitative Approach

FIFO Cache Analysis for WCET Estimation: A Quantitative Approach FIFO Cache Analysis for WCET Estimation: A Quantitative Approach Abstract Although most previous work in cache analysis for WCET estimation assumes the LRU replacement policy, in practise more processors

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

Static Analysis of Worst-Case Stack Cache Behavior

Static Analysis of Worst-Case Stack Cache Behavior Static Analysis of Worst-Case Stack Cache Behavior Florian Brandner Unité d Informatique et d Ing. des Systèmes ENSTA-ParisTech Alexander Jordan Embedded Systems Engineering Sect. Technical University

More information

WCET-Aware C Compiler: WCC

WCET-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 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

Taming Non-blocking Caches to Improve Isolation in Multicore Real-Time Systems

Taming Non-blocking Caches to Improve Isolation in Multicore Real-Time Systems Taming Non-blocking Caches to Improve Isolation in Multicore Real-Time Systems Prathap Kumar Valsan, Heechul Yun, Farzad Farshchi University of Kansas 1 Why? High-Performance Multicores for Real-Time Systems

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

Abhishek Pandey Aman Chadha Aditya Prakash

Abhishek Pandey Aman Chadha Aditya Prakash Abhishek Pandey Aman Chadha Aditya Prakash System: Building Blocks Motivation: Problem: Determining when to scale down the frequency at runtime is an intricate task. Proposed Solution: Use Machine learning

More information

MEMORY/RESOURCE MANAGEMENT IN MULTICORE SYSTEMS

MEMORY/RESOURCE MANAGEMENT IN MULTICORE SYSTEMS MEMORY/RESOURCE MANAGEMENT IN MULTICORE SYSTEMS INSTRUCTOR: Dr. MUHAMMAD SHAABAN PRESENTED BY: MOHIT SATHAWANE AKSHAY YEMBARWAR WHAT IS MULTICORE SYSTEMS? Multi-core processor architecture means placing

More information

CONTENTION IN MULTICORE HARDWARE SHARED RESOURCES: UNDERSTANDING OF THE STATE OF THE ART

CONTENTION IN MULTICORE HARDWARE SHARED RESOURCES: UNDERSTANDING OF THE STATE OF THE ART CONTENTION IN MULTICORE HARDWARE SHARED RESOURCES: UNDERSTANDING OF THE STATE OF THE ART Gabriel Fernandez 1, Jaume Abella 2, Eduardo Quiñones 2, Christine Rochange 3, Tullio Vardanega 4 and Francisco

More information

Instruction Cache Locking Using Temporal Reuse Profile

Instruction Cache Locking Using Temporal Reuse Profile Instruction Cache Locking Using Temporal Reuse Profile Yun Liang, Tulika Mitra School of Computing, National University of Singapore {liangyun,tulika}@comp.nus.edu.sg ABSTRACT The performance of most embedded

More information

Cache-Aware Instruction SPM Allocation for Hard Real-Time Systems

Cache-Aware Instruction SPM Allocation for Hard Real-Time Systems Cache-Aware Instruction SPM Allocation for Hard Real-Time Systems Arno Luppold Institute of Embedded Systems Hamburg University of Technology Germany Arno.Luppold@tuhh.de Christina Kittsteiner Institute

More information

COTS Multicore Processors in Avionics Systems: Challenges and Solutions

COTS Multicore Processors in Avionics Systems: Challenges and Solutions COTS Multicore Processors in Avionics Systems: Challenges and Solutions Dionisio de Niz Bjorn Andersson and Lutz Wrage dionisio@sei.cmu.edu, baandersson@sei.cmu.edu, lwrage@sei.cmu.edu Report Documentation

More information

Scratchpad Memory Aware Task Scheduling with Minimum Number of Preemptions on a Single Processor

Scratchpad Memory Aware Task Scheduling with Minimum Number of Preemptions on a Single Processor Scratchpad Memory Aware Task Scheduling with Minimum Number of Preemptions on a Single Processor QingWan HuiWu Jingling Xue School of Computer Science and Engineering University of New South Wales Sydney,

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

Utilizing Concurrency: A New Theory for Memory Wall

Utilizing Concurrency: A New Theory for Memory Wall Utilizing Concurrency: A New Theory for Memory Wall Xian-He Sun (&) and Yu-Hang Liu Illinois Institute of Technology, Chicago, USA {sun,yuhang.liu}@iit.edu Abstract. In addition to locality, data access

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

Victim buffer impact on CPU performance

Victim buffer impact on CPU performance Victim buffer impact on CPU performance 1 Introduction --- Computer Architecture Technical Report Phase Two Danhua Guo George Chatzimilioudis Department of Computer Science and Engineering University of

More information

Benchmarking the Memory Hierarchy of Modern GPUs

Benchmarking the Memory Hierarchy of Modern GPUs 1 of 30 Benchmarking the Memory Hierarchy of Modern GPUs In 11th IFIP International Conference on Network and Parallel Computing Xinxin Mei, Kaiyong Zhao, Chengjian Liu, Xiaowen Chu CS Department, Hong

More information

Efficient Microarchitecture Modeling and Path Analysis for Real-Time Software. Yau-Tsun Steven Li Sharad Malik Andrew Wolfe

Efficient Microarchitecture Modeling and Path Analysis for Real-Time Software. Yau-Tsun Steven Li Sharad Malik Andrew Wolfe Efficient Microarchitecture Modeling and Path Analysis for Real-Time Software Yau-Tsun Steven Li Sharad Malik Andrew Wolfe 1 Introduction Paper examines the problem of determining the bound on the worst

More information

Predictable Cache Coherence for Multi- Core Real-Time Systems

Predictable Cache Coherence for Multi- Core Real-Time Systems Predictable Cache Coherence for Multi- Core Real-Time Systems Mohamed Hassan, Anirudh M. Kaushik and Hiren Patel RTAS 2017 Motivation: Data sharing in multi-core real-time systems Core 1 RT tasks L1 D/I

More information

Modeling Control Speculation for Timing Analysis

Modeling Control Speculation for Timing Analysis Modeling Control Speculation for Timing Analysis Xianfeng Li, Tulika Mitra and Abhik Roychoudhury School of Computing, National University of Singapore, 3 Science Drive 2, Singapore 117543. Abstract. The

More information

Predictable paging in real-time systems: an ILP formulation

Predictable paging in real-time systems: an ILP formulation Predictable paging in real-time systems: an ILP formulation Damien Hardy Isabelle Puaut Université Européenne de Bretagne / IRISA, Rennes, France Abstract Conventionally, the use of virtual memory in real-time

More information

Optimal Implementation of Simulink Models on Multicore Architectures with Partitioned Fixed Priority Scheduling

Optimal Implementation of Simulink Models on Multicore Architectures with Partitioned Fixed Priority Scheduling The 39th IEEE Real-Time Systems Symposium (RTSS 18) Optimal Implementation of Simulink Models on Multicore Architectures with Partitioned Fixed Priority Scheduling Shamit Bansal, Yecheng Zhao, Haibo Zeng,

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

Estimation of Cache Related Migration Delays for Multi-Core Processors with Shared Instruction Caches

Estimation of Cache Related Migration Delays for Multi-Core Processors with Shared Instruction Caches Estimation of Cache Related Migration Delays for Multi-Core Processors with Shared Instruction Caches Damien Hardy, Isabelle Puaut To cite this version: Damien Hardy, Isabelle Puaut. Estimation of Cache

More information

Hardware-Software Codesign. 9. Worst Case Execution Time Analysis

Hardware-Software Codesign. 9. Worst Case Execution Time Analysis Hardware-Software Codesign 9. Worst Case Execution Time Analysis Lothar Thiele 9-1 System Design Specification System Synthesis Estimation SW-Compilation Intellectual Prop. Code Instruction Set HW-Synthesis

More information

Balancing DRAM Locality and Parallelism in Shared Memory CMP Systems

Balancing DRAM Locality and Parallelism in Shared Memory CMP Systems Balancing DRAM Locality and Parallelism in Shared Memory CMP Systems Min Kyu Jeong, Doe Hyun Yoon^, Dam Sunwoo*, Michael Sullivan, Ikhwan Lee, and Mattan Erez The University of Texas at Austin Hewlett-Packard

More information

Design and Analysis of Real-Time Systems Predictability and Predictable Microarchitectures

Design and Analysis of Real-Time Systems Predictability and Predictable Microarchitectures Design and Analysis of Real-Time Systems Predictability and Predictable Microarcectures Jan Reineke Advanced Lecture, Summer 2013 Notion of Predictability Oxford Dictionary: predictable = adjective, able

More information

Static Bus Schedule aware Scratchpad Allocation in Multiprocessors

Static Bus Schedule aware Scratchpad Allocation in Multiprocessors Static Bus Schedule aware Scratchpad Allocation in Multiprocessors Sudipta Chattopadhyay National University of Singapore sudiptac@comp.nus.edu.sg Abhik Roychoudhury National Universiy of Singapore abhik@comp.nus.edu.sg

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

Chronos: a Timing Analyzer for Embedded Software

Chronos: a Timing Analyzer for Embedded Software Chronos: a Timing Analyzer for Embedded Software Xianfeng Li Department of Computer Science and Technology, Peking University, China Yun Liang Department of Computer Science, National University of Singapore,

More information

History-based Schemes and Implicit Path Enumeration

History-based Schemes and Implicit Path Enumeration History-based Schemes and Implicit Path Enumeration Claire Burguière and Christine Rochange Institut de Recherche en Informatique de Toulouse Université Paul Sabatier 6 Toulouse cedex 9, France {burguier,rochange}@irit.fr

More information

Cache Design and Timing Analysis for Preemptive Multi- tasking Real-Time Uniprocessor Systems

Cache Design and Timing Analysis for Preemptive Multi- tasking Real-Time Uniprocessor Systems Cache Design and Timing Analysis for Preemptive Multi- tasking Real-Time Uniprocessor Systems PhD Defense by Yudong Tan Advisor: Vincent J. Mooney III Center for Research on Embedded Systems and Technology

More information

Worst-Case Execution Time (WCET)

Worst-Case Execution Time (WCET) Introduction to Cache Analysis for Real-Time Systems [C. Ferdinand and R. Wilhelm, Efficient and Precise Cache Behavior Prediction for Real-Time Systems, Real-Time Systems, 17, 131-181, (1999)] Schedulability

More information

Scheduling of Parallel Real-time DAG Tasks on Multiprocessor Systems

Scheduling of Parallel Real-time DAG Tasks on Multiprocessor Systems Scheduling of Parallel Real-time DAG Tasks on Multiprocessor Systems Laurent George ESIEE Paris Journée du groupe de travail OVSTR - 23 mai 2016 Université Paris-Est, LRT Team at LIGM 1/53 CONTEXT: REAL-TIME

More information

Cache-Conscious Offline Real-Time Task Scheduling for Multi-Core Processors

Cache-Conscious Offline Real-Time Task Scheduling for Multi-Core Processors Cache-Conscious Offline Real-Time Task Scheduling for Multi-Core Processors Viet Anh Nguyen 1, Damien Hardy 2, and Isabelle Puaut 3 1 University of Rennes 1/IRISA, Rennes, France anh.nguyen@irisa.fr 2

More information

Dynamic Voltage Scaling of Periodic and Aperiodic Tasks in Priority-Driven Systems Λ

Dynamic Voltage Scaling of Periodic and Aperiodic Tasks in Priority-Driven Systems Λ Dynamic Voltage Scaling of Periodic and Aperiodic Tasks in Priority-Driven Systems Λ Dongkun Shin Jihong Kim School of CSE School of CSE Seoul National University Seoul National University Seoul, Korea

More information

CACHE DESIGN AND TIMING ANALYSIS FOR PREEMPTIVE MULTI-TASKING REAL-TIME UNIPROCESSOR SYSTEMS. Yudong Tan

CACHE DESIGN AND TIMING ANALYSIS FOR PREEMPTIVE MULTI-TASKING REAL-TIME UNIPROCESSOR SYSTEMS. Yudong Tan CACHE DESIGN AND TIMING ANALYSIS FOR PREEMPTIVE MULTI-TASKING REAL-TIME UNIPROCESSOR SYSTEMS A Dissertation Presented to The Academic Faculty by Yudong Tan In Partial Fulfillment of the Requirements for

More information

MicroFuge: A Middleware Approach to Providing Performance Isolation in Cloud Storage Systems

MicroFuge: A Middleware Approach to Providing Performance Isolation in Cloud Storage Systems 1 MicroFuge: A Middleware Approach to Providing Performance Isolation in Cloud Storage Systems Akshay Singh, Xu Cui, Benjamin Cassell, Bernard Wong and Khuzaima Daudjee July 3, 2014 2 Storage Resources

More information

Deterministic Memory Abstraction and Supporting Multicore System Architecture

Deterministic Memory Abstraction and Supporting Multicore System Architecture Deterministic Memory Abstraction and Supporting Multicore System Architecture Farzad Farshchi $, Prathap Kumar Valsan^, Renato Mancuso *, Heechul Yun $ $ University of Kansas, ^ Intel, * Boston University

More information

arxiv: v3 [cs.os] 27 Mar 2019

arxiv: v3 [cs.os] 27 Mar 2019 A WCET-aware cache coloring technique for reducing interference in real-time systems Fabien Bouquillon, Clément Ballabriga, Giuseppe Lipari, Smail Niar 2 arxiv:3.09v3 [cs.os] 27 Mar 209 Univ. Lille, CNRS,

More information

A Comparison of Capacity Management Schemes for Shared CMP Caches

A Comparison of Capacity Management Schemes for Shared CMP Caches A Comparison of Capacity Management Schemes for Shared CMP Caches Carole-Jean Wu and Margaret Martonosi Princeton University 7 th Annual WDDD 6/22/28 Motivation P P1 P1 Pn L1 L1 L1 L1 Last Level On-Chip

More information

Exploring Hybrid SPM-Cache Architectures to Improve Performance and Energy Efficiency for Real-time Computing

Exploring Hybrid SPM-Cache Architectures to Improve Performance and Energy Efficiency for Real-time Computing Virginia Commonwealth University VCU Scholars Compass Theses and Dissertations Graduate School 2013 Exploring Hybrid SPM-Cache Architectures to Improve Performance and Energy Efficiency for Real-time Computing

More information

Cache memories are small, fast SRAM-based memories managed automatically in hardware. Hold frequently accessed blocks of main memory

Cache memories are small, fast SRAM-based memories managed automatically in hardware. Hold frequently accessed blocks of main memory Cache Memories Cache memories are small, fast SRAM-based memories managed automatically in hardware. Hold frequently accessed blocks of main memory CPU looks first for data in caches (e.g., L1, L2, and

More information

4/6/2011. Informally, scheduling is. Informally, scheduling is. More precisely, Periodic and Aperiodic. Periodic Task. Periodic Task (Contd.

4/6/2011. Informally, scheduling is. Informally, scheduling is. More precisely, Periodic and Aperiodic. Periodic Task. Periodic Task (Contd. So far in CS4271 Functionality analysis Modeling, Model Checking Timing Analysis Software level WCET analysis System level Scheduling methods Today! erformance Validation Systems CS 4271 Lecture 10 Abhik

More information

Energy Aware Computing in Cooperative Wireless Networks

Energy Aware Computing in Cooperative Wireless Networks Energy Aware Computing in Cooperative Wireless Networks Anders Brødløs Olsen, Frank H.P. Fitzek, Peter Koch Department of Communication Technology, Aalborg University Niels Jernes Vej 12, 9220 Aalborg

More information

Modeling Hardware Timing 1 Caches and Pipelines

Modeling Hardware Timing 1 Caches and Pipelines Modeling Hardware Timing 1 Caches and Pipelines Peter Puschner slides: P. Puschner, R. Kirner, B. Huber VU 2.0 182.101 SS 2016 Generic WCET Analysis Framework source code Extraction of Flow Facts Compilation

More information

ECE 2300 Digital Logic & Computer Organization. More Caches

ECE 2300 Digital Logic & Computer Organization. More Caches ECE 23 Digital Logic & Computer Organization Spring 217 More Caches 1 Prelim 2 stats High: 9 (out of 9) Mean: 7.2, Median: 73 Announcements Prelab 5(C) due tomorrow 2 Example: Direct Mapped (DM) Cache

More information

EEC 483 Computer Organization. Chapter 5.3 Measuring and Improving Cache Performance. Chansu Yu

EEC 483 Computer Organization. Chapter 5.3 Measuring and Improving Cache Performance. Chansu Yu EEC 483 Computer Organization Chapter 5.3 Measuring and Improving Cache Performance Chansu Yu Cache Performance Performance equation execution time = (execution cycles + stall cycles) x cycle time stall

More information

CS 61C: Great Ideas in Computer Architecture (Machine Structures) Caches Part 2

CS 61C: Great Ideas in Computer Architecture (Machine Structures) Caches Part 2 CS 61C: Great Ideas in Computer Architecture (Machine Structures) Caches Part 2 Instructors: John Wawrzynek & Vladimir Stojanovic http://insteecsberkeleyedu/~cs61c/ Typical Memory Hierarchy Datapath On-Chip

More information

INSTRUCTION CACHE OPTIMIZATIONS FOR EMBEDDED SYSTEMS

INSTRUCTION CACHE OPTIMIZATIONS FOR EMBEDDED SYSTEMS INSTRUCTION CACHE OPTIMIZATIONS FOR EMBEDDED SYSTEMS YUN LIANG (B.Eng, TONGJI UNIVERSITY SHANGHAI, CHINA) A THESIS SUBMITTED FOR THE DEGREE OF DOCTOR OF PHILOSOPHY IN COMPUTER SCIENCE DEPARTMENT OF COMPUTER

More information

Efficient Cache Locking at Private First-Level Caches and Shared Last-Level Cache for Modern Multicore Systems

Efficient Cache Locking at Private First-Level Caches and Shared Last-Level Cache for Modern Multicore Systems Efficient Cache Locking at Private First-Level Caches and Shared Last-Level Cache for Modern Multicore Systems Abu Asaduzzaman 1, Kishore K. Chidella 2, Md Moniruzzaman 3 1,2,3 Electrical Engineering and

More information

Parallel Processing SIMD, Vector and GPU s cont.

Parallel Processing SIMD, Vector and GPU s cont. Parallel Processing SIMD, Vector and GPU s cont. EECS4201 Fall 2016 York University 1 Multithreading First, we start with multithreading Multithreading is used in GPU s 2 1 Thread Level Parallelism ILP

More information

Design Tradeoffs for Data Deduplication Performance in Backup Workloads

Design Tradeoffs for Data Deduplication Performance in Backup Workloads Design Tradeoffs for Data Deduplication Performance in Backup Workloads Min Fu,DanFeng,YuHua,XubinHe, Zuoning Chen *, Wen Xia,YuchengZhang,YujuanTan Huazhong University of Science and Technology Virginia

More information

Managing Memory for Timing Predictability. Rodolfo Pellizzoni

Managing Memory for Timing Predictability. Rodolfo Pellizzoni Managing Memory for Timing Predictability Rodolfo Pellizzoni Thanks This work would not have been possible without the following students and collaborators Zheng Pei Wu*, Yogen Krish Heechul Yun* Renato

More information

Cache-Conscious Concurrency Control of Main-Memory Indexes on Shared-Memory Multiprocessor Systems

Cache-Conscious Concurrency Control of Main-Memory Indexes on Shared-Memory Multiprocessor Systems Cache-Conscious Concurrency Control of Main-Memory Indexes on Shared-Memory Multiprocessor Systems Sang K. Cha, Sangyong Hwang, Kihong Kim, Keunjoo Kwon VLDB 2001 Presented by: Raluca Marcuta 1 / 31 1

More information

Memory hierarchy review. ECE 154B Dmitri Strukov

Memory hierarchy review. ECE 154B Dmitri Strukov Memory hierarchy review ECE 154B Dmitri Strukov Outline Cache motivation Cache basics Six basic optimizations Virtual memory Cache performance Opteron example Processor-DRAM gap in latency Q1. How to deal

More information

Agenda. Cache-Memory Consistency? (1/2) 7/14/2011. New-School Machine Structures (It s a bit more complicated!)

Agenda. Cache-Memory Consistency? (1/2) 7/14/2011. New-School Machine Structures (It s a bit more complicated!) 7/4/ CS 6C: Great Ideas in Computer Architecture (Machine Structures) Caches II Instructor: Michael Greenbaum New-School Machine Structures (It s a bit more complicated!) Parallel Requests Assigned to

More information

Improving Virtual Machine Scheduling in NUMA Multicore Systems

Improving Virtual Machine Scheduling in NUMA Multicore Systems Improving Virtual Machine Scheduling in NUMA Multicore Systems Jia Rao, Xiaobo Zhou University of Colorado, Colorado Springs Kun Wang, Cheng-Zhong Xu Wayne State University http://cs.uccs.edu/~jrao/ Multicore

More information

ait: WORST-CASE EXECUTION TIME PREDICTION BY STATIC PROGRAM ANALYSIS

ait: WORST-CASE EXECUTION TIME PREDICTION BY STATIC PROGRAM ANALYSIS ait: WORST-CASE EXECUTION TIME PREDICTION BY STATIC PROGRAM ANALYSIS Christian Ferdinand and Reinhold Heckmann AbsInt Angewandte Informatik GmbH, Stuhlsatzenhausweg 69, D-66123 Saarbrucken, Germany info@absint.com

More information

Locality-Aware Process Scheduling for Embedded MPSoCs*

Locality-Aware Process Scheduling for Embedded MPSoCs* Locality-Aware Process Scheduling for Embedded MPSoCs* Mahmut Kandemir and Guilin Chen Computer Science and Engineering Department The Pennsylvania State University, University Park, PA 1682, USA {kandemir,

More information

Designing Predictable Real-Time and Embedded Systems

Designing Predictable Real-Time and Embedded Systems Designing Predictable Real-Time and Embedded Systems Juniorprofessor Dr. Jian-Jia Chen Karlsruhe Institute of Technology (KIT), Germany 0 KIT Feb. University 27-29, 2012 of at thetu-berlin, State of Baden-Wuerttemberg

More information

Sustainable Computing: Informatics and Systems

Sustainable Computing: Informatics and Systems Sustainable Computing: Informatics and Systems 2 (212) 71 8 Contents lists available at SciVerse ScienceDirect Sustainable Computing: Informatics and Systems j ourna l ho me page: www.elsevier.com/locate/suscom

More information

What s An OS? Cyclic Executive. Interrupts. Advantages Simple implementation Low overhead Very predictable

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

A Thermal-aware Application specific Routing Algorithm for Network-on-chip Design

A Thermal-aware Application specific Routing Algorithm for Network-on-chip Design A Thermal-aware Application specific Routing Algorithm for Network-on-chip Design Zhi-Liang Qian and Chi-Ying Tsui VLSI Research Laboratory Department of Electronic and Computer Engineering The Hong Kong

More information

Dirk Tetzlaff Technical University of Berlin

Dirk Tetzlaff Technical University of Berlin Software Engineering g for Embedded Systems Intelligent Task Mapping for MPSoCs using Machine Learning Dirk Tetzlaff Technical University of Berlin 3rd Workshop on Mapping of Applications to MPSoCs June

More information

Shared Instruction Cache Analysis in Real-time Multi-core Systems

Shared Instruction Cache Analysis in Real-time Multi-core Systems Shared Instruction Cache Analysis in Real-time Multi-core Systems Kartik Nagar, Y. N. Srikant IISc-CSA-TR-2015-1 January 2015 Abstract Real-time systems require a safe and precise estimate of the Worst

More information

Trickle: Automated Infeasible Path

Trickle: Automated Infeasible Path Trickle: Automated Infeasible Path Detection Using All Minimal Unsatisfiable Subsets Bernard Blackham, Mark Liffiton, Gernot Heiser School of Computer Science & Engineering, UNSW Software Systems Research

More information

Improving LDPC Performance Via Asymmetric Sensing Level Placement on Flash Memory

Improving LDPC Performance Via Asymmetric Sensing Level Placement on Flash Memory Improving LDPC Performance Via Asymmetric Sensing Level Placement on Flash Memory Qiao Li, Liang Shi, Chun Jason Xue Qingfeng Zhuge, and Edwin H.-M. Sha College of Computer Science, Chongqing University

More information

1. Creates the illusion of an address space much larger than the physical memory

1. Creates the illusion of an address space much larger than the physical memory Virtual memory Main Memory Disk I P D L1 L2 M Goals Physical address space Virtual address space 1. Creates the illusion of an address space much larger than the physical memory 2. Make provisions for

More information

Combining Prefetch with Instruction Cache Locking in Multitasking Real-Time Systems

Combining Prefetch with Instruction Cache Locking in Multitasking Real-Time Systems Combining Prefetch with Instruction Cache Locking in Multitasking Real-Time Systems Luis C. Aparicio, Juan Segarra, Clemente Rodríguez and Víctor Viñals Dpt. Informática e Ingeniería de Sistemas, Universidad

More information

Timing analysis and timing predictability

Timing analysis and timing predictability Timing analysis and timing predictability Architectural Dependences Reinhard Wilhelm Saarland University, Saarbrücken, Germany ArtistDesign Summer School in China 2010 What does the execution time depends

More information

Pull based Migration of Real-Time Tasks in Multi-Core Processors

Pull based Migration of Real-Time Tasks in Multi-Core Processors Pull based Migration of Real-Time Tasks in Multi-Core Processors 1. Problem Description The complexity of uniprocessor design attempting to extract instruction level parallelism has motivated the computer

More information

PERFORMANCE ANALYSIS OF REAL-TIME EMBEDDED SOFTWARE

PERFORMANCE ANALYSIS OF REAL-TIME EMBEDDED SOFTWARE PERFORMANCE ANALYSIS OF REAL-TIME EMBEDDED SOFTWARE PERFORMANCE ANALYSIS OF REAL-TIME EMBEDDED SOFTWARE Yau-Tsun Steven Li Monterey Design Systems, Inc. Sharad Malik Princeton University ~. " SPRINGER

More information

Phase-based Cache Locking for Embedded Systems

Phase-based Cache Locking for Embedded Systems Phase-based Cache Locking for Embedded Systems Tosiron Adegbija and Ann Gordon-Ross* Department of Electrical and Computer Engineering, University of Florida (UF), Gainesville, FL 32611, USA tosironkbd@ufl.edu

More information

Using Bypass to Tighten WCET Estimates for Multi-Core Processors with Shared Instruction Caches

Using Bypass to Tighten WCET Estimates for Multi-Core Processors with Shared Instruction Caches INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE Using Bypass to Tighten WCET Estimates for Multi-Core Processors with Shared Instruction Caches Damien Hardy Thomas Piquet Isabelle Puaut

More information

Cache-Aware Utilization Control for Energy-Efficient Multi-Core Real-Time Systems

Cache-Aware Utilization Control for Energy-Efficient Multi-Core Real-Time Systems Cache-Aware Utilization Control for Energy-Efficient Multi-Core Real-Time Systems Xing Fu, Khairul Kabir, and Xiaorui Wang Dept. of Electrical Engineering and Computer Science, University of Tennessee,

More information

EDA for ONoCs: Achievements, Challenges, and Opportunities. Ulf Schlichtmann Dresden, March 23, 2018

EDA for ONoCs: Achievements, Challenges, and Opportunities. Ulf Schlichtmann Dresden, March 23, 2018 EDA for ONoCs: Achievements, Challenges, and Opportunities Ulf Schlichtmann Dresden, March 23, 2018 1 Outline Placement PROTON (nonlinear) PLATON (force-directed) Maze Routing PlanarONoC Challenges Opportunities

More information

Profiling-Based L1 Data Cache Bypassing to Improve GPU Performance and Energy Efficiency

Profiling-Based L1 Data Cache Bypassing to Improve GPU Performance and Energy Efficiency Profiling-Based L1 Data Cache Bypassing to Improve GPU Performance and Energy Efficiency Yijie Huangfu and Wei Zhang Department of Electrical and Computer Engineering Virginia Commonwealth University {huangfuy2,wzhang4}@vcu.edu

More information

Operating system integrated energy aware scratchpad allocation strategies for multiprocess applications

Operating system integrated energy aware scratchpad allocation strategies for multiprocess applications University of Dortmund Operating system integrated energy aware scratchpad allocation strategies for multiprocess applications Robert Pyka * Christoph Faßbach * Manish Verma + Heiko Falk * Peter Marwedel

More information

Allowing Cycle-Stealing Direct Memory Access I/O. Concurrent with Hard-Real-Time Programs

Allowing Cycle-Stealing Direct Memory Access I/O. Concurrent with Hard-Real-Time Programs To appear in: Int. Conf. on Parallel and Distributed Systems, ICPADS'96, June 3-6, 1996, Tokyo Allowing Cycle-Stealing Direct Memory Access I/O Concurrent with Hard-Real-Time Programs Tai-Yi Huang, Jane

More information

CACHE-RELATED PREEMPTION DELAY COMPUTATION FOR SET-ASSOCIATIVE CACHES

CACHE-RELATED PREEMPTION DELAY COMPUTATION FOR SET-ASSOCIATIVE CACHES CACHE-RELATED PREEMPTION DELAY COMPUTATION FOR SET-ASSOCIATIVE CACHES PITFALLS AND SOLUTIONS 1 Claire Burguière, Jan Reineke, Sebastian Altmeyer 2 Abstract In preemptive real-time systems, scheduling analyses

More information

Evaluation and Validation

Evaluation and Validation Springer, 2010 Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany 2013 年 12 月 02 日 These slides use Microsoft clip arts. Microsoft copyright restrictions apply. Application Knowledge

More information

Dual-Processor Design of Energy Efficient Fault-Tolerant System

Dual-Processor Design of Energy Efficient Fault-Tolerant System Dual-Processor Design of Energy Efficient Fault-Tolerant System Shaoxiong Hua Synopsys Inc. 7 E. Middlefield Road Mountain View, CA 9443 huas@synopsys.com Pushkin R. Pari Intel Technology India Pvt. Ltd.

More information

Database Workload. from additional misses in this already memory-intensive databases? interference could be a problem) Key question:

Database Workload. from additional misses in this already memory-intensive databases? interference could be a problem) Key question: Database Workload + Low throughput (0.8 IPC on an 8-wide superscalar. 1/4 of SPEC) + Naturally threaded (and widely used) application - Already high cache miss rates on a single-threaded machine (destructive

More information

Scalable Dynamic Task Scheduling on Adaptive Many-Cores

Scalable Dynamic Task Scheduling on Adaptive Many-Cores Introduction: Many- Paradigm [Our Definition] Scalable Dynamic Task Scheduling on Adaptive Many-s Vanchinathan Venkataramani, Anuj Pathania, Muhammad Shafique, Tulika Mitra, Jörg Henkel Bus CES Chair for

More information

Presenting: Comparing the Power and Performance of Intel's SCC to State-of-the-Art CPUs and GPUs

Presenting: Comparing the Power and Performance of Intel's SCC to State-of-the-Art CPUs and GPUs Presenting: Comparing the Power and Performance of Intel's SCC to State-of-the-Art CPUs and GPUs A paper comparing modern architectures Joakim Skarding Christian Chavez Motivation Continue scaling of performance

More information

COSC3330 Computer Architecture Lecture 19. Cache

COSC3330 Computer Architecture Lecture 19. Cache COSC3330 Computer Architecture Lecture 19 Cache Instructor: Weidong Shi (Larry), PhD Computer Science Department University of Houston Cache Topics 3 Cache Hardware Cost How many total bits are required

More information

The Memory Hierarchy & Cache Review of Memory Hierarchy & Cache Basics (from 350):

The Memory Hierarchy & Cache Review of Memory Hierarchy & Cache Basics (from 350): The Memory Hierarchy & Cache Review of Memory Hierarchy & Cache Basics (from 350): Motivation for The Memory Hierarchy: { CPU/Memory Performance Gap The Principle Of Locality Cache $$$$$ Cache Basics:

More information