Efficient Data Distribution Schemes for EKMR-Based Sparse Arrays on Distributed Memory Multicomputers

Multi-dimensional sparse array operations can be used in the atmosphere and ocean sciences, the image processing, and etc., and have been an extensively investigated problem. Therefore, it becomes an important issue to propose efficient data distribution schemes for multi-dimensional sparse arrays. In our previous work, we have proposed two data distribution schemes Compress Followed Send (CFS) and Encoding-Decoding (ED) for sparse arrays based on the traditionalmatrixrepresentation (TMR) scheme. We have proposed another scheme, called extended Karnaugh map representation (EKMR), to represent sparse arrays. The EKMR scheme can obtain better performance than the TMR scheme for some sparse array operations. Hence, in this paper, we want to propose efficient data distribution schemes for EKMR-based sparse arrays. We extend the CFS and the ED schemes for TMR-based sparse arrays to EKMR-based sparse arrays first. Then, we compare the performance of these two schemes with that of the Send Followed Compress (SFC), which is an intuitive data distribution scheme for sparse arrays. Finally, we compare these three schemes for EKMR-based sparse arrays with those of TMR-based sparse arrays, respectively. Both the theoretical analysis and the experimental tests were conducted. From the theoretical analysis and the experimental results, we can see that the ED scheme is superior to the CFS scheme that is superior to the SFC scheme for most of testing EKMR-based sparse arrays; the performance of these three schemes for EKMR-based sparse arrays is better than that of TMR-based sparse arrays for all of testing cases, respectively.

[1]  C.W. Kessler,et al.  The SPARAMAT approach to automatic comprehension of sparse matrix computations , 1999, Proceedings Seventh International Workshop on Program Comprehension.

[2]  J. Cullum,et al.  Lanczos algorithms for large symmetric eigenvalue computations , 1985 .

[3]  Emilio L. Zapata,et al.  Cache probabilistic modeling for basic sparse algebra kernels involving matrices with a non-uniform distribution , 1998, Proceedings. 24th EUROMICRO Conference (Cat. No.98EX204).

[4]  Brendan Vastenhouw,et al.  A Two-Dimensional Data Distribution Method for Parallel Sparse Matrix-Vector Multiplication , 2005, SIAM Rev..

[5]  Yu-Chee Tseng,et al.  Guest Editorial: Special Section on Wireless Internet , 2003, IEEE Trans. Computers.

[6]  Ken Kennedy,et al.  Fortran D Language Specification , 1990 .

[7]  Don-Lin Yang,et al.  Parallel Volume Rendering with Sparse Data Structures , 2005, J. Inf. Sci. Eng..

[8]  Keshav Pingali,et al.  Compiling Parallel Sparse Code for User-Defined Data Structures , 1997, PPSC.

[9]  Chun-Yuan Lin,et al.  Efficient Representation Scheme for Multidimensional Array Operations , 2002, IEEE Trans. Computers.

[10]  Jenq Kuen Lee,et al.  Parallel Sparse Supports for Array Intrinsic Functions of Fortran 90 , 2001, The Journal of Supercomputing.

[11]  Chun-Yuan Lin,et al.  Performance evaluation of data distributions with load-balancing for sparse arrays , 2004, 7th International Symposium on Parallel Architectures, Algorithms and Networks, 2004. Proceedings..

[12]  Barbara M. Chapman,et al.  Vienna-Fortran/HPF Extensions for Sparse and Irregular Problems and Their Compilation , 1997, IEEE Trans. Parallel Distributed Syst..

[13]  Chris H. Q. Ding,et al.  An Optimal Index Reshuffle Algorithm for Multidimensional Arrays and Its Applications for Parallel Architectures , 2001, IEEE Trans. Parallel Distributed Syst..

[14]  Shahid H. Bokhari,et al.  A Partitioning Strategy for Nonuniform Problems on Multiprocessors , 1987, IEEE Transactions on Computers.

[15]  Chun-Yuan Lin,et al.  Efficient Data Parallel Algorithms for Multidimensional Array Operations Based on the EKMR Scheme for Distributed Memory Multicomputers , 2003, IEEE Trans. Parallel Distributed Syst..

[16]  Richard Barrett,et al.  Templates for the Solution of Linear Systems: Building Blocks for Iterative Methods , 1994, Other Titles in Applied Mathematics.

[17]  Boleslaw K. Szymanski,et al.  Run-Time Optimization of Sparse Matrix-Vector Multiplication on SIMD Machines , 1994, PARLE.

[18]  Jerrold L. Wagener,et al.  Fortran 90 Handbook: Complete Ansi/Iso Reference , 1992 .

[19]  Rafael Asenjo,et al.  Sparse Block and Cyclic Data Distributions for Matrix Computations , 1995 .

[20]  Mahmut T. Kandemir,et al.  Improving Cache Locality by a Combination of Loop and Data Transformation , 1999, IEEE Trans. Computers.

[21]  P. Sadayappan,et al.  On improving the performance of sparse matrix-vector multiplication , 1997, Proceedings Fourth International Conference on High-Performance Computing.

[22]  Message P Forum,et al.  MPI: A Message-Passing Interface Standard , 1994 .

[23]  John G. Lewis,et al.  Sparse matrix test problems , 1982, SGNM.

[24]  Wei Li,et al.  Unifying data and control transformations for distributed shared-memory machines , 1995, PLDI '95.

[25]  Jenq Kuen Lee,et al.  Towards Automatic Support of Parallel Sparse Computation in Java with Continuous Compilation , 1997, Concurr. Pract. Exp..

[26]  Chun-Yuan Lin,et al.  Efficient Data Compression Methods for Multidimensional Sparse Array Operations Based on the EKMR Scheme , 2003, IEEE Trans. Computers.

[27]  Joel H. Saltz,et al.  Embedding data mappers with distributed memory machine compilers , 1993, SIGP.

[28]  Joel H. Saltz,et al.  Parallelization Techniques for Sparse Matrix Applications , 1996, J. Parallel Distributed Comput..

[29]  Chun-Yuan Lin,et al.  Data distribution schemes of sparse arrays on distributed memory multicomputers , 2007, The Journal of Supercomputing.

[30]  Message Passing Interface Forum MPI: A message - passing interface standard , 1994 .

[31]  Keshav Pingali,et al.  Next-generation generic programming and its application to sparse matrix computations , 2000, ICS '00.