Skip to main content

SPMD Execution in the Presence of Dynamic Data Structures

  • Chapter
  • First Online:
Compiler Optimizations for Scalable Parallel Systems

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

  • 471 Accesses

Abstract

A wide range of applications make use of regular dynamic data structures. Dynamic data structures are typically required because either the size of the data structure cannot be determined at compile-time or the form of the data structure depends upon the data that it contains which is not known until runtime. Some commonly used regular data structures include link lists, trees, and two dimensional meshes. Lists and trees are used by applications such as the N-body problem [10] and sparse Cholesky factorization [8, 11], dynamic meshes are used for solving partial differential equations and quad-trees are used by applications such as solid modeling, geographic information systems, and robotics [9].

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 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Callahan, D., Kennedy, K. (1988): Compiling programs for distributed-memory multiprocessors. Journal of Supercomputing 2, 151–169

    Article  Google Scholar 

  2. Gong, C., Gupta, R., Melhem, R. (1992): Compilation techniques for communication optimizations on distributed-memory machines. Proceedings of International Conference on Parallel Processing II, St. Charles, Illinois, 39–46

    Google Scholar 

  3. Gupta, R. (1992): SPMD execution of programs with pointer-based data structures on distributed-memory machines. Journal of Parallel and Distributed Computing 16(2), 92–107

    Article  Google Scholar 

  4. Hendren, L.J., Hummel, J., Nicolau, A. (1992): Abstractions for recursive pointer data structures: improving the analysis and transformation of imperative programs. Proceedings of ACM Conference on Programming Language Design and Implementation, 249–260

    Google Scholar 

  5. Hendren, L.J., Gao, G.R. (1992): Designing programming languages for analyzability: a fresh look at pointer data structures. Proceedings of the International Conference on Computer Languages, Oakland, California, 242–251

    Google Scholar 

  6. Hiranandani, S., Kennedy, K., Koelbel, C., Kremer, U., Tseng, C.-W. (1991): An overview of the Fortran D programming system. Proceedings of the Fourth Workshop on Languages and Compilers for Parallel Computing, Santa Clara, California

    Google Scholar 

  7. Rogers, A., Carlisle, M.C., Reppy, J.H., Hendren, L.J. (1995): Supporting dynamic data structures on distributed-memory machines. ACM Transactions on Programming Languages and Systems 17(2), 233–263

    Article  Google Scholar 

  8. Rothberg, E. (1992): Exploiting memory hierarchy in sequential and parallel sparse Cholesky factorization. Ph.D. Thesis, Technical Report STAN-CS-92-1459, Stanford University

    Google Scholar 

  9. Samet, H. (1989): The Design and Analysis of Spatial Data Structures. Addison-Wesley

    Google Scholar 

  10. Warren, M.S., J.K. Salmon (1993): A parallel hashed oct-tree n-body algorithm. Proceedings of Supercomputing

    Google Scholar 

  11. Zhang, G., Elman, H.C. (1992): Parallel sparse Cholesky factorization on a shared memory multiprocessor. Parallel Computing 18, 1009–1022

    Article  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2001 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Gupta, R. (2001). SPMD Execution in the Presence of Dynamic Data Structures. In: Pande, S., Agrawal, D.P. (eds) Compiler Optimizations for Scalable Parallel Systems. Lecture Notes in Computer Science, vol 1808. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45403-9_19

Download citation

  • DOI: https://doi.org/10.1007/3-540-45403-9_19

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-41945-7

  • Online ISBN: 978-3-540-45403-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics