QoS-based Management of Multiple Shared Resources in Dynamic Real-Time Systems Klaus Ecker, Frank Drews School of EECS, Ohio University, Athens, OH {ecker,

Slides:



Advertisements
Similar presentations
Multiprocessor Scheduling
Advertisements

L3S Research Center University of Hanover Germany
On allocations that maximize fairness Uriel Feige Microsoft Research and Weizmann Institute.
Feedback Control Real- time Scheduling James Yang, Hehe Li, Xinguang Sheng CIS 642, Spring 2001 Professor Insup Lee.
Feedback Control Real-Time Scheduling: Framework, Modeling, and Algorithms Chenyang Lu, John A. Stankovic, Gang Tao, Sang H. Son Presented by Josh Carl.
Real-Time Competitive Environments: Truthful Mechanisms for Allocating a Single Processor to Sporadic Tasks Anwar Mohammadi, Nathan Fisher, and Daniel.
© 2004 Wayne Wolf Topics Task-level partitioning. Hardware/software partitioning.  Bus-based systems.
Design of Experiments Lecture I
Minimum Clique Partition Problem with Constrained Weight for Interval Graphs Jianping Li Department of Mathematics Yunnan University Jointed by M.X. Chen.
S YSTEM -W IDE E NERGY M ANAGEMENT FOR R EAL -T IME T ASKS : L OWER B OUND AND A PPROXIMATION Xiliang Zhong and Cheng-Zhong Xu ICCAD 2006, ACM Trans. on.
ECE 667 Synthesis and Verification of Digital Circuits
Principal Component Analysis Based on L1-Norm Maximization Nojun Kwak IEEE Transactions on Pattern Analysis and Machine Intelligence, 2008.
Explicit Preemption Placement for Real- Time Conditional Code via Graph Grammars and Dynamic Programming Bo Peng, Nathan Fisher, and Marko Bertogna Department.
Fast Algorithms For Hierarchical Range Histogram Constructions
Transportation Problem (TP) and Assignment Problem (AP)
Coverage by Directional Sensors Jing Ai and Alhussein A. Abouzeid Dept. of Electrical, Computer and Systems Engineering Rensselaer Polytechnic Institute.
Computing Kemeny and Slater Rankings Vincent Conitzer (Joint work with Andrew Davenport and Jayant Kalagnanam at IBM Research.)
Linear Programming: Simplex Method and Sensitivity Analysis
On Large-Scale Peer-to-Peer Streaming Systems with Network Coding Chen Feng, Baochun Li Dept. of Electrical and Computer Engineering University of Toronto.
All Hands Meeting, 2006 Title: Grid Workflow Scheduling in WOSE (Workflow Optimisation Services for e- Science Applications) Authors: Yash Patel, Andrew.
Resource Management of Highly Configurable Tasks April 26, 2004 Jeffery P. HansenSourav Ghosh Raj RajkumarJohn P. Lehoczky Carnegie Mellon University.
Presenter: David Fleeman { D. Juedes, F. Drews, L. Welch and D. Fleeman Center for Intelligent, Distributed & Dependable.
Evaluation of representations in AI problem solving Eugene Fink.
Distributed Algorithms for Secure Multipath Routing
Kuang-Hao Liu et al Presented by Xin Che 11/18/09.
Towards Feasibility Region Calculus: An End-to-end Schedulability Analysis of Real- Time Multistage Execution William Hawkins and Tarek Abdelzaher Presented.
Lecture 5: Learning models using EM
Evaluating Hypotheses
Jan 6-10th, 2007VLSI Design A Reduced Complexity Algorithm for Minimizing N-Detect Tests Kalyana R. Kantipudi Vishwani D. Agrawal Department of Electrical.
2-Layer Crossing Minimisation Johan van Rooij. Overview Problem definitions NP-Hardness proof Heuristics & Performance Practical Computation One layer:
System-Wide Energy Minimization for Real-Time Tasks: Lower Bound and Approximation Xiliang Zhong and Cheng-Zhong Xu Dept. of Electrical & Computer Engg.
By Group: Ghassan Abdo Rayyashi Anas to’meh Supervised by Dr. Lo’ai Tawalbeh.
Distributed Constraint Optimization * some slides courtesy of P. Modi
End-to-End Delay Analysis for Fixed Priority Scheduling in WirelessHART Networks Abusayeed Saifullah, You Xu, Chenyang Lu, Yixin Chen.
©2003/04 Alessandro Bogliolo Background Information theory Probability theory Algorithms.
 1  Outline  stages and topics in simulation  generation of random variates.
Network Aware Resource Allocation in Distributed Clouds.
Random Sampling, Point Estimation and Maximum Likelihood.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
ROBUST RESOURCE ALLOCATION OF DAGS IN A HETEROGENEOUS MULTI-CORE SYSTEM Luis Diego Briceño, Jay Smith, H. J. Siegel, Anthony A. Maciejewski, Paul Maxwell,
ECE 8443 – Pattern Recognition ECE 8423 – Adaptive Signal Processing Objectives: Deterministic vs. Random Maximum A Posteriori Maximum Likelihood Minimum.
1 Lesson 8: Basic Monte Carlo integration We begin the 2 nd phase of our course: Study of general mathematics of MC We begin the 2 nd phase of our course:
Scheduling policies for real- time embedded systems.
Euro-Par, A Resource Allocation Approach for Supporting Time-Critical Applications in Grid Environments Qian Zhu and Gagan Agrawal Department of.
Stochastic DAG Scheduling using Monte Carlo Approach Heterogeneous Computing Workshop (at IPDPS) 2012 Extended version: Elsevier JPDC (accepted July 2013,
Resource Mapping and Scheduling for Heterogeneous Network Processor Systems Liang Yang, Tushar Gohad, Pavel Ghosh, Devesh Sinha, Arunabha Sen and Andrea.
Object-Oriented Design and Implementation of the OE-Scheduler in Real-time Environments Ilhyun Lee Cherry K. Owen Haesun K. Lee The University of Texas.
1 Iterative Integer Programming Formulation for Robust Resource Allocation in Dynamic Real-Time Systems Sethavidh Gertphol and Viktor K. Prasanna University.
Rounding scheme if r * j  1 then r j := 1  When the number of processors assigned in the continuous solution is between 0 and 1 for each task, the speed.
CSCI1600: Embedded and Real Time Software Lecture 23: Real Time Scheduling I Steven Reiss, Fall 2015.
Resource Allocation in Hospital Networks Based on Green Cognitive Radios 王冉茵
Optimization in Engineering Design 1 Introduction to Non-Linear Optimization.
Determining Optimal Processor Speeds for Periodic Real-Time Tasks with Different Power Characteristics H. Aydın, R. Melhem, D. Mossé, P.M. Alvarez University.
Towards Robust Revenue Management: Capacity Control Using Limited Demand Information Michael Ball, Huina Gao, Yingjie Lan & Itir Karaesmen Robert H Smith.
Dynamic Resource Allocation for Shared Data Centers Using Online Measurements By- Abhishek Chandra, Weibo Gong and Prashant Shenoy.
Embedded System Scheduling
Lesson 8: Basic Monte Carlo integration
Memory Segmentation to Exploit Sleep Mode Operation
A Study of Group-Tree Matching in Large Scale Group Communications
Wayne Wolf Dept. of EE Princeton University
A paper on Join Synopses for Approximate Query Answering
Task: It is necessary to choose the most suitable variant from some set of objects by those or other criteria.
Server Allocation for Multiplayer Cloud Gaming
When Security Games Go Green
CPU Scheduling G.Anuradha
Objective of This Course
Utility-Function based Resource Allocation for Adaptable Applications in Dynamic, Distributed Real-Time Systems Presenter: David Fleeman {
Ch 4. Periodic Task Scheduling
Anand Bhat*, Soheil Samii†, Raj Rajkumar* *Carnegie Mellon University
CISE-301: Numerical Methods Topic 1: Introduction to Numerical Methods and Taylor Series Lectures 1-4: KFUPM CISE301_Topic1.
Presentation transcript:

QoS-based Management of Multiple Shared Resources in Dynamic Real-Time Systems Klaus Ecker, Frank Drews School of EECS, Ohio University, Athens, OH {ecker,

Overview of the Talk Introduction Feedback-control based resource management architecture Heuristics for allocating multiple resources to soft real-time tasks Results –Simulation results Outlook and future work

Introduction Problem of adaptive resource management with soft real-time tasks –sharing multiple resources –having discrete QoS (Quality of Service) settings that correspond to varying resource usage and varying user benefit (utility) –having minimum QoS requirements –being deployed in a mixed critical system –integrated into a feedback-control based resource management architecture

Real-time Design and Development Traditional design: –often pessimistic... –use worst-case execution times of tasks guaranteeing provably correct timeliness e.g., rate monotonic analysis –infrequent critical instants, –inaccurate resource profiles, etc.... may lead to poor performance

Soft Real-Time Tasks Allow Alternative Approaches System resource usage is controlled by modifying QoS parameters Objective: maximize overall system benefit –E.g., multimedia applications: quality of service depends on the amount of resources for the individual tasks Our system model is similar to Q-RAM –Q-RAM MCMDKP (Multiple Choice Multidimensional Knapsack Problem) –Static Optimization Problem No notion of run-time variations

Additional requirements We associate 2 profiles with each task –Resource profile:maps QoS to resources –Utility profile: maps resources to system benefit Resource availability may change over time –Resource profiles are inherently inaccurate –We may only allocate a fraction of resources to the soft real-time tasks Requires run-time resource reallocations A good static resource management algorithm may result in instability in the presence of run-time variations in resource availabilities Resource reallocations based on feedback control

Motivation / Background Mixed critical task systems: Soft real-time tasks may be periodic, aperiodic, or event-driven periodic We may want to allocate a share of available resources to soft real-time tasks –may change over time Resource profiles may be inaccurate

Feedback-control Architecture set point ( 100%- desired slack) measured resource availability (feedback) Error QoS RM Controller QoS settings Resource allocation algorithm

Basic Controller Operation Controller is event-driven. It is driven by the following events: –End of a task period –Task arrival –Task termination The controller computes the error and calls the QoS resource allocation algorithm This algorithm determines new QoS settings for all tasks

Controller Requirements Basic QoS controller requirements: –Robustness with respect to modeling errors, i.e., inaccurate resource profiles –Stability with respect to dynamic changes in the resource availability The system should not exhibit a cyclic behavior Errors should not accumulate –Low time complexity –Upper and lower bounds on the optimal solution can be used to characterize the QoS control performance

Observations We generally expect the controller to minimize the control error Observation 1 If the tasks QoS settings are discrete and concave, minimizing is not sufficient for maximizing the overall system benefit

Notation The model: The model: different resource types each of them available in several units The non- soft r.-t. tasks require some share of the available resources, which may vary over time Unused resources at current time: units of The soft r.-t. tasks –compete for these, –their performance depends on the amount of allocated resources. Performance of a task … depends on the type and number of assigned resources

Objective Objective: The resource units are to be distributed (allocated) among the soft r.-t. tasks such that QoS is maximized Assumption: Utility (Performance) of a task is discrete and concave Concave utility functions are widely used in this area Examples of utility measures: Inverse of processing time: the more resources a task has, the shorter the processing time, and the higher the benefit. Precision of computation: more resources lead to better computational results.

The total utility of an allocation is defined as: Optimization Problem (formally): Given minimal resource constraints, find resource values for each such that is maximum, subject to for MCMDKP Multiple Choice Multidimensional Knapsack Problem

Algorithmic Approaches Algorithms apply Kuhn-Tucker theorem adaptation to discrete functions : Rajkumar et al., 1997: The discrete problem is NP-complete in the case of one resource type Judd et al., 2005: Feedback-control framework; Algorithm with bounds on optimal solution and prove for control stability It can be solved in polynomial time in case of unit step functions Discrete_Kuhn_Tucker ( DKT ) algorithm (steepest ascent rule) Single resource type:

In case of concave functions the discrete problem is NP complete, even in case of unit step utility functions Proof: Reduction from the Maximum Packing Integer Programming Problem Case of m 2 resource types:

Chen Lee et al., 1999: a linear programming algorithm for unit resource allocation steps and non-concave functions Complexity pseudo-polynomial time and space complexity not appropriate for on-line resource management with large Case of m 2 resource types:

Multidimensional Kuhn-Tucker Algorithm Applies to the resource directions in some chosen order, say. Properties of MDKT: –time complexity is linear in the number of tasks, n –not optimal in general Algorithm Multidimensional_Discrete_Kuhn_Tucker (MDKT) for i := 1 to m do DKT()

Alternative heuristics: Steepest_Ascent allocates the excess resources unit by unit such that, at each step, the total utility is increased by the maximum possible amount. Properties of STAS: –time complexity is linear in the number of tasks n –not optimal in general Algorithm Steepest_Ascent (STAS) repeat choose a task and an available resource such that is maximum; assign one unit of to ; until all resource units are allocated;

Estimating Lower and Upper Bounds Special "uniform" utility functions : ai, bi... utility increase by adding one resource unit MDKT is optimal for uniform utility functions

General utility functions : Non-trivial lower and upper bounds on can easily be found Replace each by uniform functions and that are close to the original functions Then:

Simulations for the case of resource types Utility function were generated in two different ways: (a)Directly using random numbers from the interval [0,100] (b)By evaluating the function Where the parameters were chosen arbitrarily between 0 and 200.

Sample Utility Function

Results The lower and upper bounds for are approx 10% apart. Experimental studies also show that performed on average on order or magnitude better than We performed simulations with fixed task numbers between 2 and 35, and resource units between 2 and 100. In each case we performed tests.

Performance of MDKT and STAS against the optimum, for varying task numbers between 5 and 35 : In average, the utility of the MDKT-solutions is less than 0.3 % below the optimum

The next simulation compares MDKT and STAS for 5 tasks and varying numbers of resource units There are up to 15 units of each resource available More resource units lead to better performance of MDKT. Again there is no significant deviation of STAS from the optimum.

Dynamic Changes of Resource Availability If resource units are withdrawn from soft real-time tasks then one or more tasks have to run at a lower utility, thus resulting in a smaller total system utility. If available resource units increase the tasks should take advantage in order to increase their contribution to the total system utility.

General Strategy If one of the resource limits is reduced by one unit, reduce the assignment of this resource for a task that has minimum loss of utility. If one of the resource limits is increased by one unit, then assign the additional unit to a task that offers maximum utility gain. Simulation studies show that the system behaves stable.

Conclusions Extending the work of QRAM, we have presented heuristics to optimize utility with respect to QoS settings. The heuristics are efficient and stable control algorithms optimize task QoS settings within known margins, do not accumulate errors over time

Future Work