Data structures and network algorithms
Data structures and network algorithms
Dynamic load balancing for distributed memory multiprocessors
Journal of Parallel and Distributed Computing
Introduction to algorithms
Fast parallel algorithms for short-range molecular dynamics
Journal of Computational Physics
Domain decomposition: parallel multilevel methods for elliptic partial differential equations
Domain decomposition: parallel multilevel methods for elliptic partial differential equations
Beyond the flow decomposition barrier
Journal of the ACM (JACM)
Efficient schemes for nearest neighbor load balancing
Parallel Computing - Special issue on parallelization techniques for numerical modelling
Diffusive load balancing schemes on heterogeneous networks
Proceedings of the twelfth annual ACM symposium on Parallel algorithms and architectures
Graph partitioning models for parallel computing
Parallel Computing - Special issue on graph partioning and parallel computing
Partitioning for Complex Objectives
IPDPS '01 Proceedings of the 15th International Parallel & Distributed Processing Symposium
Load Balancing in Parallel Molecular Dynamics
IRREGULAR '98 Proceedings of the 5th International Symposium on Solving Irregularly Structured Problems in Parallel
RSCTC'06 Proceedings of the 5th international conference on Rough Sets and Current Trends in Computing
Hi-index | 0.00 |
In many applications of parallel computing, distribution of the data unambiguously implies distribution of work among processors. But, there are exceptions where some tasks can be assigned to one of several processors without altering the total volume of communication. In this paper, we study the problem of exploiting this flexibility in assignment of tasks to improve load balance. We first model the problem in terms of network flow and use combinatorial techniques for its solution. Our parametric search algorithms use maximum flow algorithms for probing on a candidate optimal solution value. We describe two algorithms to solve the assignment problem with \log W_T and |P| probe calls, where W_T and |P|, respectively, denote the total workload and number of processors. We also define augmenting paths and cuts for this problem, and show that any algorithm based on augmenting paths can be used to find an optimal solution for the task assignment problem. We then consider a continuous version of the problem and formulate it as a linearly constrained optimization problem, i.e.,\min \|Ax\|_\infty,{\rm {s.t.}}Bx=d. To avoid solving an intractable \infty{\hbox{-}}{\rm{norm}} optimization problem, we show that, in this case, minimizing the 2{\hbox{-}}{\rm{norm}} is sufficient to minimize the \infty{\hbox{-}}{\rm{norm}}, which reduces the problem to the well-studied linearly constrained least squares problem. The continuous version of the problem has the advantage of being easily amenable to parallelization. Our experiments with molecular dynamics and overlapped domain decomposition applications proved the effectiveness of our methods with significant improvements in load balance. We also discuss how our techniques can be extended to heterogeneous parallel computers.