Scheduling for Reliable Execution in Autonomic Systems* Terry Tidwell, Robert Glaubius, Christopher Gill, and William D. Smart {ttidwell, rlg1, cdgill,

Slides:



Advertisements
Similar presentations
Design of a biomolecular Device that executes process Algebra Urmi Majumder and John Reif Department of Computer Science Duke University DNA15, JUNE 10,
Advertisements

Markov Decision Process
Partially Observable Markov Decision Process (POMDP)
SA-1 Probabilistic Robotics Planning and Control: Partially Observable Markov Decision Processes.
CSE-573 Artificial Intelligence Partially-Observable MDPS (POMDPs)
Scalable Utility Aware Scheduling Heuristics for Real-time Tasks with Stochastic Non-preemptive Execution Intervals* Terry Tidwell 1, Carter Bass 1, Eli.
Dynamic Bayesian Networks (DBNs)
Decision Theoretic Planning
All Hands Meeting, 2006 Title: Grid Workflow Scheduling in WOSE (Workflow Optimisation Services for e- Science Applications) Authors: Yash Patel, Andrew.
A Hierarchical Framework for Composing Nested Web Processes Haibo Zhao, Prashant Doshi LSDIS Lab, Dept. of Computer Science, University of Georgia 4 th.
A Hybridized Planner for Stochastic Domains Mausam and Daniel S. Weld University of Washington, Seattle Piergiorgio Bertoli ITC-IRST, Trento.
An Introduction to Markov Decision Processes Sarah Hickmott
Distributed Association Control in Shared Wireless Networks Krishna C. Garikipati and Kang G. Shin University of Michigan-Ann Arbor.
Markov Decision Processes
Infinite Horizon Problems
Planning under Uncertainty
Operating Systems COMP 4850/CISG 5550 Deadlock Avoidance Dr. James Money.
1 Policies for POMDPs Minqing Hu. 2 Background on Solving POMDPs MDPs policy: to find a mapping from states to actions POMDPs policy: to find a mapping.
Concurrent Markov Decision Processes Mausam, Daniel S. Weld University of Washington Seattle.
RL Cont’d. Policies Total accumulated reward (value, V ) depends on Where agent starts What agent does at each step (duh) Plan of action is called a policy,
Markov Decision Processes
Planning in MDPs S&B: Sec 3.6; Ch. 4. Administrivia Reminder: Final project proposal due this Friday If you haven’t talked to me yet, you still have the.
Discretization Pieter Abbeel UC Berkeley EECS
Informationsteknologi Tuesday, October 9, 2007Computer Systems/Operating Systems - Class 141 Today’s class Scheduling.
Department of Computer Science Undergraduate Events More
More RL. MDPs defined A Markov decision process (MDP), M, is a model of a stochastic, dynamic, controllable, rewarding process given by: M = 〈 S, A,T,R.
Applications of Data Mining in Microarray Data Analysis Yen-Jen Oyang Dept. of Computer Science and Information Engineering.
MAKING COMPLEX DEClSlONS
Cyber-Physical Systems Research* Chris Gill Professor of Computer Science and Engineering Washington University, St. Louis, MO, USA
Search and Planning for Inference and Learning in Computer Vision
CPS Scheduling Policy Design with Utility and Stochastic Execution* Chris Gill Associate Professor Department of Computer Science and Engineering Washington.
Scheduling as a Learned Art* Christopher Gill, William D. Smart, Terry Tidwell, and Robert Glaubius {cdgill, wds, ttidwell, Department.
Real-Time Performance and Middleware for Multiprocessor and Multicore Linux Platforms* Yuanfang Zhang, Christopher Gill, and Chenyang Lu Department of.
Non-Preemptive Scheduling Policy Design for Tasks with Stochastic Execution Times* Chris Gill Associate Professor Department of Computer Science and Engineering.
Decision Making in Robots and Autonomous Agents Decision Making in Robots and Autonomous Agents The Markov Decision Process (MDP) model Subramanian Ramamoorthy.
Computer Science CPSC 502 Lecture 14 Markov Decision Processes (Ch. 9, up to 9.5.3)
Locating Mobile Agents in Distributed Computing Environment.
1 Markov Decision Processes Infinite Horizon Problems Alan Fern * * Based in part on slides by Craig Boutilier and Daniel Weld.
Department of Computer Science Undergraduate Events More
1 Markov Decision Processes Infinite Horizon Problems Alan Fern * * Based in part on slides by Craig Boutilier and Daniel Weld.
MDPs (cont) & Reinforcement Learning
Scheduling Policy Design for Stochastic Non-preemptive Real-time Systems* Chris Gill Professor of Computer Science and Engineering Washington University,
Energy-Aware Resource Adaptation in Tessellation OS 3. Space-time Partitioning and Two-level Scheduling David Chou, Gage Eads Par Lab, CS Division, UC.
Decision Making Under Uncertainty CMSC 471 – Spring 2041 Class #25– Tuesday, April 29 R&N, material from Lise Getoor, Jean-Claude Latombe, and.
Department of Computer Science Undergraduate Events More
Markov Decision Process (MDP)
Engineering the Advanced Power Grid: Research Challenges and Tasks M. L. Crow, F. Liu, B. McMillin, D. Tauritz {crow, fliu, ff, University.
Smart Sleeping Policies for Wireless Sensor Networks Venu Veeravalli ECE Department & Coordinated Science Lab University of Illinois at Urbana-Champaign.
Department of Computer Science Undergraduate Events More
Markov Decision Processes AIMA: 17.1, 17.2 (excluding ), 17.3.
Md. Arafat Habib ( ) Supervisor: Dr. Muhidul Islam Khan
OPERATING SYSTEMS CS 3502 Fall 2017
CPU Scheduling CSSE 332 Operating Systems
Chapter 5a: CPU Scheduling
Making complex decisions
Scalable Scheduling Policy Design for Open Soft Real-Time Systems*
Professor Arne Thesen, University of Wisconsin-Madison
Scheduling Design and Verification for Open Soft Real-time Systems
Markov Decision Processes
Optimizing Expected Time Utility in Cyber-Physical Systems Schedulers
Chris Gill Associate Professor
Markov Decision Processes
 Real-Time Scheduling via Reinforcement Learning
 Real-Time Scheduling via Reinforcement Learning
Reinforcement Learning Dealing with Partial Observability
Further Topics on Random Variables: Derived Distributions
Further Topics on Random Variables: Derived Distributions
Further Topics on Random Variables: Derived Distributions
Intelligent Systems (AI-2) Computer Science cpsc422, Lecture 3
Presentation transcript:

Scheduling for Reliable Execution in Autonomic Systems* Terry Tidwell, Robert Glaubius, Christopher Gill, and William D. Smart {ttidwell, rlg1, cdgill, Department of Computer Science and Engineering Washington University, St. Louis, MO, USA 5 th International Conference on Autonomic and Trusted Computing (ATC-08) June 23-25, 2008, Oslo, Norway *Research supported in part by NSF awards CNS ( Cybertrust ) and CCF (CAREER)

2 - Gill et al. – 10/4/2015 Motivation: Autonomic Systems Interact with variable environment »Varying degrees of autonomy »Performance is deadline sensitive Many activities must run at once »Device interrupt handing, computation »Comm w/ other systems/operators Need reliable activity execution »Scheduling with shared resources and competing, variable execution times »How to guarantee utilizations? Remote Operator Station (for all but full autonomy) Wireless Communication Example Autonomic Systems: (1) Self-Maintaining Clusters, (2) Lewis (WUSTL M&M Lab)

3 - Gill et al. – 10/4/2015 System Model Threads of execution run on a shared resource »Require mutually exclusive access (e.g., to a CPU) to run Each thread binds the resource when it runs »A thread binds resource for a duration then releases it »Modeled using discrete variables that count time quanta Variable execution times with known distributions »We assume that each thread’s run-time distribution is known and bounded, and independent of the others Non-preemptive scheduler (repeats perpetually) »Scheduler chooses which thread to run (based on policy) »Scheduler dispatches thread which runs until it yields »Scheduler waits until the thread releases the resource

4 - Gill et al. – 10/4/2015 Scheduling Policy Design Considerations time probability time probability We summarize system state as a vector of integers »Representing thread utilizations Threads’ run times come from known, bounded distributions Scheduling a thread changes the system state »Utilization changes after the thread runs based on its run time »State transition probabilities are based the run time distributions This forms a basis for policy design and optimization

5 - Gill et al. – 10/4/2015 From Run Times to a Scheduling MDP We model thread scheduling decisions as a Markov Decision Process (MDP) based on thread run times The MDP is given by 4-tuple: (X,A,R,T) X: the set of process states Correspond to thread utilization states A: the set of actions I.e., scheduling a particular thread R: reward function for taking an action in a state Expected utility of taking that action Distance of the next state(s) from a desired utilization (vector) T: transition function Encodes the probability of moving from one state to another state for each action Solve MDP: optimal (per accumulated reward) policy

6 - Gill et al. – 10/4/2015 Bounding the Utilization State Space To bound the state space, we used a system termination notion in our initial approach Produces absorbing states where utilization stays same E.g., 0,3 and 1,2 etc. Drawbacks Artifacts, limited horizon Recent advances now allow us to remove this restriction See the project web site (URL given at the end of this talk) The optimal policy differed from our naïve expectations (next 2 slides)

7 - Gill et al. – 10/4/2015 Generated Scheduling Policy Example Policy (top figure) is obtained from distributions of thread run times & target utilization vector Horizontal axis: thread 1 util. Vertical axis: thread 2 util. Dark gray: schedule thread 1 Moves state horizontally, to right Light gray: schedule thread 2 Moves state vertically, upward Notice darker ray in the middle Shows desired target utilization A vector in the number of threads At high level looks like what we’d expect

8 - Gill et al. – 10/4/2015 Scheduling Policy Artifacts Near the origin (top left) Dark gray region overlaps the target utilization ray Due to thread 1 distribution being shifted more toward 0 More likely to land nearer target utilization if thread 1 is scheduled Near the horizon (top right) Dark gray region first bulges out… Due to low variance for thread 1 …, and then converges back to ray Due to absorbing state proximity

9 - Gill et al. – 10/4/2015 Verification State Space We can also generate a verification state space A verification state (box) combines utilization state (circle) subsets reachable on a scheduling action Transitions condensed from the utilization state space Note that verification states also often overlap E.g., utilization state 2,1 is in two verification states

10 - Gill et al. – 10/4/2015 Verification State Space Size and Cost State space exponential in the number of threads and in the history size (from termination time) Scheduling reduces cost but only delays explosion Work to reduce is ongoing

11 - Gill et al. – 10/4/2015 Related Work Reference monitor approaches Interposition architectures E.g., Ostia: user/kernel-level (Garfinkel et al.) Separation kernels E.g., ARINC-653, MILS (Vanfleet et al.) Scheduling policy design Hierarchical scheduling E.g., HLS and its extensions (Regehr et al.) E.g., Group scheduling (Niehaus et al.) Quasi-cyclic state space reduction E.g., Bogor (Robby et al.)

12 - Gill et al. – 10/4/2015 Concluding Remarks MDP approach maintains rational scheduling control Even when thread run times vary stochastically Encodes rather than presupposes utilizations Allows policy verification over utilization states Ongoing and Future Work State space reduction via quasi-cyclic structure Verification over continuous/discrete states Kernel-level non-bypassable policy enforcement Automated learning to discover scheduling MDPs Project web page Supported by NSF grant CNS