SACR: Scheduling-Aware Cache Reconfiguration for Real-Time Embedded Systems - PowerPoint PPT Presentation

About This Presentation
Title:

SACR: Scheduling-Aware Cache Reconfiguration for Real-Time Embedded Systems

Description:

Title: Outline Author: Engineering Computing User Last modified by: prabhat Created Date: 6/21/1999 5:11:45 PM Document presentation format: On-screen Show – PowerPoint PPT presentation

Number of Views:113
Avg rating:3.0/5.0
Slides: 22
Provided by: Engineerin109
Category:

less

Transcript and Presenter's Notes

Title: SACR: Scheduling-Aware Cache Reconfiguration for Real-Time Embedded Systems


1
SACR Scheduling-Aware Cache Reconfiguration for
Real-Time Embedded Systems
  • Weixun Wang and Prabhat Mishra
  • Embedded Systems Lab
  • Computer and Information Science and Engineering
  • University of Florida
  • Ann Gordon-Ross
  • Electrical and Computer Engineering
  • University of Florida

2
Outline
  • Introduction
  • Related Work
  • Scheduling-Aware Cache Reconfigurations
  • Phase-based Optimal Cache Selection
  • Scheduling-Aware Dynamic Reconfigurations
  • Experiments
  • Conclusion

3
Introduction
  • Real-time embedded systems
  • Energy constraints (battery operated)
  • Time constrained
  • Hard task deadlines
  • Safety-critical systems
  • Soft task deadlines
  • Gaming, multimedia, housekeeping devices have
    soft deadlines
  • Deadline miss results in temporary
    service/quality degradation
  • Dynamic cache reconfigurations
  • Promising for improving energy and performance
  • Not applicable in real-time systems
  • Dynamic computation is expensive
  • Dynamic reconfiguration leads to timing
    uncertainty

Propose a scheduling-aware dynamic cache
reconfiguration technique to generate
significant energy savings in soft real-time
systems by exploiting static analysis during
runtime.
4
Outline
  • Introduction
  • Related Work
  • Scheduling-Aware Cache Reconfigurations
  • Phase-based Optimal Cache Selection
  • Scheduling-Aware Dynamic Reconfigurations
  • Experiments
  • Conclusion

5
Related Work
  • Energy-aware task scheduling techniques
  • Early Deadline First (EDF) and Rate Monotonic
    (RM)
  • Dynamic Voltage Scaling (DVS)
  • Jejurikar et al. IEEE TCAD 06, Quan et al.
    ACM TECS 07
  • Caches in Real-Time Systems
  • Cache locking and Cache Partitioning
  • Puant RTSS 02 and Wolfe IWRCS 1993
  • Cache-related preemption delay analysis
  • Tan et al. ACM TECS 2007
  • Reconfigurable Cache Architectures
  • Reconfigurable cache architecture
  • Zhang et al. ACM TECS 05
  • Application-based vs. Phase-based tuning
  • Gordon-Ross et al. ISLPED 05 vs. Sherwood et
    al. Micro 03

6
Outline
  • Introduction
  • Related Work
  • Scheduling-Aware Cache Reconfigurations
  • Phase-based Optimal Cache Selection
  • Scheduling-Aware Dynamic Reconfigurations
  • Experiments
  • Conclusion

7
Overview
Task 1
Task 2
In traditional real-time systems
In our approach
8
Phase-based Optimal Cache Selection
  • A task is divided by n potential preemption
    points
  • A phase is the period of time between a
    predefined potential preemption point and task
    completion
  • Each phase has its optimal cache configuration
  • Performance-optimal and energy-optimal
  • A static profile table is generated for each task

Pn-1
P1
P2
0
Task Execution Time
phase n (n-1/n)
Cn
phase 3 (2/n)
C3
phase 2 (1/n)
C2
phase 1 (0/n)
C1
9
Phase-based Optimal Cache Selection
  • Potential preemption points may not be the same
    as actual preemption points.
  • They are used for cache configuration selection.
  • Partition factor determines the potential
    preemption points and resulting phases
  • Large partition factor leads to large look-up
    table
  • Not feasible due to area constraints
  • Large partition factor may not save more energy
  • Partition factor around 4 to 7 is profitable

10
Outline
  • Introduction
  • Related Work
  • Scheduling-Aware Cache Reconfigurations
  • Phase-based Optimal Cache Selection
  • Scheduling-Aware Dynamic Reconfigurations
  • Statically Scheduled Systems
  • Dynamically Scheduled Systems
  • Experiments
  • Conclusion

11
Scheduling-Aware Cache Reconfiguration
  • Statically scheduled systems
  • Arrival times, execution times, and deadlines are
    known a priori for each task
  • Statically profile energy-optimal configurations
    for every execution period of each task without
    violating any task deadlines
  • Dynamically scheduled systems
  • Task preemption points are unknown
  • New tasks can enter the system at any time
  • Conservative approach
  • Aggressive approach

12
Conservative Approach
  • Energy-optimal cache configuration with equal or
    higher performance than base cache
  • Nearest-neighbor
  • Use the nearest partition point to decide which
    cache configuration to tune to
  • Static Profile table
  • Deadline-aware energy-optimal configurations
  • Task list entry
  • Runtime information

13
Aggressive Approach
  • Energy-optimal cache configuration
    Performance-optimal cache configuration
  • Includes their execution time as well.
  • Ready task list (RTL)
  • Contains all the tasks currently in the system
  • Static Profile table
  • Energy-opt configuration
  • Perf.-optimal configuration
  • Task list entry
  • Runtime information

14
Outline
  • Introduction
  • Related Work
  • Scheduling-Aware Cache Reconfigurations
  • Phase-based Optimal Cache Selection
  • Scheduling-Aware Dynamic Reconfigurations
  • Experiments
  • Conclusion

15
Experimental Setup
  • SimpleScalar to obtain simulation statistics
  • Used external I/O (eio) trace file, checkpointing
    and fastforwarding to generate static profile
    table
  • Energy model
  • Zhang et al. and CACTI 4.2
  • Benchmarks
  • EEMBC
  • MediaBench

16
Energy Savings (Instruction Cache)
28 average energy savings using conservative
approach
51 average energy saving using aggressive
approach
17
Energy Savings (Data Cache)
17 average energy savings using conservative
approach
22 average energy saving using aggressive
approach
17
18
Hardware Overhead
  • Profile Table stores 18 cache configurations
  • Synthesized using Synopsys Design Compiler
  • Assumed lookup frequency of one million
    nanoseconds
  • Table lookup every 500K cycles using 500 MHz CPU
  • Average energy penalty is 450 nJ
  • Less than 0.02 of overall savings (2825563 nJ)

19
Conclusion
  • Dynamic cache reconfiguration is a promising
    approach to improve both energy consumption and
    overall performance.
  • Developed a scheduling aware dynamic cache
    reconfiguration technique
  • On average 50 reduction in overall cache energy
    consumption in soft real-time systems
  • Future work
  • Hard real-time systems
  • Multi-core and multi-processor systems

20
  • Thank you !

21
Aggressive Approach
  • When task T is the only task in the system
  • Always tune to energy-optimal cache if possible
  • When task T preempts another task
  • Run schedulability check
  • Discard the lowest priority task if absolutely
    necessary
  • Tune to energy-optimal cache
  • if all other tasks in RTL can meet their
    deadlines using their performance-optimal caches
  • When task T is preempted by another task
  • Calculate and store runtime information (RIN, CP)
Write a Comment
User Comments (0)
About PowerShow.com