HPF-2 Support for Dynamic Sparse Computations
There is a class of sparse matrix computations, such as direct solvers of systems of linear equations, that change the fill-in (nonzero entries) of the coefficient matrix, and involve row and column operations (pivoting). This paper addresses the problem of the parallelization of these sparse computations from the point of view of the parallel language and the compiler. Dynamic data structures for sparse matrix storage are analyzed, permitting to efficiently deal with fill-in and pivoting issues. Any of the data representations considered enforces the handling of indirections for data accesses, pointer referencing and dynamic data creation. All of these elements go beyond current data-parallel compilation technology. We propose a small set of new extensions to HPF-2 to parallelize these codes, supporting part of the new capabilities on a runtime library. This approach has been evaluated on a Cray T3E, implementing, in particular, the sparse LU factorization.
KeywordsSparse Matrix Sparse Code Storage Scheme Sparse Array Runtime Library
Unable to display preview. Download preview PDF.
- 1.R. Asenjo. Sparse LU Factorization in Multiprocessors. Ph.D. Dissertation, Dept. Computer Architecture, Univ. of Mêlaga, Spain, 1997.Google Scholar
- 2.R. Asenjo, L. F. Romero, M. Ujaldón and E. L. Zapata. Sparse Block and Cyclic Data Distributions for Matrix Computations. in NATO Adv. Res. Works. on High Performance Computing: Technology, Methods and Applications, Cetraro, Italy, 1994. (Elsevier Science B.V., The Netherlands, pp. 359–377, 1995).Google Scholar
- 3.R. Asenjo and E. L. Zapata. Sparse LU Factorization on the Cray T3D. Int’l. Conf. on High-Performance Computing and Networking (HPCN’95), Milan, Italy, pp. 690–696, 1995.Google Scholar
- 4.R. Barret, M. Berry, T. Chan, J. Demmel, J. Donato, J. Dongarra, V. Eijkhout, R. Pozo, C. Romine and H. van der Vorst. Templates for the Solution of Linear Systems: Building Blocks for Iterative Methods. Siam Press, 1994.Google Scholar
- 5.R. Barriuso, A. Knies. SHMEM User’s Guide for Fortran, Rev. 2.2. Cray Research, Inc, 1994.Google Scholar
- 6.A. Bik. Compiler Support for Sparse Matrix Computations. Ph.D. Dissertation, University of Leiden, The Netherlands, 1996.Google Scholar
- 7.P. Brezany, K. Sanjari, O. Cheron and E. Van Konijnenburg. Processing Irregular Codes Containing Arrays with Multi-Dimensional Distributions by the PREPARE HPF Compiler. Int’l. Conf. on High-Performance Computing and Networking (HPCN’95), Milan, Italy, pp. 526–531, 1995.Google Scholar
- 8.T. Davis, University of Florida Sparse Matrix Collection. NA Digest, 92(42), 1994, 96(28), 1996, 97(23), 1997. See http://www.cise.ufl.edu/~davis/sparse/.
- 9.J. W. Demmel, S. C. Eisenstat, J. R. Gilbert, X. S. Li and J. W. H. Liu. A Supernodal Approach to Sparse Partial Pivoting. Tech. Report UCB/CSD-95-883, Computer Science Division, Univ. of California at Berkeley, CA, 1995.Google Scholar
- 10.I. S. Duff and J. K. Reid. MA48, a Fortran Code for Direct Solution of Sparse Unsymmetric Linear Systems of Equations. Tech. Report RAL-93-072, Rutherford Appleton Lab., UK, 1993.Google Scholar
- 12.G. Fox, S. Hiranandani, K. Kennedy, C. Koelbel, U. Kremer, C-W. Tseng and M. Wu. Fortran D Language Specification. Tech. Report COMP TR90-141, Computer Science Dept., Rice University, 1990.Google Scholar
- 13.C. Fu and T. Yang,. Run-time Compilation for Parallel Sparse Matrix Computations. 10th ACM Int’l Conf. on Supercomputing, Philadelphia, pp. 237–244, May 1996.Google Scholar
- 15.High Performance Fortran Forum. High Performance Language Specification, Ver. 1.0. Scientific Programming, 2(1-2):1–170, 1993.Google Scholar
- 16.High Performance Fortran Forum. High Performance Language Specification, Ver. 2.0”. Rice University, Houston, TX, February 1997.Google Scholar
- 17.V. Kotlyar and K. Pingali. Sparse Code Generation for Imperfectly Nested Loops with Dependences. 11th ACM Int’l Conf. on Supercomputing, Vienna, Austria, 188–195, July 1997.Google Scholar
- 20.G. P. Trabado and E. L. Zapata. Exploiting Locality on Parallel Sparse Matrix Computations. 3rd EUROMICRO Works. on Parallel and Distributed Processing, San Remo, Italy, pp. 2–9, 1995.Google Scholar
- 22.H. Zima, P. Brezany, B. Chapman, P. Mehrotra and A. Schwald. Vienna Fortran–A Language Specification. Tech. Report ACPC-TR92-4, Austrian Center for Parallel Computation, University of Vienna, Austria, 1992.Google Scholar