1492870
Dynamic Resource Allocation Heuristics for Maximizing Robustness with an Overall Makespan Constraint in an Uncertain Environment
Heterogeneous parallel and distributed computing systems may operate in an environment where certain system performance features degrade due to unpredictable circumstances. Robustness can be defined as the degree to which a system can function correctly in the presence of parameter values different from those assumed. This work uses a mathematic expression of robustness for a dynamic environment where task execution time estimates are known to contain errors. Several heuristic solutions to the problem are presented that utilize this expression of robustness to influence mapping decisions. These solutions are then compared to a bound on the highest attainable robustness of the described system.
1598637
Dynamic resource management heuristics for minimizing makespan while maintaining an acceptable level of robustness in an uncertain environment
Heterogeneous parallel and distributed computing systems may operate in an environment where certain system performance features degrade due to unpredictable circumstances. Robustness can be defined as the degree to which a system can function correctly in the presence of parameter values different from those assumed. This paper presents a mathematical model for quantifying robustness in a dynamic environment where task execution times estimates are known to contain errors. This research proposes, evaluates, and compares ten different dynamic heuristics for their ability to maintain or maximize the proposed dynamic robustness metric in an uncertain environment. In addition, the makespan results of the proposed heuristics are compared to a lower bound
3042095
Measuring the Robustness of Resource Allocations in a Stochastic Dynamic Environment
Heterogeneous distributed computing systems often must operate in an environment where system parameters are subject to uncertainty. Robustness can be defined as the degree to which a system can function correctly in the presence of parameter values different from those assumed. We present a methodology for quantifying the robustness of resource allocations in a dynamic environment where task execution times are stochastic. The methodology is evaluated through measuring the robustness of three different resource allocation heuristics within the context of a stochastic dynamic environment. A Bayesian regression model is fit to the combined results of the three heuristics to demonstrate the correlation between the stochastic robustness metric and the presented performance metric. The correlation results demonstrated the significant potential of the stochastic robustness metric to predict the relative performance of the three heuristics given a common objective function.
7544123
Models and Heuristics for Robust Resource Allocation in Parallel and Distributed Computing Systems
This is an overview of the robust resource allocation research efforts that have been and continue to be conducted by the CSU robustness in computer systems group. Parallel and distributed computing systems, consisting of a (usually heterogeneous) set of machines and networks, frequently operate in environments where delivered performance degrades due to unpredictable circumstances. Such unpredictability can be the result of sudden machine failures, increases in system load, or errors caused by inaccurate initial estimation. The research into developing models and heuristics for parallel and distributed computing systems that create robust resource allocations is presented.
13294756
Mapping subtasks with multiple versions on an ad hoc grid
An ad hoc grid is a heterogeneous computing system composed of mobile devices. Each computing resource is constrained in battery energy. The problem being studied is to assign statically computing resources to the subtasks of an application that has an execution time constraint, when the resources are oversubscribed. All subtasks must be executed; to accommodate this in an oversubscribed environment, each subtask has two versions: the primary or full version, and the secondary or degraded version. The secondary version utilizes only 10% of the resources that the primary version requires, and produces only 10% of the data output for the subsequent children subtasks. Thus, the degraded version (secondary version) represents a reduced capability of lesser overall value, while consuming fewer resources. The goal is to assign resources so that the application meets an execution time constraint and the battery energy constraint while minimizing the number of degraded versions used. Five resource allocation heuristics to derive near-optimal solutions to this problem are presented, evaluated, and compared.
11001529
A Stochastic Approach to Measuring the Robustness of Resource Allocations in Distributed Systems
Often, parallel and distributed computing systems must operate in an environment replete with uncertainty. Determining a resource allocation that accounts for this uncertainty in a way that can provide a probabilistic guarantee that a given level of quality of service (QoS) is achieved is an important research problem. This paper defines a stochastic methodology for quantifiably determining a resource allocation's ability to satisfy QoS constraints in the midst of uncertainty in system parameters. Uncertainty in system parameters and its impact on system performance are modeled stochastically. This stochastic model is then used to derive a quantitative expression for the robustness of a resource allocation. The paper investigates the utility of the proposed stochastic robustness metric by applying the metric to resource allocations in a simulated distributed system. The simulation results are then compared with deterministically defined metrics from the literature
37610017
Validated Cost Models for Parallel OQL Query Processing
Query cost models are widely used, both for performance analysis and for comparing execution plans during query optimisation. In essence, a cost modelp redicts where time is being spent during query evaluation. Although many cost models have been proposed, for serial, parallel and distributed database systems, surprisingly few of these have been validated against real systems. This paper presents cost models for the parallel evaluation of ODMG OQL queries, which have been compared with experimental results obtained using the Polar object database system. The paper describes the validation of the cost model for a collection of queries, using three join algorithms over the OO7 benchmark database. The results show that the cost model generally both ranks alternative plans appropriately, and gives a useful indication of the response times that can be expected from a plan. The paper also illustrates the application of the cost model by highlighting the contributions of different features and operations to query response times.
952506
ID Modulation: Embedding Sensor Data in an RFID Timeseries
This paper reports the first use of ID Modulation to embed a bitstream representing sensor information in a standards-compliant Radio Frequency Identification (RFID) channel. Like other forms of information hiding, ID Modulation embeds a new, lower bit-rate channel in a pre-existing host channel, without requiring any changes to the protocols defining the host channel. Like most other forms of information hiding, the embedded data is represented as correlations introduced into the host channel data stream. Most previous applications of information hiding have emphasized either secrecy (as in steganography) or robustness to removal (as in watermarking). The benefit of information hiding that is most important for the application reported here is backward compatibility with pre-existing standards and hardware. It has allowed us to build a new communication layer (for transmitting sensor data) on top of current RFID infrastructure.
18173287
Performance of Fault-Tolerant Data and Compute Intensive Programs over a Network of Workstations
A well-known structuring technique for a wide class of parallel applications is the bag of tasks, which allows a computation to be partitioned dynamically between a collection of concurrent processes. This paper describes a fault-tolerant implementation of this structure using atomic actions (atomic transactions) to operate on persistent objects, which are accessed in a distributed setting via a Remote Procedure Call (RPC). The system developed is suited to parallel execution of data and compute intensive programs that require persistent storage and fault tolerance facilities. The suitability of the system is examined in the context of the measured performance of three specific applications; ray tracing, matrix multiplication and Cholesky factorisation. The measured performance compares well with that predicted by analysis of the applications based on benchmark measurement of hardware parameters. The same analysis allows modelling of hardware upgrades.
9694445
The architecture and implementation of a distributed hypermedia storage system
Our project is studying the process by which groups of individuals work together to build large, complex structures of ideas and is developing a distributed hypermedia collaboration environment (called ABC) to support that process. This paper focuses on the architecture and implementation of the Distributed Graph Storage (DGS) component of ABC. The DGS supports a graph-based data model, conservatively extended to meet hypermedia requirements. Some important issues addressed in the system include scale, performance, concurrency semantics, access protection, location independence, and replication (for fault tolerance).
5328327
Fault-tolerant parallel applications using queues and actions
There are many techniques supporting execution of large computations over a network of workstations (NOW) but data intensive computations are usually run on high performance parallel machines. A NOW comprising individual user's machines typically has a low performance interconnect and suffers arbitrary changes of availability. Exploiting such resources to execute data intensive computations is difficult but even in a more constrained environment there is an unfulfilled need for fault-tolerance. The structuring approach presented fulfills this need. Performance exceeding 100 Mflop/s is demonstrated for large fault-tolerant out of core examples of matrix multiplication and Cholesky factorisation using five 133 MHz Pentium compute machines.