Cooperative Disk Management with ECOSystem Emily Tennant Mentor: Carla Ellis Duke University.

Slides:



Advertisements
Similar presentations
Computer-System Structures Er.Harsimran Singh
Advertisements

Vassal: Loadable Scheduler Support for Multi-Policy Scheduling George M. Candea, Oracle Corporation Michael B. Jones, Microsoft Research.
Energy Efficiency through Burstiness Athanasios E. Papathanasiou and Michael L. Scott University of Rochester, Computer Science Department Rochester, NY.
CHAPTER 2 PROCESSOR SCHEDULING PART I By U ğ ur HALICI.
1 Storage-Aware Caching: Revisiting Caching for Heterogeneous Systems Brian Forney Andrea Arpaci-Dusseau Remzi Arpaci-Dusseau Wisconsin Network Disks University.
MASSIVE ARRAYS OF IDLE DISKS FOR STORAGE ARCHIVES D. Colarelli D. Grunwald U. Colorado, Boulder.
Introduction to Smartphone Energy Management. Issue 1/2 Rapid expansion of wireless services, mobile data and wireless LANs Greatest limitation: finite.
ASPLOS, October 2002 © 2002, Carla Ellis stems & Architecture ECOSystem: Managing Energy as a First Class Operating System Resource Heng Zeng, Carla Ellis,
Chapter 11: File System Implementation
ECE 526 – Network Processing Systems Design Software-based Protocol Processing Chapter 7: D. E. Comer.
Dynamic Power Management for Systems with Multiple Power Saving States Sandy Irani, Sandeep Shukla, Rajesh Gupta.
OS2-1 Chapter 2 Computer System Structures. OS2-2 Outlines Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection.
1 Lecture 2: Review of Computer Organization Operating System Spring 2007.
Multiprocessing Memory Management
Reducing the Energy Usage of Office Applications Jason Flinn M. Satyanarayanan Carnegie Mellon University Eyal de Lara Dan S. Wallach Willy Zwaenepoel.
Chapter 13 Embedded Systems
Computer System Overview
Chapter 1 and 2 Computer System and Operating System Overview
Chapter 1 and 2 Computer System and Operating System Overview
Computer Organization and Architecture
2/11/20041 Power Management. 2/11/20042 Outline: Introduction to the topic Part 1: Vertigo –How can power consumption by a processor be reduced? –What.
1 Chapter 13 Embedded Systems Embedded Systems Characteristics of Embedded Operating Systems.
Basics of Operating Systems March 4, 2001 Adapted from Operating Systems Lecture Notes, Copyright 1997 Martin C. Rinard.
Ideas for Cooperative Disk Management with ECOSystem Emily Tennant Mentor: Carla Ellis Duke University.
Computer Architecture and Operating Systems CS 3230: Operating System Section Lecture OS-3 CPU Scheduling Department of Computer Science and Software Engineering.
Chapter 4 Processor Management
1 Lecture 4: Threads Operating System Fall Contents Overview: Processes & Threads Benefits of Threads Thread State and Operations User Thread.
Chapter 1 Computer System Overview Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William.
Low-Power Wireless Sensor Networks
CSC 501 Lecture 2: Processes. Process Process is a running program a program in execution an “instantiation” of a program Program is a bunch of instructions.
Chapter 5 Operating System Support. Outline Operating system - Objective and function - types of OS Scheduling - Long term scheduling - Medium term scheduling.
Rensselaer Polytechnic Institute CSCI-4210 – Operating Systems CSCI-6140 – Computer Operating Systems David Goldschmidt, Ph.D.
Recall: Three I/O Methods Synchronous: Wait for I/O operation to complete. Asynchronous: Post I/O request and switch to other work. DMA (Direct Memory.
1 Distributed Energy-Efficient Scheduling for Data-Intensive Applications with Deadline Constraints on Data Grids Cong Liu and Xiao Qin Auburn University.
CPU Scheduling CSCI 444/544 Operating Systems Fall 2008.
1 Scheduling The part of the OS that makes the choice of which process to run next is called the scheduler and the algorithm it uses is called the scheduling.
1 Tuning Garbage Collection in an Embedded Java Environment G. Chen, R. Shetty, M. Kandemir, N. Vijaykrishnan, M. J. Irwin Microsystems Design Lab The.
1 Process Scheduling in Multiprocessor and Multithreaded Systems Matt Davis CS5354/7/2003.
Bi-Hadoop: Extending Hadoop To Improve Support For Binary-Input Applications Xiao Yu and Bo Hong School of Electrical and Computer Engineering Georgia.
11/13/20151 Processes ICS 240: Operating Systems –William Albritton Information and Computer Sciences Department at Leeward Community College –Original.
Lecture 7: Scheduling preemptive/non-preemptive scheduler CPU bursts
Uniprocessor Scheduling
By Teacher Asma Aleisa Year 1433 H.   Goals of memory management  To provide a convenient abstraction for programming.  To allocate scarce memory.
OPERATING SYSTEMS CS 3530 Summer 2014 Systems with Multi-programming Chapter 4.
Lecture 1: Review of Computer Organization
Energy Efficient Prefetching and Caching Athanasios E. Papathanasiou and Michael L. Scott. University of Rochester Proceedings of 2004 USENIX Annual Technical.
Ensieea Rizwani An energy-efficient management mechanism for large-scale server clusters By: Zhenghua Xue, Dong, Ma, Fan, Mei 1.
Spin-down Disk Model Not Spinning Spinning & Ready Spinning & Access Spinning & Seek Spinning up Spinning down Inactivity Timeout threshold* Request Trigger:
Scheduling.
Advanced Operating Systems CS6025 Spring 2016 Processes and Threads (Chapter 2)
IIS Progress Report 2016/01/11. Goal Propose an energy-efficient scheduler that minimize the power consumption while providing sufficient computing resources.
Input and Output Optimization in Linux for Appropriate Resource Allocation and Management James Avery King.
INTRODUCTION TO WIRELESS SENSOR NETWORKS
Power Management in Embedded Systems
Copyright ©: Nahrstedt, Angrave, Abdelzaher
Chapter 3: Process Concept
Copyright ©: Nahrstedt, Angrave, Abdelzaher
Operating Systems Disk Scheduling A. Frank - P. Weisberg.
Real-time Software Design
Outline Every Joule is Previous: The Case for Revisiting Operating System Design for Energy Efficiency 19-Sep-18 Ubiquitous Computing.
Hui Chen, Shinan Wang and Weisong Shi Wayne State University
Qingbo Zhu, Asim Shankar and Yuanyuan Zhou
Threads Chapter 4.
Chapter 3: Processes.
Jacob R. Lorch and Alan Jay Smith University of California, Berkeley
Outline - Energy Management
Virtual Memory: Working Sets
CSE 542: Operating Systems
COMP755 Advanced Operating Systems
Page Cache and Page Writeback
Presentation transcript:

Cooperative Disk Management with ECOSystem Emily Tennant Mentor: Carla Ellis Duke University

Outline Milly Watt Overview Cooperative file operations Building blocks for efficient hard disk management Read and write requests Design Issues Testing

Milly Watt Project Energy consumption in use of computing devices is an important problem – emphasis on power management –Mobile computing: Extend battery lifetime –Traditional platforms: Reduce heat production and fan noise –Conserve energy resources (lessen environmental impact) Energy should be managed as a “first class” system resource –Partnership between applications and system in setting energy policy What can be done within the OS to achieve energy-related goals without requiring applications to change in any way?

ECOSystem Energy Centric Operating System Goals: –Manage allocation of energy to achieve a desired battery lifetime without requiring application modifications –Allocate energy proportionally among active applications as it becomes a scarce resource Unified Currentcy Model –Energy accounting and allocation are expressed in a common currentcy. –Unifies hardware resource management –One unit of currentcy represents right to consume certain amount of energy within a fixed amount of time (0.01 mJ).

ECOSystem Mechanisms Currentcy Allocation –Battery lifetime achieved by limiting battery discharge rate –Per-epoch recalculation of discharge rate and allocation of currentcy –Energy allocated proportionally among tasks – “allowance” Currentcy Accounting –Pay as you go for resource use – resource containers –No more currentcy  no more service. –Charging policies specific to device type

The Next Step The next step for ECOSystem –Improve energy efficiency –Take advantage of energy aware applications Vision –Create a set of API extensions permitting applications to pass application-specific information to the OS. –Use this information to manage disk accesses more efficiently. Specific Goals –Simple interface –Minimal changes – backward compatibility –Energy savings in terms of currentcy

Disk Management Maximize time spent in standby Minimize transitions from standby to active state Traditional systems: disks managed individually Goal: use Currentcy Model to explicitly batch requests for disk access more efficiently Terms: read, write, update CostTime Out (sec) Access1.65 mJN/A Idle mW0.5 Idle 2650 mW2 Idle 3400 mW27.5 Standby (disk down) 0 mWN/A Spin up6000 mJN/A Spin down6000 mJN/A Hard drive states One Watt = one Joule per second

Related Work Recent submission to OSDI conference: –Andreas Weissel, Björn Beutel, Frank Bellosa. Cooperative I/O—A Novel I/O Semantics for Energy-Aware Applications. Goal: “demonstrate benefits of application involvement in operating system power management.” Coop-I/O – an approach to reduce power consumption of devices (disk) Involves hardware, operating system, I/O interface for energy-aware applications

Main Elements – Coop-I/O New cooperative file operations –read_coop(), write_coop(), open_coop() –New parameters: time-out and cancel flag –If disk is inactive, delay disk request for length of time-out parameter –Possible to abort accesses after time-out period Energy-efficient update mechanism –Update of cached disk blocks is batched to maximize the time hard disk can spend in standby mode. OS controls hard disk modes –Disk drive is switched into low-power mode according to an adaptive algorithm. –“device-dependent time-out with early shutdown (DDT/ES)”

Cooperative I/O in ECOSystem New cooperative file operations –New system calls (readb, writeb) with added parameter(s). –Deferrable disk requests –Abortable file operations? Energy-efficient update mechanism –Updates deferred to create bursty disk access –Energy-efficient update strategies integrated into write process OS control of disk drive –Motivation of adaptive algorithm for powering down disk drive?

Bidding How do we couch the cooperative, deferrable file operations of Coop-I/O in terms of ECOSystem’s currentcy? “Bidding” process –Inflated entry price delays disk spinup to ensure that multiple processes have generated disk requests. –Each process “bids” the amount of currentcy it is willing to contribute towards the entry price. Time Total Bid Entry Price P2 P1 P3 Disk spins up

Priorities Motivating Question: How can we implement the bidding process in a useful and intuitive interface (similar to Coop- I/O)? Priority (and currentcy bid) Time willing to wait – Currentcy is dynamic – difficult for application to assign directly. – Create static priorities. – Map priorities to a currentcy amount for bid. What type of priorities could be created? – Integer sets (1-10, 1-100) – Real-numbered intervals – Dynamic priorities

Takes place within OS – application knows nothing about currentcy Involves resource container May require resource container alteration –Bid, priority, time-out, etc. Mapping Priority to Bid Resource Container Available_currentcy Ticket priority Percentage of entry price Percentage of available currentcy Available_currentcy Ticket Bid Priority

Assume numeric priority. Priority corresponds directly to percentage of available currentcy that is allocated to bid. Example: priority = 5, available currentcy = 1000mJ BID = 500mJ Remainder of available currentcy can be used (CPU, NIC) while process waits to access disk (asynchronous access). Overhead issues BID = available_currentcy * (priority/10) A Simple Mapping Model

1.System call is generated. readb(……...., [priority]); 2.Verify that data is uncached and disk is inactive. 3.Priority bid. 4.“Issue bid” – store bid amount in resource container. 5.Process enters waitqueue. Sample Read Disk Accesses 6. Update daemon checks Σbids (reads and writes) against the entry price. 7.When Σbids  entry price, disk spins up. 8.Disk access enters runqueue. 9.Resource container is debited for cost of access. 10.Data is read into buffer cache.

Write Disk Access More complex! What does “deferrable write” mean? Do we defer writing to the buffer cache or flushing the buffers to the disk? ECOSystem: Unified write/update policy Writes –Data is written to buffer immediately. –Process bids toward disk spin up (and buffer flushing) - only requires resource container. Updates –Bids vs. entry price delays disk spinup. –Disk spinup activates buffer flushing. –Decreasing entry price guarantees updates.

Sample Write Disk Accesses writeb(…,…,…,[priority]); Is buffer already cached? Bid to read buffer in. Write to buffer cache. Is disk active? Bid. Flush buffer.

Design Issues Reads: P1P2 Simplest case (first implementation): - “first-reader” - accumulate only P1’s bid - charge only P1 for disk access Intuitive Goal: - “sum” - accumulate bids from P1 and P2 - charge P1 and P2 Writes: P1P2P1 Simplest case: - “last writer” - save only P2’s bid - charge only P2 Intuitive Goal: -“sum” - accumulate bids from P1 and P2 - charge P1 and P2 pid P1 pid P2

Testing Synthetic Benchmarks –Simple read/write programs. –Create scenarios where energy-savings are most obvious. –Simulate different workloads: Multiple simultaneous cooperative tasks Mix cooperative and non-cooperative tasks. “Real” Application –Audio/video player, image viewer. –Test performance in non- optimized, “real-life” situations. Compare results on : –ECOSystem unthrottled (Coop-I/O) –Current ECOSystem implementation –ECOSystem with cooperative implementation

Summary New system calls for basic file operations. Priority can be specified by application. Priority determines amount of currentcy in bid. Total bids for disk access must exceed entry price. Interaction between decreasing entry price and bids for disk access works toward efficiently batching disk accesses while guaranteeing that non-abortable accesses occur.