1 Class-based prioritized resource control in Linux Amit Khanna Roll No 4134, BE - I.

Slides:



Advertisements
Similar presentations
You have been given a mission and a code. Use the code to complete the mission and you will save the world from obliteration…
Advertisements

PID Control Loops Guy Zebrick.
Chapter 6 I/O Systems.
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
Pricing for Utility-driven Resource Management and Allocation in Clusters Chee Shin Yeo and Rajkumar Buyya Grid Computing and Distributed Systems (GRIDS)
Processes and Operating Systems
CSF4 Meta-Scheduler Tutorial 1st PRAGMA Institute Zhaohui Ding or
Implementation of a Validated Statistical Computing Environment Presented by Jeff Schumack, Associate Director – Drug Development Information September.
Towards Automating the Configuration of a Distributed Storage System Lauro B. Costa Matei Ripeanu {lauroc, NetSysLab University of British.
Business Transaction Management Software for Application Coordination 1 Business Processes and Coordination.
©2003 aQute, All Rights Reserved Tokyo, August 2003 : 1 OSGi Service Platform Tokyo August 28, 2003 Peter Kriens CEO aQute, OSGi Fellow
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
Addition Facts
So far Binary numbers Logic gates Digital circuits process data using gates – Half and full adder Data storage – Electronic memory – Magnetic memory –
OPERATING SYSTEMS Lecturer: Szabolcs Mikulas Office: B38B
1 Processes and Threads Creation and Termination States Usage Implementations.
Chapter 5 Input/Output 5.1 Principles of I/O hardware
1 9 Moving to Design Lecture Analysis Objectives to Design Objectives Figure 9-2.
Making the System Operational
Real Time Versions of Linux Operating System Present by Tr n Duy Th nh Quách Phát Tài 1.
Mehdi Naghavi Spring 1386 Operating Systems Mehdi Naghavi Spring 1386.
Debugging operating systems with time-traveling virtual machines Sam King George Dunlap Peter Chen CoVirt Project, University of Michigan.
Managing Web server performance with AutoTune agents by Y. Diao, J. L. Hellerstein, S. Parekh, J. P. Bigu Jangwon Han Seongwon Park
OS-aware Tuning Improving Instruction Cache Energy Efficiency on System Workloads Authors : Tao Li, John, L.K. Published in : Performance, Computing, and.
Sweet Storage SLOs with Frosting Andrew Wang, Shivaram Venkataraman, Sara Alspaugh, Ion Stoica, Randy Katz.
Slide 5-1 Copyright © 2004 Pearson Education, Inc. Operating Systems: A Modern Perspective, Chapter 5 5 Device Management.
I/O Systems.
Slide 5-1 Copyright © 2004 Pearson Education, Inc. Operating Systems: A Modern Perspective, Chapter 5 5 Device Management.
Process Management.
The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010.
Chapter 4 Memory Management Basic memory management Swapping
ABC Technology Project
INTRODUCTION TO SIMULATION WITH OMNET++ José Daniel García Sánchez ARCOS Group – University Carlos III of Madrid.
Module 10: Virtual Memory
Trap Diagnostic Facility Todays Software Diagnostic Tool with innovative features for the z/OS software developer Arney Computer Systems.
HORIZONT TWS/WebAdmin TWS/WebAdmin for Distributed
COMP1214 Systems & Platforms: Operating Systems Concepts Dr. Yvonne Howard – Rikki Prince – 1.
CMPT 431 Dr. Alexandra Fedorova Lecture III: OS Support.
OPERATING SYSTEM SUPPORT
Database System Concepts and Architecture
Chapter 9: The Client/Server Database Environment
3.1 Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Process An operating system executes a variety of programs: Batch system.
1 Processes and Threads Chapter Processes 2.2 Threads 2.3 Interprocess communication 2.4 Classical IPC problems 2.5 Scheduling.
Processes Management.
Executional Architecture
SIMOCODE-DP Software.
© 2004, D. J. Foreman 1 Scheduling & Dispatching.
Addition 1’s to 20.
25 seconds left…...
Week 1.
Chapter 10: The Traditional Approach to Design
Systems Analysis and Design in a Changing World, Fifth Edition
We will resume in: 25 Minutes.
Hi-Fi: Collecting High-Fidelity Whole-System Provenance Devin J.Pohly 1, Stephen McLaughlin 1, Patrick McDaniel 1, Kevin Butler 2 1 Pennsylvania State.
Introduction to Ad-hoc & Sensor Networks Security In The Name of God ISC Student Branch in KNTU 4 th Workshop Ad-hoc & Sensor Networks.
The DDS Benchmarking Environment James Edmondson Vanderbilt University Nashville, TN.
Extensibility, Safety and Performance in the SPIN Operating System Presented by Allen Kerr.
Figure 2.8 Compiler phases Compiling. Figure 2.9 Object module Linking.
Figure 1.1 Interaction between applications and the operating system.
Xuan Guo Chapter 1 What is UNIX? Graham Glass and King Ables, UNIX for Programmers and Users, Third Edition, Pearson Prentice Hall, 2003 Original Notes.
Chapter 3 Operating Systems Introduction to CS 1 st Semester, 2015 Sanghyun Park.
Threads, Thread management & Resource Management.
OS, , Part I Operating - System Structures Department of Computer Engineering, PSUWannarat Suntiamorntut.
Chapter 2 Process Management. 2 Objectives After finish this chapter, you will understand: the concept of a process. the process life cycle. process states.
What is an Operating System? Various systems and their pros and cons –E.g. multi-tasking vs. Batch OS definitions –Resource allocator –Control program.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Mid Term review CSC345.
Operating Systems Lecture 1.
CS149D Elements of Computer Science
Presentation transcript:

1 Class-based prioritized resource control in Linux Amit Khanna Roll No 4134, BE - I

2 Outline Motivation Framework Classification Engine (CE) Resource Schedulers Resource Monitoring User Interface Conclusion and Future Work

3 Introduction Workload Any system work with a distinct business goal A set of kernel tasks executing over some duration Vary in their importance Resource demands Diverse Dynamically changing

4 Workload Management Current scenario Manual Static Workload Managers (WLM) Differentiated service Translate business goals to system goals Ability to handle dynamically changing resource requirements

5 Class-based Kernel Resource Management (CKRM) Class - A dynamic grouping of OS objects Entitlements Reclassification of a task Hierarchical Classification Rule - Method by which a task can be classified into a class Policy - A collection of class definitions and classification rules

6 Components of CKRM Core Defines the basic entities Link between all the other components Classification Engine (CE) Classifies kernel objects into classes Class-aware Resource Controllers RCFS (Resource Control File System) User-Kernel interface for CKRM

7 Components of CKRM User Kernel Resource Management Middleware System Administrator Classification Filesystem RCFS (Resource Control Filesystem) CKRM API Externally defined Policy --Rules -- Class defs Classification Engine CKRM Core fork() exec() … Share Usage (per- resource) Class A T1 T2 T4 Share Usage (per- resource) Class D T4 Reclassification Class Aware Patches Resource Schedulers CPU, Disk I/O, Network, Memory Class Aware Resource Allocation Ti - Tasks - Patches Resource request

8 Classification Engine (CE) Optional component (module) Automatically triggered on kernel events Eg. setuid, fork, exec RBCE (Rule Based Classification Engine) Rule format A set of attribute-value tuples (A, V) and a class C Eg gid=10, uid = 7, target = /rcfs/task_class/Gold

9 CPU Controller Current scheduler - O(1) scheduler One runqueue per CPU Active array and expired array 140 nice levels Extensions Runqueues for each class for each CPU Hierarchical scheduling scheme ecp(C) = R * Σ cycles(C)/share(C) + top_prio

10 Test Results Class shares Gold – 60% Silver – 30% Bronze – 9% Best Effort – 1% Nice Values : -20, - 10, 0, 10, 19

11 Memory Controller Current Scenario Memory zones Page descriptor lists – active, inactive and free Page reclamation Extensions Classes have associated share of physical memory No of pages allocated to a class are monitored Class shares are enforced only when system memory is low Modified page reclamation

12 Memory Usage Test Results Test conducted on a 2.4GHz Pentium 4 desktop running Redhat Linux 9 and the Linux kernel running using a simple microbenchmark Total physical memory = 352 MB Class As access freq = 2 * Class Bs access freq Class As consumption = Class Bs consumption = 200 MB Class As share/Class Bs share

13 Resource Monitoring State-agent Runs in user-space Maintains state of existing and exited processes Monitoring infrastructure design principles Event-driven Aperiodic Periodic Communication channel Minimal kernel state

14 Resource Monitoring (continued) Sampling Self-restarting kernel timer Struct delay_info Schedulers records timestamps Kernel module sends data to state-agent as records

15 Resource Control File System (RCFS) /rcfs /rcfs/task_class /rcfs/socket_class /rcfs/ce Files member config target shares stats Files reclassify state Rules Gold Music Compile

16 Conclusions and Future Work Goal-oriented WLMs can automate low-level administration Critical workloads can be protected from workload pressure by specifying their minimum shares Redeveloping resource controllers to support hierarchy of classes Cooperative communication between various resource controllers

17 References CKRM Open Source Project. Class-based kernel resource management. Enabling Autonomic Workload Management in Linux, IEEE Proceedings, International Conference on Autonomic Computing (ICAC'04), May 2004, Pages: 314 – 315 AIX 5L Workload Manager, IBM Corp. sg pdf

18

19 Scheduling Overhead Test results have been measured using LMBench benchmark

20 Figure 10: Monitoring and Control Approach

21 for (i=0; i<50; i++) { start = get_time(); busy_waiting(N); end = get_time(); response = end - start - N; sleep(200) ; } Interactivity Test Code

22 Interactivity Test Results Gold, Bronze and Best Effort classes have 5 CPU bound jobs. Silver class has an interactive job

23 I/O Controller Current scenario Each block device has a single logical queue Merges and sorts I/O requests made by block layer Passes on the request to device driver Extensions One queue per-class Moves the requests from input queue to dispatch queue in proportion of their weight

24 I/O Controller CKRM I/O Scheduler Block Layer (Producer) Low Level Device Driver (Consumer) Output Queue FCFS Dequeue Function Sort/ Merge Enqueue Function Per-class queues