Skip to main content

Data parallel language extensions for exploiting locality in irregular problems

  • HPF Extensions and Compilers
  • Conference paper
  • First Online:
Languages and Compilers for Parallel Computing (LCPC 1997)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1366))

Abstract

Many large-scale computational applications contain irregular data access patterns related to unstructured problem domains. Examples include finite element methods, computational fluid dynamics, and molecular dynamics codes. Such codes are difficult to parallelize efficiently with current HPF compilers. However, most of these problems exhibit spatial locality. This property is exploited by our approach.

In the sequential program, unstructured domains are accessed via indirection arrays. We introduce a new directive that serves to identify indirection arrays and the boundaries of the associated domains. The data domains are distributed using Multiple Recursive Decomposition (MRD), a pseudo-regular distribution, which combines efficient implementation with good load balancing and communication behavior. Indirection arrays are aligned with the data arrays. Using the information provided in the directive, the compiler can produce a target program with significantly better performance than an approach based on indirect distributions and the inspector/executor paradigm.

This work was supported by the Ministry of Education and Science (CICYT) of Spain under project TIC95-0942-C03 and by the Human Capital and Mobility program of the European Union (ERB4050P1921660)

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Gerndt, M.: Automatic Parallelization for Distributed-Memory Multiprocessing Systems PhD thesis, University of Bonn. (1981)

    Google Scholar 

  2. Zima, H., Bast, H., Gerndt, M.: Superb: A tool for semi-automatic mimd/simd parallelization. Parallel Computing. (June 1986) 1–18

    Google Scholar 

  3. Fox, G., Lyzenga, G., et al.: Solving Problems on Concurrent Processors, Prentice-Hall, Volume 1. (1988)

    Google Scholar 

  4. Mirchandaney, R., Saltz, J., Smith, R.M., Nicol, D.M., Crowley, K.: Principles of run-time support for parallel processors. Proceedings of the 1988 ACM International Conference on Supercomputing. (1988) 140–152

    Google Scholar 

  5. Fox, G., Hiranandani, S., Kennedy, et al.: Fortran D language specification. Technical report, Dept. of Computer Science, Rice University. (1990)

    Google Scholar 

  6. Koelbel, C., Mehrotra, P.: Programming data parallel algorithms on distributed memory machines using Kali. Proceedings of the 1991 ACM International Conference on Supercomputing. (1991)

    Google Scholar 

  7. Chapman, B., Mehrotra, P., Zima, H.: Vienna fortran — a fortran language extension for distributed memor multiprocessors. Languages, Compilers, and Run-Time Environments for Distributed Memory Machines. North-Holland, The Netherlands. (1992)

    Google Scholar 

  8. Choudhary, A., Ponnusamy, R., Saltz, J., Fox, G.: Design and specification of PARTI runtime data mapping primitives. Technical report, Institute for Advanced Computer Studies, Computer Science Department, University of Maryland, MD. (1992)

    Google Scholar 

  9. Hanxleden, R., Kennedy, K., Saltz, J.: Value-based distributions in Fortran D — A preliminary report. Technical report, Center for Research on Parallel Computation, Rice University. (1993)

    Google Scholar 

  10. Das, R., Uysal, M., Saltz, J., Hwang, Y.: Communications optimizations for irregular scientific computations on distributed memory architectures. Journal of parallel and distributed computing, 22(3) (September 1994) 462–479

    Google Scholar 

  11. Asenjo, R., Romero, L.F., Ujald6n, M., Zapata, E.L.: Sparse block and cyclic data distributions for matrix computations. Advanced Workshop in High Performance Computing: Technology, Methods and Application. Elsevier Science. (1995) 359–377

    Google Scholar 

  12. Romero, L.F., Zapata, E.L.: Data distributions for sparse matrix vector multiplication. Parallel Computing, 21(4) (April 1995) 583–605

    Google Scholar 

  13. High Performance Fortran Forum. High performance fortran language specification. Version 2.0. Technical report, High Performance Fortran Forum, (October 1996)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Zhiyuan Li Pen-Chung Yew Siddharta Chatterjee Chua-Huang Huang P. Sadayappan David Sehr

Rights and permissions

Reprints and permissions

Copyright information

© 1998 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Trabado, G.P., Zapata, E.L. (1998). Data parallel language extensions for exploiting locality in irregular problems. In: Li, Z., Yew, PC., Chatterjee, S., Huang, CH., Sadayappan, P., Sehr, D. (eds) Languages and Compilers for Parallel Computing. LCPC 1997. Lecture Notes in Computer Science, vol 1366. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0032694

Download citation

  • DOI: https://doi.org/10.1007/BFb0032694

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-64472-9

  • Online ISBN: 978-3-540-69788-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics