Presentation is loading. Please wait.

Presentation is loading. Please wait.

Standards and Patterns for Dynamic Resource Management

Similar presentations


Presentation on theme: "Standards and Patterns for Dynamic Resource Management"— Presentation transcript:

1 Standards and Patterns for Dynamic Resource Management
Lonnie R. Welch Center for Intelligent, Distributed and Dependable Systems School of EECS Ohio University

2 Overview solution patterns for common problems
typically, at least three solutions exist a solid basis for standardization

3 The Common Problems Characterizing the system and its requirements
Monitoring system performance Allocating resources to meet objectives

4 Characterizing a System
Hardware profiling Characterizing a system and its requirements Software profiling Specification

5 Hardware Profile Knowledge of the host resource performance abilities is needed Heterogeneous hardware platforms Need a means for normalizing performance abilities

6 Hardware Profile SPEC: benchmark and metrics for evaluation of computers 18 different programs measure CPU, memory and compiler SPECint: a measure of a host's fixed point performance SPECfp: a measure of a host's floating point performance Normalization: compare to a reference host SPEC_RATE(Hi) = AVG(SPECint(Hi)/ Max(SPECin(Hj), SPECfp(Hi)/Max(SPECfp(Hj)))

7 Software Profile A dynamic real-time system may process varying amounts of data Ensuring that dynamic real-time system requirements are met is a difficult task if there is no way to determine the amount of processing, memory and communication required to operate in a particular environmental context Resource usage patterns at various workloads should be characterized to enable effective online allocation analysis

8 Software Profile Y. Zhou, L.R. Welch, E. Huh, et al., "Execution Time Analysis for Dynamic, Periodic Processes," Proc. 9th Workshop on Parallel and Distributed Real-Time Systems (WPDRTS), April 2001.

9 System Specification To derive a feasible allocation of a DRTS to resources, it is necessary to understand the characteristics of the resources the characteristics of the DRTS the constraints and objectives How are these features described? The descriptions should be factored out from the components, to facilitate easy modification

10 System Specification PATH Sensing { Connectivity{…}
Type…; // periodic, event-driven, hybrid. Criticality 5; // RealTimeQoS{…} Scalability{…} DATASTREAM{…} } // end PATH sensing

11 The Common Problems Characterizing the system and its requirements
Monitoring system performance Allocating resources to meet objectives

12 Monitoring QoS information monitoring QoS information reporting
Resource monitoring Allocation policing

13 QoS Information Reporter
The resource needs of a DRTS change during execution Also, the real-time performance of a DRTS can vary How does an application make its resource needs and QoS-relevant performance metrics known?

14 QoS Information Reporter
Provides methods for gathering and communicating the following: CPU utilization communication needs memory usage the amount of time taken to handle one activation the workload

15 QoS Information Reporter
S.Brandt, et al., “A dynamic quality of service middleware agent for mediating application resource usage,” Proc. 19th IEEE Real-Time Systems Symposium, 307–317, IEEE Computer Society, Los Alamitos, CA, 1998.

16 QoS Monitor Gather and analyze info. regarding QoS and workload
Aggregate process-level events into a single QoS metric Determine when to adapt the resource allocation

17 QoS Monitor F. Jahanian, “Run-Time Monitoring of Real-Time Systems,” Advances in Real-Time Systems, Prentice-Hall, Inc., Englewood Cliffs, New Jersey, 1995.

18 Resource Monitor Determine the status and utilization of the resources
Track the historical utilization values and trends Provide aggregate load indices (e.g., host load index) Enables evaluation of current and proposed allocations

19 Real-Time Applications
Resource Monitor Real-Time Applications instr RM-SPEC S/W & H/W QoS Managers Resource requests negotiations Resource Allocations Resource Managers instr ctrl ctrl instr Compute. h/w Comm. h/w

20 Allocation Policer Reduce the number of violations via proactive analysis Determine when analysis should be performed Proactively trigger reallocation of resources Determine if a DRTS is likely to violate any of its QoS constraints if feasibility analysis should be activated if instability is occurring if current allocation can be improved significantly

21 Allocation Policer analysis policing monitoring
Flow diagram for an Allocation Policer. E. Huh and L.R. Welch, “Toward Schedulability Analysis for Dynamic Real-Time Systems,” IEEE Real-Time Technology and Applications Symposium – WIP, June 2000.

22 The Common Problems Characterizing the system and its requirements
Monitoring system performance Allocating resources to meet objectives

23 Allocating Resources Enact Optimize Allocation Analyze Feasibility
Estimate Performance

24 Performance Estimator
Determine what the real-time performance will be when a particular allocation is enacted Analytically determine the real-time performance of distributed systems that contend for resources Use the Hardware and Software Profiles, the QoS and Resource Monitor, and the System Specification

25 Performance Estimator
Predict the real-time QoS by modeling CPU contention pred(ai, tl, Ht) = Cpred(ai, tl, Ht) + Dpred(ai, tl, Ht) Cpred(ai,tl,Ht) = Cprof(ai,tl,Hk)*SPEC_RATE(Hk)/SPEC_RATE(Ht) Dpred(ai, tl, Ht) = Cpred(ai, tl, Ht) * CUP(Ht,t) / Trate

26 Performance Estimator
Response time predictions for a filtering application. E. Huh, A. Neelamegam, L. Welch, H. Park and B. Pfarr “Worst-Case Analysis for Real-Time Processes in Time-Sharing Environments,” Journal of Parallel and Distributed Computing Practices, to appear.

27 Feasibility Analyzer Find allocations that meet real-time constraints
Predicted response time, Application requirement <application>, <host> 1 Predict Response Time 2 Check Schedulability Schedulability Analysis result Resource Manager Find allocations that meet real-time constraints pred(ai) /  req(ai)  1, i Requires the Latency Estimation and the System Specification patterns

28 Allocation Optimizer Find an allocation such that all applications can be scheduled feasibly and it is optimal Objectives include load balancing, maximization of slack, and optimization of utility

29 Allocation Optimizer

30 Allocation Enactor Provide a means of executing resource allocation decisions Examples include: Process migration Process replication Adjustment of algorithm fidelity Route selection Resource reservation

31 Real-Time Applications
Allocation Enactor Real-Time Applications instr RM-SPEC S/W & H/W QoS Managers Resource requests negotiations Resource Allocations Resource Managers instr ctrl ctrl instr Compute. h/w Comm. h/w

32 Needed Standards System characterization Monitoring Allocation


Download ppt "Standards and Patterns for Dynamic Resource Management"

Similar presentations


Ads by Google