Skip to main content

Alignment Problem

  • Reference work entry
Encyclopedia of Optimization

Since the mid-1990s the need for techniques to parallelize numerical applications has increased. When parallelizing nested loops for distributed memory parallel computers, two major problems have to be solved: the scheduling of the loop iterations and the mapping of the computations and data elements onto the processors. The scheduling functions must satisfy all the data dependences existing in the sequential loop nests. The mapping functions should maximize the degree of parallelism obtained. Furthermore they should minimize the amount of communication overhead due to non local data references.

This survey presents the alignment problem, that is, the problem of mapping computation and data onto the processors. The alignment problem has been studied extensively since the beginning of the nineties, that is, since the beginning of the introduction of massively parallel distributed memory computers. For different sub-problems of the alignment problem, the most interesting results are...

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 1,699.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Anderson, J.M., and Lam, M.S.: ‘Global optimizations for parallelism and locality on scalable parallel machines’: ACM SIGPLAN Conf. Programming Language Design and Implementation (PLDI ’93), ACM, 1993, pp. 112–125.

    Google Scholar 

  2. Bau, D., Kodukula, I., Kotylar, V., Pingali, K., and Stodghill, P.: ‘Solving alignment using elementary linear algebra’: 7th Internat. Workshop Languages and Compilers for Parallel Computing (LCPC ’94), Vol. 892 of Lecture Notes Computer Sci., Springer, 1994, pp. 46–60.

    Google Scholar 

  3. Bixby, R., Kennedy, K., and Kremer, U.: ‘Automatic data layout using 0–1 integer programming’, Internat. Conf. Parallel Architectures and Compilation Techniques (PACT ’94), 1994, pp. 111–122.

    Google Scholar 

  4. Chapman, B.M., Fahringer, T., and Zima, H.P.: ‘Automatic support for data distribution on distributed memory multiprocessor systems’: 6th Internat. Workshop Languages and Compilers for Parallel Computing (LCPC ’93), Vol. 768 of Lecture Notes Computer Sci., Springer, 1993, pp. 184–199.

    Google Scholar 

  5. Chatterjee, S., Gilbert, J.R., Schreiber, R., and Sheffler, T.J.: ‘Array distribution in data-parallel programs’: 7th Internat. Workshop Languages and Compilers for Parallel Computing (LCPC ’94), Vol. 892 of Lecture Notes Computer Sci., Springer, 1994, pp. 78–91.

    Google Scholar 

  6. Chen, T.-S, and Sheu, J.-P: ‘Communication-free data allocation techniques for parallelizing compilers on multicomputers’, IEEE Trans. Parallel and Distributed Systems5, no. 9 (1994), 921–938.

    Google Scholar 

  7. Crooks, P., and Perrott, R.H.: ‘An automatic data distribution generator for distributed memory MIMD machines’: 4th Internat. Workshop Compilers for Parallel Computers, 1993, pp. 33–44.

    Google Scholar 

  8. Darte, A., and Robert, Y.: ‘On the alignment problem’, Parallel Proc. Lett.4, no. 3 (1994), 259–270.

    MathSciNet  Google Scholar 

  9. Diderich, C.G.: ‘Automatic data distribution for massively parallel distributed memory computers’, PhD Thesis Computer Sci. Dept. Swiss Federal Inst. Tech., Lausanne, Switzerland (1998).

    Google Scholar 

  10. Diderich, C.G., and Gengler, M.: ‘The alignment problem in a linear algebra framework’: Proc. Hawaii Internat. Conf. System Sci. (HICSS-30); Software Techn. Track, IEEE Computer Soc. Press, 1997, pp. 586–595.

    Google Scholar 

  11. Dierstein, A., Hayer, R., and Rauber, T.: ‘The ADDAP system on the iPSC/860: Automatic data distribution and parallelization’, J. Parallel Distributed Comput.32, no. 9 (1994), 1–10.

    Google Scholar 

  12. Dion, M.: ‘Alignement et distribution en parallélisation automatique’, PhD Thesis Ecole Normale Sup. Lyon (1996), (In French.)

    Google Scholar 

  13. Dion, M., and Robert, Y.: ‘Mapping affine loop nests’, Parallel Comput.22 (1996), 1373–1397.

    MathSciNet  MATH  Google Scholar 

  14. Feautrier, P.: ‘Towards automatic distribution’, Parallel Proc. Lett.4, no. 3 (1992), 233–244.

    Google Scholar 

  15. Garcia, J., Ayguadé, E., and Labarta, J.: ‘A novel approach towards automatic data distribution’: Supercomputing ’95 Conf., 1995.

    Google Scholar 

  16. Gupta, M.: ‘Automatic data partitioning on distributed memory multicomputers’, PhD Thesis Univ. Illinois at Urbana-Champaign, Urbana, IL (1992).

    Google Scholar 

  17. Huang, C.-H, and Sadayappan, P.: ‘Communication-free hyperplane partitioning of nested loops’, 4th Internat. Workshop Languages and Compilers for Parallel Computing (LCPC ’91), Vol. 589 of Lecture Notes Computer Sci., Springer, 1991, pp. 186–200.

    Google Scholar 

  18. Kelly, W., and Pugh, W.: ‘Minimizing communication while preserving parallelism’: 1996 ACM Internat. Conf. Supercomputing (ICS ’96), ACM, 1996, pp. 52–60.

    Google Scholar 

  19. Knobe, K., Lukas, J.D., and Steele Jr., G.L.: ‘Data optimization: Allocation of arrays to reduce communication on SIMD machines’, J. Parallel Distributed Comput.8, no. 2 (1990), 102–118.

    Google Scholar 

  20. Kunchithapadam, K., and Miller, B.P.: ‘Optimizing array distributions in data-parallel programs’: 7th Internat. Workshop Languages and Compilers for Parallel Computing (LCPC ’94), Vol. 892 of Lecture Notes Computer Sci., Springer, 1994, pp. 470–484.

    Google Scholar 

  21. Lamport, L.: ‘The parallel execution of DO loops’, Comm. ACM17, no. 2 (1974), 83–93.

    MathSciNet  MATH  Google Scholar 

  22. Li, J., and Chen, M.: ‘Index domain alignment: Minimizing cost of cross-referencing between distributed arrays’: 3rd Symp. Frontiers of Massively Parallel Computation (Frontiers ’90), IEEE Computer Soc. Press, 1990, pp. 424–433.

    Google Scholar 

  23. Li, J., and Chen, M.: ‘The data alignment phase in compiling programs for distributed-memory machines’, J. Parallel Distributed Comput.13 (1991), 213–221.

    Google Scholar 

  24. Lim, A.W., and Lam, M.S.: ‘Communication-free parallelization via affine transformations’: 7th Internat. Workshop Languages and Compilers for Parallel Computing (LCPC ’94), Vol. 892 of Lecture Notes Computer Sci., Springer, 1994, pp. 92–106.

    Google Scholar 

  25. Mongenet, C.: ‘Mappings for communications minimization using distribution and alignment’: Internat. Conf. Parallel Architectures and Compilation Techniques (PACT ’95), 1995, pp. 185–193.

    Google Scholar 

  26. O’Boyle, M.: ‘A data partitioning algorithm for distributed memory compilation’, Techn. Report Ser. Univ. Manchester, EnglandUMCS-93-7-1 (1993).

    Google Scholar 

  27. O’Boyle, M., and Hedayat, G.A.: ‘Data alignment: Transformation to reduce communication on distributed memory architectures’: Scalable High Performance Computing Conf. (SHPCC ’92), IEEE Computer Soc. Press, 1992, pp. 366–371.

    Google Scholar 

  28. Platonoff, A.: ‘Automatic data distribution for massively parallel computers’: Internat. Workshop Compilers for Parallel Computers, 1995, pp. 555–570.

    Google Scholar 

  29. Platonoff, A.: ‘Contribution à la distribution automatique des données pour machines massivement parallèles’, PhD Thesis Ecole Normale Sup. Mines de Paris (1995), (In French.)

    Google Scholar 

  30. Ramanujam, J., and Sadayappan, P.: ‘Compile-time techniques for data distribution in distributed memory machines’, IEEE Trans. Parallel and Distributed Systems2, no. 4 (1991), 472–482.

    Google Scholar 

  31. Sheu, J.-P., and Tai, T.-H.: ‘Partitioning and mapping nested loops on multiprocessor systems’, IEEE Trans. Parallel and Distributed Systems2, no. 4 (1991), 430–439.

    Google Scholar 

  32. Sinharoy, B., and Szymanski, B.K.: ‘Data and task alignment in distributed memory architectures’, J. Parallel Distributed Comput.21 (1994), 61–74.

    Google Scholar 

  33. Wolfe, M., and Ikei, M.: ‘Automatic array alignment for distributed memory multicomputers’, 27th Annual Hawaii Internat. Conf. System Sci., Vol. II, IEEE Computer Soc. Press, 1994, pp. 23–32.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2001 Kluwer Academic Publishers

About this entry

Cite this entry

Diderich, C.G., Gengler, M. (2001). Alignment Problem . In: Floudas, C.A., Pardalos, P.M. (eds) Encyclopedia of Optimization. Springer, Boston, MA. https://doi.org/10.1007/0-306-48332-7_8

Download citation

  • DOI: https://doi.org/10.1007/0-306-48332-7_8

  • Publisher Name: Springer, Boston, MA

  • Print ISBN: 978-0-7923-6932-5

  • Online ISBN: 978-0-306-48332-5

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics