7889988
Crash recovery in client-server EXODUS
In this paper, we address the correctness and performance issues that arise when implementing logging and crash recovery in a page-server environment. The issues result from two characteristics of page-server systems: 1) the fact that data is modified and cached in client database buffers that are not accessible by the server, and 2) the performance and cost trade-offs that are inherent in a client-server environment. We describe a recovery system that we have implemented for the client-server version of the EXODUS storage manager. The implementation supports efficient buffer management policies, allows flexibility in the interaction between clients and the server, and reduces the server load by generating log records at clients. We also present a preliminary performance analysis of the implementation.
7064637
Challenges in Ubiquitous Data Management
Ubiquitous computing is a compelling vision for the future that is moving closer to realization at an accelerating pace. The combination of global wireless and wired connectivity along with increasingly small and powerful devices enables a wide array of new applications that will change the nature of computing. Beyond new devices and communications mechanisms, however, the key technology that is required to make ubiquitous computing a reality is data management. In this short paper, I attempt to identify and organize the key aspects of ubiquitous computing applications and environments from a data management perspective and outline the data management challenges that they engender. Finally, I describe two on-going projects: Data Recharging and Telegraph, that are addressing some of these issues.
10278200
Efficient Incremental Garbage Collection for Client-Server Object Database Systems
We briefly outline the main characteristics of an efficient server-based algorithm for garbage collecting object-oriented databases in a client-server environment. The algorithm is incremental and runs concurrently with client transactions. Unlike previous algorithms, it does not hold any locks on data and does not require callbacks to clients. It is fault tolerant, but performs very little logging. The algorithm has been designed to be integrated into existing OODB systems, and therefore it works with standard implementation techniques such as two-phase locking and write-ahead-logging. In addition, it supports client-server performance optimizations such as client caching and flexible management of client buffers. The algorithm has been implemented in the EXODUS storage manager before being evaluated.
29091466
Data Management for Pervasive Computing
• " … make a computer so imbedded, so fitting, so natural, that we use it without even thinking about it. " • " Ubiquitous (pervasive) computing is roughly the opposite of virtual reality. Where virtual reality puts people inside a computer-generated world, ubiquitous computing forces the computer to live out here in the world with people. " – Mark Weiser, Xerox PARC
14976201
A General Matrix Iterative Model for Dynamic Load Balancing
Abstract Many applications require some form of load balancing in order to obtain good performance on parallel computing systems. A number of load balancing algorithms have been proposed, and implemented on real systems. However, application developers are in need of a performance tool that compares and evaluates various balancing algorithms, and helps select the best algorithm for a given application and computing platform. In this paper, we propose a matrix iterative model that can represent a wide range of dynamic load balancing algorithms. The model captures the change in task distribution over the processors due to both the application imbalance and load balancing algorithm. We also define performance measures that capture the costs of executing the parallel application and load balancing algorithm on a given computing platform. The model and the performance measures are used to compare and evaluate various load balancing algorithms. In this paper, the model is parameterized to represent three load balancing algorithms — the random, diffusion and redistribution algorithms. Model predictions and experimental measurements are compared for the parallel N -body simulation application. This application is representative of a wide class of scientific applications where time-varying workload distributions are present. The model predictions are within 20% of measured values. The performance of the three algorithms are compared, and optimal algorithm parameters are derived showing how the model can be used to both select an algorithm and set its parameters.
20626063
One-dimensional optimization on multiprocessor systems
This paper presents a straightforward approach to determining how best to utilize an MIMD multiprocessor in the solution of one-dimensional optimization problems involving continuous unimodal functions and nongradient search techniques. A methodology is presented which allows one to consider a variety of speedup functions which may occur in parallel function and systems evaluation. It is shown how the best of two parallel optimization strategies can be determined for a given accuracy, number of processors, and speedup function.
6056089
Biosequence similarity search on the Mercury system
Biosequence similarity search is an important application in modern molecular biology. Search algorithms aim to identify sets of sequences whose extensional similarity suggests a common evolutionary origin or function. The most widely used similarity search tool for biosequences is BLAST, a program designed to compare query sequences to a database. Here, we present the design of BLASTN, the version of BLAST that searches DNA sequences, on the Mercury system, an architecture that supports high-volume, high-throughput data movement off a data store and into reconfigurable hardware. An important component of application deployment on the Mercury system is the functional decomposition of the application onto both the reconfigurable hardware and the traditional processor. Both the Mercury BLASTN application design and its performance analysis are described.
4770738
Parallel Simulated Annealing using Speculative Computation
A parallel simulated annealing algorithm that is problem-independent, maintains the serial decision sequence, and obtains speedup which can exceed log/sub 2/P on P processors is discussed. The algorithm achieves parallelism by using the concurrency technique of speculative computation. Implementation of the parallel algorithm on a hypercube multiprocessor and application to a task assignment problem are described. The simulated annealing solutions are shown to be, on average, 28% better than the solutions produced by a random task assignment algorithm and 2% better than the solutions produced by a heuristic. >
14708115
Distributed computing systems and checkpointing
This paper examines the performance of synchronous checkpointing in a distributed computing environment with and without load redistribution. Performance models are developed, and optimum checkpoint intervals are determined. The analysis extends earlier work by allowing for multiple nodes, state dependent checkpoint intervals, and a performance metric which is coupled with failure-free performance and the speedup functions associated with implementation of parallel algorithms. Expressions for the optimum checkpoint intervals for synchronous checkpointing with and without load redistribution are derived and the results are then used to determine when load redistribution is advantageous.<<ETX>>