Dynamic Mapping of Activation Trees Thesis Proposal January 29, 1998 Peter A. Dinda Committee David O’Hallaron (chair) Thomas Gross Peter Steenkiste Jaspal.

Slides:



Advertisements
Similar presentations
Big Data + SDN SDN Abstractions. The Story Thus Far Different types of traffic in clusters Background Traffic – Bulk transfers – Control messages Active.
Advertisements

Conceptual Clustering
Resource Management §A resource can be a logical, such as a shared file, or physical, such as a CPU (a node of the distributed system). One of the functions.
Evaluating Heuristics for the Fixed-Predecessor Subproblem of Pm | prec, p j = 1 | C max.
Maximum Battery Life Routing to Support Ubiquitous Mobile Computing in Wireless Ad Hoc Networks By C. K. Toh.
A Prediction-based Real-time Scheduling Advisor Peter A. Dinda Carnegie Mellon University.
1 of 14 1 /23 Flexibility Driven Scheduling and Mapping for Distributed Real-Time Systems Paul Pop, Petru Eles, Zebo Peng Department of Computer and Information.
LOAD BALANCING IN A CENTRALIZED DISTRIBUTED SYSTEM BY ANILA JAGANNATHAM ELENA HARRIS.
An Evaluation of Linear Models for Host Load Prediction Peter A. Dinda David R. O’Hallaron Carnegie Mellon University.
Distributed Process Scheduling Summery Distributed Process Scheduling Summery BY:-Yonatan Negash.
Algorithm Strategies Nelson Padua-Perez Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
ITEC 451 Network Design and Analysis. 2 You will Learn: (1) Specifying performance requirements Evaluating design alternatives Comparing two or more systems.
1 Sensor Relocation in Mobile Sensor Networks Guiling Wang, Guohong Cao, Tom La Porta, and Wensheng Zhang Department of Computer Science & Engineering.
1 Stochastic Event Capture Using Mobile Sensors Subject to a Quality Metric Nabhendra Bisnik, Alhussein A. Abouzeid, and Volkan Isler Rensselaer Polytechnic.
The Case For Prediction-based Best-effort Real-time Peter A. Dinda Bruce Lowekamp Loukas F. Kallivokas David R. O’Hallaron Carnegie Mellon University.
Towards Feasibility Region Calculus: An End-to-end Schedulability Analysis of Real- Time Multistage Execution William Hawkins and Tarek Abdelzaher Presented.
1 Virtual Machine Resource Monitoring and Networking of Virtual Machines Ananth I. Sundararaj Department of Computer Science Northwestern University July.
Host Load Trace Replay Peter A. Dinda Thesis Seminar 11/23/98.
Project 4 U-Pick – A Project of Your Own Design Proposal Due: April 14 th (earlier ok) Project Due: April 25 th.
Modeling Host Load Peter A. Dinda Thesis Seminar 2/9/98.
Responsive Interactive Applications by Dynamic Mapping of Activation Trees February 20, 1998 Peter A. Dinda School of Computer.
Understanding and Predicting Host Load Peter A. Dinda Carnegie Mellon University
Lecture 5 (Classification with Decision Trees)
High Performance Computing 1 Parallelization Strategies and Load Balancing Some material borrowed from lectures of J. Demmel, UC Berkeley.
An Optimization Problem in Adaptive Virtual Environments Ananth I. Sundararaj Manan Sanghi Jack R. Lange Peter A. Dinda Prescience Lab Department of Computer.
1 Dong Lu, Peter A. Dinda Prescience Laboratory Computer Science Department Northwestern University Virtualized.
Machine Learning as Applied to Intrusion Detection By Christine Fossaceca.
Introduction : ‘Skoll: Distributed Continuous Quality Assurance’ Morimichi Nishigaki.
Backtracking.
1 of 14 1 / 18 An Approach to Incremental Design of Distributed Embedded Systems Paul Pop, Petru Eles, Traian Pop, Zebo Peng Department of Computer and.
A Prediction-based Real-time Scheduling Advisor Peter A. Dinda Prescience Lab Department of Computer Science Northwestern University
Load Analysis and Prediction for Responsive Interactive Applications Peter A. Dinda David R. O’Hallaron Carnegie Mellon University.
A Tool for Describing and Evaluating Hierarchical Real-Time Bus Scheduling Policies Author: Trevor Meyerowitz, Claudio Pinello, Alberto DAC2003, June 24,2003.
Realistic CPU Workloads Through Host Load Trace Playback Peter A. Dinda David R. O’Hallaron Carnegie Mellon University.
Ekrem Kocaguneli 11/29/2010. Introduction CLISSPE and its background Application to be Modeled Steps of the Model Assessment of Performance Interpretation.
Dynamic and Decentralized Approaches for Optimal Allocation of Multiple Resources in Virtualized Data Centers Wei Chen, Samuel Hargrove, Heh Miao, Liang.
PIC: Practical Internet Coordinates for Distance Estimation Manuel Costa joint work with Miguel Castro, Ant Rowstron, Peter Key Microsoft Research Cambridge.
Predicting performance of applications and infrastructures Tania Lorido 27th May 2011.
Task Scheduling By Dr. Amin Danial Asham.
Module 4: Planning, Optimizing, and Troubleshooting DHCP
Bug Localization with Machine Learning Techniques Wujie Zheng
A Framework for Elastic Execution of Existing MPI Programs Aarthi Raveendran Graduate Student Department Of CSE 1.
Towards Low Overhead Provenance Tracking in Near Real-Time Stream Filtering Nithya N. Vijayakumar, Beth Plale DDE Lab, Indiana University {nvijayak,
Dynamic Load Balancing in Charm++ Abhinav S Bhatele Parallel Programming Lab, UIUC.
Load-Balancing Routing in Multichannel Hybrid Wireless Networks With Single Network Interface So, J.; Vaidya, N. H.; Vehicular Technology, IEEE Transactions.
1 Virtual Patrol : A New Power Conservation Design for Surveillance Using Sensor Networks Prasant Mohapatra, Chao Gui Computer Science Dept. Univ. California,
October, 2000.A Self Organsing NN for Job Scheduling in Distributed Systems I.C. Legrand1 Iosif C. Legrand CALTECH.
Intradomain Traffic Engineering By Behzad Akbari These slides are based in part upon slides of J. Rexford (Princeton university)
A Software Framework for Distributed Services Michael M. McKerns and Michael A.G. Aivazis California Institute of Technology, Pasadena, CA Introduction.
CS 484 Load Balancing. Goal: All processors working all the time Efficiency of 1 Distribute the load (work) to meet the goal Two types of load balancing.
Static Process Scheduling
A Generalized Architecture for Bookmark and Replay Techniques Thesis Proposal By Napassaporn Likhitsajjakul.
Lecture Notes for Chapter 4 Introduction to Data Mining
Scalable and Topology-Aware Load Balancers in Charm++ Amit Sharma Parallel Programming Lab, UIUC.
Self-stabilizing energy-efficient multicast for MANETs.
@ Carnegie Mellon Databases 1 Finding Frequent Items in Distributed Data Streams Amit Manjhi V. Shkapenyuk, K. Dhamdhere, C. Olston Carnegie Mellon University.
Parallel Programming in Chess Simulations Part 2 Tyler Patton.
Gantenbein & Sung CAINE Task Scheduling in Distributed Data Mining for Medical Applications Rex E. Gantenbein, University of Wyoming, Laramie WY.
Rule Induction for Classification Using
ITEC 451 Network Design and Analysis
Lei Chen and Wendi B. Heinzelman , University of Rochester
On-Time Network On-chip
Parallel Programming in C with MPI and OpenMP
Provision of Multimedia Services in based Networks
Ananth I. Sundararaj Ashish Gupta Peter A. Dinda Prescience Lab
Networked Real-Time Systems: Routing and Scheduling
Dynamic Mapping of Activation Trees Thesis Proposal January 29, 1998
Javad Ghaderi, Tianxiong Ji and R. Srikant
An Optimization Problem in Adaptive Virtual Environments
Parallel Programming in C with MPI and OpenMP
Presentation transcript:

Dynamic Mapping of Activation Trees Thesis Proposal January 29, 1998 Peter A. Dinda Committee David O’Hallaron (chair) Thomas Gross Peter Steenkiste Jaspal Subhlok David Bakken (BBN)

2 Outline Responsive interactive applications Best effort real-time service Dynamic mapping problem History-based prediction approach Other approaches and related work Current results on simplified problem Proposed thesis work

3 Interactive Application Model Aperiodic User Action Message Handler Feedback Activation tree mouse_click()

4 Acoustic Room Modeling Physical Simulation of Wave Eqn impulse responses Frequency response plots Room model Modify model Speakers

5 Other Applications Image editing –The Adobe Photoshop universe Computer aided design –Quake design optimization (Malcevic-97) Computational steering –CUMULUS (Geist-96), CAVE (Disz-95),... Collaboration –Collaborative Planning (Zinky-DUTC-95),... Securities trading –(Wolfe-Lau-95) Games –DIS (DIS-94)

6 Responsiveness Timely feedback to individual user actions –Bound: response time  t max Jitter bound and resource usage hint –Bound: response time  t min Example: image editor drawing tool

7 A Best Effort Real-time Service Execute the activation tree rooted at procedure() so that t min  t exec  t max No guarantees Responsiveness spec: bounds [t min,t max ] Performance metric: fraction of trees that meet their bounds MAP procedure() IN [t min, t max ]

8 Machine Model Hosts on a LAN –No centralized or coordinated scheduling, or reservations –Other unrelated traffic exists –We are only a user Remote execution facility –Can execute any procedure on any host –RPC, DSM, DCE, CORBA, DCOM,... Measurable - at least a good real-time clock exists (<1ms)

9 Execution Model Dynamically map nodes of the unfolding activation tree to the hosts At each procedure call, choose which host is best suited to execute the call in order to meet the bounds on the tree [t min,t max ]

10 Dynamic Mapping Problem How do we map the nodes of the trees to the hosts so that the fraction of trees that satisfy their bounds is maximized?

11 Aspects of My Approach History-based prediction Decomposition of bounds Adaptation of mapping algorithms during tree traversal

12 History-based Prediction For each host, H 0 predicts whether it can meet the bounds, based on past local history and then chooses one where it is possible Execution times include both communication for remote call and the actual computation H0H0 H1H1 H2H2 [t’ min,t’ max ] time, duration, bounds... time, duration, bounds... time, duration, bounds... foo() bar() H0H0 foo() is executing on H 0 and calls bar(), which can be mapped to H 0, H 1, or H 2 H 0 has a local history of execution times of bar() on each of the other hosts [t min,t max ]

13 Decomposition of Bounds Choice of [t’ min,t’ max ] for bar() depends on unvisited portion of the tree Collect history of what fraction of time spent in foo() subtree was spent in bar() subtree Choose fraction of bounds to give to bar() based on that history and current time [t min,t max ] [t’ min,t’ max ]? partially executed, known unexecuted, known unexecuted, unknown foo() bar()

14 Adaptation of Mapping Algorithms During Tree Traversal Tune strategy to how deep we are in the tree and how far along in the traversal Explore more aggresively early in the traversal, when the effect of a bad decision is easiest to overcome –Find interesting new hosts Spend less time making mapping decision deep in the tree –More likely to remain on single host

15 Thesis Statement Dynamic mapping of activation trees using history-based prediction and traversal-based adaptation is an effective way to build a best effort real-time service for responsive interactive applications running in conventional environments.

16 Other Approaches Distributed soft real-time system –System modifications Dynamic load balancing system –Different goals Even distribution of load (OS-centric) Minimization of exec times (app-centric) Resource reservation system –System modifications Shared measurement system –Information level and dissemination

17 Current Results Load trace collection and analysis Algorithms and evaluation for simplified dynamic mapping problem

18 Algorithms and Evaluation for Simplified Problem Map only leaf nodes Ignore communication for I=1 to N do MAP leaf_procedure() IN [t min,t max ] end

19 RangeCounter(W): A Near Optimal Algorithm Each host has a quality level Q and a window of the last W execution times (W is small) Choose host with highest quality level, and age quality levels of all hosts: Q=Q-1 If bounds are met, increase host’s quality level by the inverse of our confidence in it: If bounds are not met, reduce host’s quality level by half: Q=Q/2

20 Load Trace-based Simulation Exec time computed from load trace using a simple, validated model Mapping algorithms are given bounds, select a host, then are told exec time Simulator computes performance of –Algorithm under test –Optimal (precognizant) algorithm –Random mapping –Individual host mappings

21 Scope of Evaluation 9 mapping algorithms 6 different groups of hosts –Chosen from 39 hosts –1 week, 1 Hz load trace from each host 648 different cases –Combinations of nominal time and bounds 100,000 calls for each case

22

23

24

25

26 Proposed Work Extend simulation environment to include communication and activation trees Trace collection (Activation trees, network) »A trace for everything Trace characterization Simulator extension Develop algorithm Evaluate with benchmarks Incorporate into real system Extend current results to the full dynamic mapping problem

27 Activation Tree Traces Collect activation trees where each node is annotated with compute time, and what data it references Goal is to instrument off-the-shelf MS Windows programs Other options exist Contributions:Instrumentation tools/methodology, Activation tree trace database

28 Network Traces Realistic communication times Packet traces on Ethernet with tcpdump –Simple broadcast networks seem too limiting Remos Existing trace databases Contributions:Methodology, Trace database

29 Trace Characterization Classify traces into families, from which we can draw benchmarks for evaluation Ideally, parameterized models to fit data Characterizing activation tree traces most challenging Contributions:Trace analysis, Models, Classification scheme, Benchmark suite

30 Simulator Extension Extend my existing simulator to support arbitrary activation trees and realistic communication Communication time model Contributions:Simulator infrastructure for full dynamic mapping problem

31 Algorithm Development Use approaches described earlier Extend RangeCounter(W) with a separate algorithm to recursively divide bounds among subtrees Iterative development using simulator and benchmarks Contributions:Algorithm(s)

32 Evaluation Evaluate algorithm in simulation –Draw connections between benchmark characteristics and algorithm performance Compare with other approaches –Load monitor with simple heuristic –Greater degrees of information sharing Incorporate into distributed object system as proof of concept Contributions:Evaluation, Working system

33 Thesis Timeline