Results 1 - 10
of
213
Job Scheduling in Multiprogrammed Parallel Systems
, 1997
"... Scheduling in the context of parallel systems is often thought of in terms of assigning tasks in a program to processors, so as to minimize the makespan. This formulation assumes that the processors are dedicated to the program in question. But when the parallel system is shared by a number of us ..."
Abstract
-
Cited by 145 (15 self)
- Add to MetaCart
Scheduling in the context of parallel systems is often thought of in terms of assigning tasks in a program to processors, so as to minimize the makespan. This formulation assumes that the processors are dedicated to the program in question. But when the parallel system is shared by a number of users, this is not necessarily the case. In the context of multiprogrammed parallel machines, scheduling refers to the execution of threads from competing programs. This is an operating system issue, involved with resource allocation, not a program development issue. Scheduling schemes for multiprogrammed parallel systems can be classified as one or two leveled. Single-level scheduling combines the allocation of processing power with the decision of which thread will use it. Two level scheduling decouples the two issues: first, processors are allocated to the job, and then the job's threads are scheduled using this pool of processors. The processors of a parallel system can be shared i...
Consensus and cooperation in networked multi-agent systems
- Proceedings of the IEEE
"... Summary. This paper provides a theoretical framework for analysis of consensus algorithms for multi-agent networked systems with an emphasis on the role of directed information flow, robustness to changes in network topology due to link/node failures, time-delays, and performance guarantees. An over ..."
Abstract
-
Cited by 111 (1 self)
- Add to MetaCart
Summary. This paper provides a theoretical framework for analysis of consensus algorithms for multi-agent networked systems with an emphasis on the role of directed information flow, robustness to changes in network topology due to link/node failures, time-delays, and performance guarantees. An overview of basic concepts of information consensus in networks and methods of convergence and performance analysis for the algorithms are provided. Our analysis framework is based on tools from matrix theory, algebraic graph theory, and control theory. We discuss the connections between consensus problems in networked dynamic systems and diverse applications including synchronization of coupled oscillators, flocking, formation control, fast consensus in small-world networks, Markov processes and gossip-based algorithms, load balancing in networks, rendezvous in space, distributed sensor fusion in sensor networks, and belief propagation. We establish direct connections between spectral and structural properties of complex networks and the speed of information diffusion of consensus algorithms. A brief introduction is provided on networked systems with nonlocal information flow that are considerably faster than distributed systems with latticetype nearest neighbor interactions. Simulation results are presented that demonstrate the role of small-world effects on the speed of consensus algorithms and cooperative control of multi-vehicle formations.
Parallel Dynamic Graph Partitioning for Adaptive Unstructured Meshes
, 1997
"... this paper we describe such a parallel optimization technique ..."
Abstract
-
Cited by 71 (18 self)
- Add to MetaCart
this paper we describe such a parallel optimization technique
Convergence in multiagent coordination, consensus, and flocking
- IN PROCEEDINGS OF THE JOINT 44TH IEEE CONFERENCE ON DECISION AND CONTROL AND EUROPEAN CONTROL CONFERENCE
, 2005
"... We discuss an old distributed algorithm for reaching consensus that has received a fair amount of recent attention. In this algorithm, a number of agents exchange their values asynchronously and form weighted averages with (possibly outdated) values possessed by their neighbors. We overview existing ..."
Abstract
-
Cited by 71 (7 self)
- Add to MetaCart
We discuss an old distributed algorithm for reaching consensus that has received a fair amount of recent attention. In this algorithm, a number of agents exchange their values asynchronously and form weighted averages with (possibly outdated) values possessed by their neighbors. We overview existing convergence results, and establish some new ones, for the case of unbounded intercommunication intervals.
A scheme for robust distributed sensor fusion based on average consensus
- Proceedings of the International Conference on Information Processing in Sensor Networks (IPSN
, 2005
"... Abstract — We consider a network of distributed sensors, where each sensor takes a linear measurement of some unknown parameters, corrupted by independent Gaussian noises. We propose a simple distributed iterative scheme, based on distributed average consensus in the network, to compute the maximum- ..."
Abstract
-
Cited by 69 (2 self)
- Add to MetaCart
Abstract — We consider a network of distributed sensors, where each sensor takes a linear measurement of some unknown parameters, corrupted by independent Gaussian noises. We propose a simple distributed iterative scheme, based on distributed average consensus in the network, to compute the maximum-likelihood estimate of the parameters. This scheme doesn’t involve explicit point-to-point message passing or routing; instead, it diffuses information across the network by updating each node’s data with a weighted average of its neighbors ’ data (they maintain the same data structure). At each step, every node can compute a local weighted least-squares estimate, which converges to the global maximum-likelihood solution. This scheme is robust to unreliable communication links. We show that it works in a network with dynamically changing topology, provided that the infinitely occurring communication graphs are jointly connected. I.
A Practical Approach to Dynamic Load Balancing
, 1995
"... algorithm for load balancing. The following sections elaborate on each step in the above algorithm, presenting various design decisions that one encounters. 2.1 Load Evaluation The efficacy of any load balancing scheme is directly dependent on the quality of load evaluation. Good load measurement i ..."
Abstract
-
Cited by 64 (7 self)
- Add to MetaCart
algorithm for load balancing. The following sections elaborate on each step in the above algorithm, presenting various design decisions that one encounters. 2.1 Load Evaluation The efficacy of any load balancing scheme is directly dependent on the quality of load evaluation. Good load measurement is necessary both to determine that a load imbalance exists and to calculate how much work should be transferred to alleviate that imbalance. One can determine the load associated with a given task analytically, empirically or by a combination of those two methods. 6 CHAPTER 2. METHODOLOGY 2.1.1 Analytic Load Evaluation The load for a task is estimated based on knowledge of the time complexity of the algorithm(s) that task is executing along with the data structures on which it is operating. For example, if one knew that a task involved merge sorting a list of 64 elements, one might estimate the load to be 384, since merge sort is an O(N log 2 N) sorting algorithm, and since 64 log 2 (64) ...
Multilevel Diffusion Schemes for Repartitioning of Adaptive Meshes
- JOURNAL OF PARALLEL AND DISTRIBUTED COMPUTING
, 1997
"... For a large class of irregular mesh applications, the structure of the mesh changes from one phase of the computation to the next. Eventually, as the mesh evolves, the adapted mesh has to be repartitioned to ensure good load balance. If this new graph is partitioned from scratch, it may lead to an ..."
Abstract
-
Cited by 56 (7 self)
- Add to MetaCart
For a large class of irregular mesh applications, the structure of the mesh changes from one phase of the computation to the next. Eventually, as the mesh evolves, the adapted mesh has to be repartitioned to ensure good load balance. If this new graph is partitioned from scratch, it may lead to an excessive migration of data among processors. In this paper, we present schemes for computing repartitionings of adaptively refined meshes that perform diffusion of
Global clock synchronization in sensor networks
- IEEE Transactions on Computers
"... Abstract—Global synchronization is important for many sensor network applications that require precise mapping of collected sensor data with the time of the events, for example, in tracking and surveillance. It also plays an important role in energy conservation in MAC layer protocols. This paper de ..."
Abstract
-
Cited by 54 (1 self)
- Add to MetaCart
Abstract—Global synchronization is important for many sensor network applications that require precise mapping of collected sensor data with the time of the events, for example, in tracking and surveillance. It also plays an important role in energy conservation in MAC layer protocols. This paper describes four methods to achieve global synchronization in a sensor network: a node-based approach, a hierarchical cluster-based method, a diffusion-based method, and a fault-tolerant diffusion-based method. The diffusion-based protocol is fully localized. We present two implementations of the diffusion-based protocol for synchronous and asynchronous systems and prove its convergence. Finally, we show that, by imposing some constraints on the sensor network, global clock synchronization can be achieved in the presence of malicious nodes that exhibit Byzantine failures. Index Terms—Sensor networks, fault tolerance. æ
Distributed average consensus with least-mean-square deviation
- Journal of Parallel and Distributed Computing
, 2005
"... We consider a stochastic model for distributed average consensus, which arises in applications such as load balancing for parallel processors, distributed coordination of mobile autonomous agents, and network synchronization. In this model, each node updates its local variable with a weighted averag ..."
Abstract
-
Cited by 52 (4 self)
- Add to MetaCart
We consider a stochastic model for distributed average consensus, which arises in applications such as load balancing for parallel processors, distributed coordination of mobile autonomous agents, and network synchronization. In this model, each node updates its local variable with a weighted average of its neighbors ’ values, and each new value is corrupted by an additive noise with zero mean. The quality of consensus can be measured by the total mean-square deviation of the individual variables from their average, which converges to a steady-state value. We consider the problem of finding the (symmetric) edge weights that result in the least mean-square deviation in steady state. We show that this problem can be cast as a convex optimization problem, so the global solution can be found efficiently. We describe some computational methods for solving this problem, and compare the weights and the mean-square deviations obtained by this method and several other weight design methods.
Design Patterns from Biology for Distributed Computing
- IN ACM TRANSACTIONS ON AUTONOMOUS AND ADAPTIVE SYSTEMS
, 2006
"... Recent developments in information technology have brought about important changes in distributed computing. New environments have emerged such as massively large-scale wide area computer networks and mobile ad hoc networks. These new environments are extremely dynamic, unreliable and often large-sc ..."
Abstract
-
Cited by 49 (7 self)
- Add to MetaCart
Recent developments in information technology have brought about important changes in distributed computing. New environments have emerged such as massively large-scale wide area computer networks and mobile ad hoc networks. These new environments are extremely dynamic, unreliable and often large-scale. Traditional approaches to designing distributed applications based on central control, small scale or strict reliability assumptions are not suitable for exploiting the enormous potential of these environments. Based on the observation that living organisms efficiently organize a large number of unreliable and dynamically changing components (cells, molecules, individuals of a population, etc) it has long been an interesting area of research to try to figure out what are the key ideas that make biological systems work and to apply these ideas in distributed systems engineering. In this paper we propose a conceptual framework that captures a few basic biological processes such as plain diffusion, reaction-diffusion, proliferation, etc. We show through examples how to implement practically relevant functions based on these ideas. Using a common evaluation methodology, we show that these applications have state-of-the-art effectivity and performance while they inherit some nice properties of biological systems, such as adaptivity and robustness to failure.

