1 / 21

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

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. Outline.

Télécharger la présentation

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

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  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 P2 P1 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)

More Related