Abstract
This paper introduces new approaches to the data distribution-partition problem for sparse matrices in a multiprocessor environment. In this work, the data partition problem of a sparse matrix is modeled as a Min-Max Problem subject to the uniformity constrain when the goal is to balance the load for both sparse and dense operations. This problem is NP-Complete and two heuristic solutions (ABO and GPB) are proposed. The key of ABO and GPB is to determine the permutation of rows/columns of the input sparse matrix to obtain a sorted matrix with a homogeneous density of nonzero elements. Due to the heuristic nature of the proposed methods their validation is carried out by a comparative study of the parallel efficiency of two types of problems (sparse and mixed) when ABO, GPB, Block, Cyclic and MRD data distributions are applied.
Similar content being viewed by others
References
B. Aspvall, M. Halldorsson, and F. Manne. A parallel algorithm for computing the extremal eigenvalues of very large sparse matrices. Lecture Notes in Computer Science, 1541:332–336, 1998.
E. Balas and M. Padberg. Set partitioning: A survey. SIAM Review, 18(4):710–760, 1976.
A. J. C. Bik and A. G. Wijshoff. Automatic data structure selection and transformation for sparse matrix computation. IEEE Transactions on Parallel and Distributed Systems, 7(2):109–126, 1996.
M. L. Bilderback. Edge cut imbalances produced by graph partitioning algorithms. In Proceedings High Performance Computing Symposium HPC99. San Diego, Apr. 1999.
R. Boisvert, R. Pozo, K. Remington, R. Barrett, and J. J. Dongarra. Matrix Market. Version 3.0. At URL http://math.nist.gov/MatrixMarket.
J. J. Dongarra, D. C. Duff, H. A. Sorensen, and H. A. van der Vorst. Numerical Linear Algebra for High-Performance Computers. SIAM Philadelphia, 1998.
I. S. Duff, A. M. Erisman, and J. K. Reid. Direct Methods for Sparse Matrices. {Clarendon Press, Oxford}, 1986.
I. S. Duff, R. G. Grimes, and J. G. Lewis. User’s guide for the Harwell-Boeing Sparse Matrix Collection (Release I). Technical report, CERFACS, Toulouse, France, 1992.
R.-G. Chang, T.-R. Chuang, and J. K. Lee. Parallel sparse supports for array intrinsic functions of fortran 90. Journal of Supercomputing, 18(3):305–339, 2001.
R.-G. Chang, T.-R. Chuang, and J. K. Lee. Support and optimization for parallel sparse programs with array intrinsics of fortran 90. Parallel Computing, 30(4):527–550, 2004.
M. Eso. Parallel branch and cut for set partitioning. {PhD Thesis, Cornell University}, Jan. 1999.
M. R. Garey and D. S. Johnson. Computers and Intractability. {A} Guide to the Theory of {NP}-Completeness. {W.H. Freeman and Company}, 1979.
E. M. Garzón and I. García. Parallel Implementation of the Lanczos Method for Sparse Matrices: Analysis of the Data Distributions. {Proceedings ICS’96}, Philadelphia, 1996.
E. M. Garzón and I. García. Evaluation of the work load balance in irregular problems using value based data distributions. In Proceedings of the IASTED International Conference Parallel and Distributed Systems. Euro-PDS’97, Barcelona, 1997.
G. H. Golub and C. F. Van Loan. Matrix Computations, 3rd edn. {The Johns Hopkins University Press, Baltimore and London}, 1996.
M. Grigni and F. Manne. On the complexity of the generalized block distribution. Lecture Notes in Computer Science, 1117:319–326, 1996.
S. Gupta, G. Karypis, and V. Kumar. Highly scalable parallel algorithms for sparse matrix factorization. IEEE Transactions on Parallel and Distributed Systems, 8(5):502–520, 1997.
E. Gutiérrez, R. Asenjo, O. Plata, and E. L. Zapata. Automatic parallelization of irregular applications. Parallel Computing, 26(2000):1709–1738, 2000.
M. Hermenegildo. Parallelizing irregular and pointer-based computations automatically:Perspectives from logic and constraint programming. Parallel Computing, 26(2000):1685–1708, 2000.
V. Kumar, A. Grama, A. Gupta, and G. Karypis. Introduction to Parallel Computing: Design and Analysis of Algorithms. The Benjamin/Cummings Publishing Company, Inc., 1994.
J. K. Lenstra and A. H. G. Rinnooy Kan. Computational complexity of discrete optimizations problems. Annals of Discrete Mathematics, 4:121–140, 1979.
F. Manne. Load Balancing in Parallel Sparse Matrix Computations. {PhD Thesis, University of Bergen, Norway}, 1993.
F. Manne and T. Soerevik. Partitioning an array onto a mesh of processors. Lecture Notes in Computer Science, 1184:467–477, 1996.
J. Mellor-Crummey, V. Adve, B. Broom, D. Chavarra-Miranda, R. Fowler, G. Jin, K. Kennedy, and Q. Yi. Advanced optimization strategies in the Rice dHPF compiler. Concurrency: Practice and Experience, 14(8–9):741–767, 2002.
M. G. Montoya and I. García. Parallel thinning algorithm on multicomputers: Experimental study on load balancing. Concurrency: Practice and Experience, 12(5):327–340, 2000.
A. T. Ogielski and W. Aiello. Sparse matrix computations on parallel processor arrays. SIAM Journal on Scientific Computing, 14(4):519–530, 1993.
R. Ponnusamy, J. Saltz, A. Choudhary, S. Hwang, and G. Fox. Runtime support and compilation methods for user-specified data distributions. IEEE Transactions on Parallel and Distributed Systems, 6(8):815–831, 1995.
L. F. Romero and E. L. Zapata. Data distributions for sparse matrix vector multiplication. Parallel Computing, 21(4):583–605, 1995.
H. D. Simon. The lanczos algorithm with partial reorthogonalization. Mathematics of Computation, 42(165):115–142, 1984.
M. Ujaldón, E. L. Zapata, S.D. Sharma, and J. Saltz. Parallelization techniques for sparse matrix applications. Journal of Parallel and Distributed Computing, 38(2):256–266, 1996.
M. Ujaldón, E. L. Zapata, B. M. Chapman, and H. Zima. Vienna fortran/HPF extensions for sparse and irregular problems and their compilation. IEEE Transactions on Parallel and Distributed Systems, 8(10):1068–1083, 1997.
B. Vastenhouw and R. H. Bisseling. A two-dimensional data distribution method for parallel sparse matrix-vector multiplication. Preprint 1238, Dept. of Mathematics, Utrecht University, May 2002.
G. Wellein, G. Hager, A. Basermann, and H. Fehske. Fast sparse matrix-vector multiplication for teraflop/s computers. Lecture Notes in Computer Science, 2565:287–301, 2003.
Author information
Authors and Affiliations
Corresponding author
Additional information
This work has been partially supported by the Spanish CICYT through grant TIC2002-00228.
Rights and permissions
About this article
Cite this article
Garz, E.M., GarcÍa, I. Approaches Based on Permutations for Partitioning Sparse Matrices on Multiprocessors. J Supercomput 34, 41–61 (2005). https://doi.org/10.1007/s11227-005-0311-2
Issue Date:
DOI: https://doi.org/10.1007/s11227-005-0311-2