Efficient Power Management for Memory in Soft Real Time Systems Midterm presentation.

Slides:



Advertisements
Similar presentations
Feedback Control Real-Time Scheduling: Framework, Modeling, and Algorithms Chenyang Lu, John A. Stankovic, Gang Tao, Sang H. Son Presented by Josh Carl.
Advertisements

Real Time Scheduling.
EE5900 Advanced Embedded System For Smart Infrastructure
Introduction to Embedded Systems Resource Management - III Lecture 19.
1 “Scheduling with Dynamic Voltage/Speed Adjustment Using Slack Reclamation In Multi-processor Real-Time Systems” Dakai Zhu, Rami Melhem, and Bruce Childers.
CPU Scheduling Tanenbaum Ch 2.4 Silberchatz and Galvin Ch 5.
Power Management for Hard Disks and Main Memory 11/06/2008 Presented by Matthias Eiblmaier 1.
1 Adaptive History-Based Memory Schedulers Ibrahim Hur and Calvin Lin IBM Austin The University of Texas at Austin.
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 19 Scheduling IV.
Chapter 9 Uniprocessor Scheduling Operating Systems: Internals and Design Principles, 6/E William Stallings Dave Bremer Otago Polytechnic, N.Z. ©2008,
Chapter 9 Uniprocessor Scheduling Operating Systems: Internals and Design Principles, 6/E William Stallings Dave Bremer Otago Polytechnic, N.Z. ©2008,
Cs238 CPU Scheduling Dr. Alan R. Davis. CPU Scheduling The objective of multiprogramming is to have some process running at all times, to maximize CPU.
CS 104 Introduction to Computer Science and Graphics Problems Operating Systems (2) Process Management 10/03/2008 Yang Song (Prepared by Yang Song and.
5: CPU-Scheduling1 Jerry Breecher OPERATING SYSTEMS SCHEDULING.
By Group: Ghassan Abdo Rayyashi Anas to’meh Supervised by Dr. Lo’ai Tawalbeh.
Cmpt-225 Simulation. Application: Simulation Simulation  A technique for modeling the behavior of both natural and human-made systems  Goal Generate.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 15 Slide 1 Real-time Systems 1.
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Lecture 5 Operating Systems.
Chapter 4 Processor Management
Operating System Concepts and Techniques Lecture 5 Scheduling-1 M. Naghibzadeh Reference M. Naghibzadeh, Operating System Concepts and Techniques, First.
OPERATING SYSTEMS CPU SCHEDULING.  Introduction to CPU scheduling Introduction to CPU scheduling  Dispatcher Dispatcher  Terms used in CPU scheduling.
Lecture 2 Process Concepts, Performance Measures and Evaluation Techniques.
Chapter 6 Scheduling. Basic concepts Goal is maximum utilization –what does this mean? –cpu pegged at 100% ?? Most programs are I/O bound Thus some other.
Scheduling. Alternating Sequence of CPU And I/O Bursts.
Real-Time Scheduling CS4730 Fall 2010 Dr. José M. Garrido Department of Computer Science and Information Systems Kennesaw State University.
1 Distributed Energy-Efficient Scheduling for Data-Intensive Applications with Deadline Constraints on Data Grids Cong Liu and Xiao Qin Auburn University.
Company name KUAS HPDS A Realistic Variable Voltage Scheduling Model for Real-Time Applications ICCAD Proceedings of the 2002 IEEE/ACM international conference.
Course Title: “Operating System” Chapter No: 04 “Process Scheduling” Course Instructor: ILTAF MEHDI IT Lecturer, MIHE, Kart-i Parwan, Kabul.
Hard Real-Time Scheduling for Low- Energy Using Stochastic Data and DVS Processors Flavius Gruian Department of Computer Science, Lund University Box 118.
Chapter 5: Process Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Basic Concepts Maximum CPU utilization can be obtained.
1 Real-Time Scheduling. 2Today Operating System task scheduling –Traditional (non-real-time) scheduling –Real-time scheduling.
High-Performance DRAM System Design Constraints and Considerations by: Joseph Gross August 2, 2010.
For a good summary, visit:
Chapter 4 CPU Scheduling. 2 Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation.
Chapter 9 Uniprocessor Scheduling Operating Systems: Internals and Design Principles, 6/E William Stallings Dave Bremer Otago Polytechnic, N.Z. ©2008,
An operating system for a large-scale computer that is used by many people at once is a very complex system. It contains many millions of lines of instructions.
Basic Concepts Maximum CPU utilization obtained with multiprogramming
Real-Time Operating Systems RTOS For Embedded systems.
CPU Scheduling Scheduling processes (or kernel-level threads) onto the cpu is one of the most important OS functions. The cpu is an expensive resource.
Real-time Software Design
REAL-TIME OPERATING SYSTEMS
Chapter 19: Real-Time Systems
Lecture 12: Real-Time Scheduling
Chapter 8 – Processor Scheduling
Real-time Software Design
Lecture 24: Process Scheduling Examples and for Real-time Systems
Chapter 6: CPU Scheduling
ICS 143 Principles of Operating Systems
Process Scheduling B.Ramamurthy 11/18/2018.
CPU Scheduling G.Anuradha
Module 5: CPU Scheduling
3: CPU Scheduling Basic Concepts Scheduling Criteria
Process Scheduling B.Ramamurthy 12/5/2018.
Chapter 2: The Linux System Part 3
Chapter5: CPU Scheduling
Native simulation of different scheduling policies
Chapter 6: CPU Scheduling
CPU SCHEDULING.
COT 4600 Operating Systems Fall 2009
Chapter 6: CPU Scheduling
Process Scheduling Decide which process should run and for how long
Lecture 2 Part 3 CPU Scheduling
Chapter 19: Real-Time Systems
Process Scheduling B.Ramamurthy 4/11/2019.
Process Scheduling B.Ramamurthy 4/7/2019.
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Chapter 6: CPU Scheduling
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Presentation transcript:

Efficient Power Management for Memory in Soft Real Time Systems Midterm presentation

DRAM Every Chip and rank in the DRAM has several powermodes: Transition in and out of lower power modes needs time read writes are only possible in active mode!

Power saving methods Power aware scheduler Power augmented History Scheduler Throttling Power dynamic transition Power static transition

Power saving methods Power down unused chips (PD) → OS/Memory scheduler should use just minimal needed number of chips Group read write accesses timely – Scheduler has to look at a stack of instructions and reorder them in a reasonable manner Throttle speed/queue

Power saving methods DRAM Processors/Caches Memory Queue Scheduler Read Write Queues Reads/Writes MEMORY CONTROLLER 1.Read/Write instructions are queued in a stack 2.Scheduler (AHB) decides which instruction is preferred 3.Subsequently instructions are transferred into FIFO Memory Queue

Chosen Approach A.Many Power Down mechanism were evolved for DRAM, but usually they just handle two Power Modes – Use all 4 (active, standby, nap, power down) B.Algorithm‘s primary concern is to meet timing constraints C.If no negative influence is expected power down a chip/rank (according to simple algorithm): D.Maybe allow fast „backdoor“ for highest priority tasks – Chips/Ranks where critical tasks are assigned to never power down and are served with FIFO manner E.Throttle commands in Queue to allow better task execution time estimation, reordering mechanism and longer power down times

A. Powering down unused chips Read/Write Queue C:1 - R:1 - B-1 - … C:1 - …. - … C:1 - … - … C:2 - … - … C:1 - … - … C:2 - … - … - C:1 - … - … - C:2 - … - … - Chip 3 Chip 2 K2 epochs later K3 epochs later PM t

A. Reordering Read/Write Queue C:1 - R:1 - B-1 - … C:1 - …. - … C:1 - … - … C:2 - … - … C:1 - … - … C:2 - … - … - C:1 - … - … - C:2 - … - … - Chip 1 Chip 2

Manipulate PM B. Guarantee Soft RT Set Power Mode to result in a shorter estimated execution time then deadline The Transfer function can be estimated by + tt opt Transfer function Controller - Command threshold If timing constraint is violated set a certain threshold for power down

C. Power down used chips with gaps 1For I from 1 to n 2Get Deadline miss for task i 3 If deadline misses > 0 4PM i = 1 // set the power mode of the concerned rank/chip to highest. 5else 6Get Deadline for task i 7Calculate t act for task i 8Set t act (T) < t dl //set T so that t is just shorter then t dl 9Calculate best Energy consumption for tasks 10If optimal Energy PM is higher then optimal Timing PM 10aThen use optimal Energy PM 10bElse use optimal Timing PM 11Get which Rank/Chip wasn’t used for a certain threshold (counting flags) 12Power them down one step 13Assign PM to DRAM Pseudo code Control Algorithm: DRAM example with Matlab Tasks 1- 10: (T,Dl,adr1,adr2, misses)

D. Power down used chips with gaps Tasks power down primary when timing constraints are hold but with reasonable power budget: t fastPM < t opt < dl Energy loop has only little influence EL is mainly concerned with unused chips

E. Throttling Approach “Force memory commands to wait in the memory controller, DRAM structures can remain in low power mode for arbitrarily long periods of time, thereby modulating the DRAM’s average power consumption over some small time interval.”... 10,000 cycles T cycles activestall active stall time T cycles

13 E. Key Difficulty: to determine accurate throttling  Inaccurate throttling  Power consumption is over the budget  Unnecessary performance loss A B Application 1 App. 2

E. Existing Method By Ibrahim Hur and Calvin Lin Model features that we determine Power threshold Number of Reads Number of Writes Bank conflict information System model Compute model coefficients during system design/installation by experiments with various memory access behavior.

15 Monitor Set Power P s = 60W Write Rates Read Rates RAM CtrlController P(n-1) K*Δp(n) RAM Power Calc Throttling: y(n) E. Throttling Mechanism with Feedback Control

E. Power Model Total Power: Detailed information refer to : And DRAMsim Manual at pdf

E. Simulator-DRAMsim+VisTool Device UtilizationUtilization Statistic

Outlook for future work Feedback for change of threshold Reordering Mechanism “Backdoor” Throttling Mechanism which doesn’t violate timing constraints Simulations to show superior RT behavior of memory controller