Skip to main content
Log in

Automatic Array Partitioning Based on the Smith Normal Form

  • Published:
International Journal of Parallel Programming Aims and scope Submit manuscript

Abstract

We investigate the lattice-based array partitioning based on the theory of the Smith Normal Form and we present two elegant techniques for partitioning arrays in parallel DoAll loops for message-passing parallel machines: (1) DoAll loops with constant dependencies for communication-free partitioning: a general solution of all possible communication-free partitioning is derived where the dependencies among array references are described in constant distance vectors. (2) DoAll loops with non-constant dependencies for block-communication partitioning: the dependencies among array references are described in non-constant distance vectors. We derive the partitioning equations which allocate all remote data to a unique processor such that only one block-communication can obtain all the remote data for the computation. By using the Smith Normal Form decomposition, we are also able to verify our partitioning results.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  • E. H. D’Hollander (1992) ArticleTitlePartitioning and Labeling of Loops by Unimodular Transformations IEEE Trans. Parallel Distrib. Syst. 3 IssueID4 465–476 Occurrence Handle10.1109/71.149964

    Article  Google Scholar 

  • H. Wijshoff and J. Leeuwen, The Structure of Periodic Storage Schemes for Parallel Memories, IEEE Trans. Comp. c-34(6) (June 1985).

  • E. H.- Y. Tseng J.-L. Gaudiot (1999) ArticleTitleCommunication Generation for Aligned and Cyclic (K) Distributions Using Integer Lattice IEEE Trans. Parallel Distrib. Syst. 10 IssueID2 136–146 Occurrence Handle10.1109/71.752780

    Article  Google Scholar 

  • J. Ramanujam P. Sadayappan (1991) ArticleTitleCompile-Time Techniques for Data Distribution in Distributed Memory Machines IEEE Trans. Parallel Distrib. Syst. 2 IssueID4 472–482 Occurrence Handle10.1109/71.97903

    Article  Google Scholar 

  • M. Mace (1987) Memory Storage Pattern in Parallel Processing Kluwer Dordrecht

    Google Scholar 

  • M. Dion Y. Robert (1996) ArticleTitleMapping affine loop nests Parallel Comput. 22 IssueID10 1373–1397 Occurrence Handle10.1016/S0167-8191(96)00049-X

    Article  Google Scholar 

  • P. Feautrier, Automatic Distribution of Data and Computations, PRiSM (March 2000).

  • A. Lim and M. Lam, Communication-Free Parallelization via Affine Transformations, in Proc.7th workshop on languages and compilers for parallel computing (1994).

  • J. Ramanujam, Non-unimodular transformations of nested loops, Proceedings of the 1992 ACM/IEEE conference on Supercomputing, IEEE Computer Society Press,\break pp. 214–223, (1992).

  • M. Wolfe (1995) High Performance Compilers for Parallel Computing Addison-Wesley Reading, MA

    Google Scholar 

  • P. Feautrier (1992) ArticleTitleSome efficient solutions to the affine scheduling problem I. One-dimensional time Int. J. Parallel Program 21 IssueID5 313–348

    Google Scholar 

  • M. Gupta and P. Banerjee, PARADIGM: A compiler for automatic data distribution on multicomputers, Proceedings of the 7th international conference on Supercomputing, ACM Press, New York, pp. 87–96, (1993).

  • K. Kennedy U. Kremer (1998) ArticleTitleAutomatic data layout for distributed-memory machines ACM Trans. Program Lang. Syst. 20 IssueID4 869–916 Occurrence Handle10.1145/291891.291901

    Article  Google Scholar 

  • A. Thirumalai J. Ramanujam (1996) ArticleTitleEfficient computation of address sequences in data parallel programs using closed forms for basis vectors J. Parallel Distrib. Comput. 38 IssueID2 188–203 Occurrence Handle10.1006/jpdc.1996.0140

    Article  Google Scholar 

  • C. Ancourt F. Coelho F. Irigoin R. Keryell (1997) ArticleTitleA linear algebra framework for static High Performance Fortran code distribution Sci. Program 6 IssueID1 3–27

    Google Scholar 

  • K. Reeuwijk Particlevan W. Denissen H. J. Sips E. M. R. M. Paalvast (1996) ArticleTitleAn Implementation Framework for HPF Distributed Arrays on Message-Passing Parallel Computer Systems IEEE Trans. Parallel Distrib. Syst. 7 IssueID9 897–914 Occurrence Handle10.1109/71.536935

    Article  Google Scholar 

  • S. Chatterjee J. R. Gilbert F. J. E. Long R. Schreiber S.-H. Teng (1995) ArticleTitleGenerating local addresses and communication sets for data-parallel programs J. Parallel Distrib. Comput. 26 IssueID1 72–84 Occurrence Handle10.1006/jpdc.1995.1049

    Article  Google Scholar 

  • M. Newman (1972) Integral Matrices Academic Press New York

    Google Scholar 

  • D. Bau, I. Kodukula, V. Kotlyar, K. Pingali, and P. Stodghill, Solving Alignment Using EIementary Linear Algebra, Proceedings of the 7th International Workshop on Languages and Compilers for Parallel Computing, Springer-Verlag, Berlin, pp. 46–60, (1994).

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jean-Luc Gaudiot.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Tseng, EY., Gaudiot, JL. Automatic Array Partitioning Based on the Smith Normal Form. Int J Parallel Prog 33, 35–56 (2005). https://doi.org/10.1007/s10766-004-1460-2

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10766-004-1460-2

Keywords

Navigation