Abstract

Efficient use of a distributed memory parallel computer requires that the computational load be balanced across processors in a way that minimizes interprocessor communication. A new domain mapping algorithm is presented that extends recent work in which ideas from spectral graph theory have been applied to this problem. The generalization of spectral graph bisection involves a novel use of multiple eigenvectors to allow for division of a computation into four or eight parts at each stage of a recursive decomposition. The resulting method is suitable for scientific computations like irregular finite elements or differences performed on hypercube or mesh architecture machines. Experimental results confirm that the new method provides better decompositions arrived at more economically and robustly than with previous spectral methods. This algorithm allows for arbitrary nonnegative weights on both vertices and edges to model inhomogeneous computation and communication. A new spectral lower bound for graph bisection is also presented.

Keywords

ComputationHypercubeAlgorithmGraph partitionSpectral graph theoryDomain decomposition methodsBisection methodGraphSpectral methodComputer scienceMathematicsEigenvalues and eigenvectorsGeneralizationHypercube graphParallel computingTheoretical computer scienceVoltage graphFinite element methodLine graph

Affiliated Institutions

Related Publications

Expander codes

Using expander graphs, we construct a new family of asymptotically good, linear error-correcting codes. These codes have linear time sequential decoding algorithms and logarithm...

1996 IEEE Transactions on Information Theory 920 citations

Publication Info

Year
1995
Type
article
Volume
16
Issue
2
Pages
452-469
Citations
481
Access
Closed

External Links

Social Impact

Social media, news, blog, policy document mentions

Citation Metrics

481
OpenAlex

Cite This

Bruce Hendrickson, Robert W. Leland (1995). An Improved Spectral Graph Partitioning Algorithm for Mapping Parallel Computations. SIAM Journal on Scientific Computing , 16 (2) , 452-469. https://doi.org/10.1137/0916028

Identifiers

DOI
10.1137/0916028