Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to main content

A Unifying Framework for Parallel Computing

  • Chapter
  • First Online:
IAENG Transactions on Engineering Technologies

Part of the book series: Lecture Notes in Electrical Engineering ((LNEE,volume 247))

  • 1637 Accesses

Abstract

We propose a new theoretical model for parallelism. The model is explictly based on data and work distributions, a feature missing from other theoretical models. The major theoretic result is that data movement can then be derived by formal reasoning. While the model has an immediate interpretation in distributed memory parallelism, we show that it can also accomodate shared memory and hybrid architectures such as clusters with accelerators.The model gives rise in a natural way to objects appearing in widely different parallel programming systems such as the PETSc library or the Quark task scheduler. Thus we argue that the model offers the prospect of a high productivity programming system that can be compiled down to proven high-performance environments.

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

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 129.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD 169.99
Price excludes VAT (USA)
  • Durable hardcover 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

Similar content being viewed by others

Notes

  1. 1.

    We can argue that this is no limitation, as any object will have a linearization of some sort.

  2. 2.

    We make the common dentification of \(N=\{0,\ldots ,N-1\}\) and \(P=\{0,\ldots ,P-1\}\); likewise \(N^M\) is the set of mappings from \(M\) to \(N\), and thereby \(2^N\) is the set of mappings from \(N\) to \(\{0,1\}\); in effect the set of all subsets of \(\{0,\ldots ,N-1\}\).

  3. 3.

    We use parentheses for indicating distributions; actual vector subsections are denoted with square brackets.

References

  1. Adiga AK, Browne JC (1986) A graph model for parallel computations expressed in the computation structures language. In: ICPP, pp 880–886

    Google Scholar 

  2. Barnes J, Hut P (1986) A hierarchical O(N log N) force-calculation algorithm. Nature 324:446–449. http://dx.doi.org/10.1038/324446a0

    Google Scholar 

  3. Chan E, Quintana-Ortí ES, Quintana-Ortí G, van de Geijn R (2007) SuperMatrix out-of-order scheduling of matrix operations for SMP and multi-core architectures. In: SPAA ’07: Proceedings of the 19th ACM symposium on parallelism in algorithms and architectures, San Diego, CA, USA, pp 116–125.

    Google Scholar 

  4. Chapel programming language homepage. http://chapel.cray.com/

  5. Cray Research: Cray T3E\(^{TM}\) Fortran optimization guide. http://docs.cray.com/books/004-2518-002/html-004-2518-002/004-2518-002-toc.html

  6. Eijkhout V (2012) A unified approach to parallel programming. In: Ao S, Douglas C, Grundfest W, Burgstone J (eds) Lecture Notes in engineering and computer science: proceedings of the world congress on engineering and computer science 2012, WCECS 2012, 24–26 October, 2012, San Francisco, USA, pp 78–83. Newswood Limited, International Association of Engineers. ISBN (vol I): 978-988-19251-6-9, ISBN (vol II): 978-988-19252-4-4, ISSN: 2078-0958 (Print), ISSN: 2078-0966 (Online)

    Google Scholar 

  7. Gao G, Sterling T, Stevens R, Hereld M, Zhu W (2007) ParalleX: a study of a new parallel computation model. In: Parallel and distributed processing symposium, 2007. IPDPS 2007. IEEE International, pp 1–6. doi:10.1109/IPDPS.2007.370484.

  8. Greengard L, Rokhlin V (1987) A fast algorithm for particle simulations. J Comput Phys 73:325

    Article  MathSciNet  MATH  Google Scholar 

  9. Gropp W, Lusk E, Skjellum A (1994) Using MPI. The MIT Press, Cambridge

    Google Scholar 

  10. Gropp WD, Smith BF (1994) Scalable, extensible, and portable numerical libraries. In: Proceedings of the scalable parallel libraries conference, IEEE pp 87–93.

    Google Scholar 

  11. Heroux MA, Bartlett RA, Howle VE, Hoekstra RJ, Hu JJ, Kolda TG, Lehoucq RB, Long KR, Pawlowski RP, Phipps ET, Salinger AG, Thornquist HK, Tuminaro RS, Willenbring JM, Williams A, Stanley KS (2005) An overview of the trilinos project. ACM Trans Math Softw 31(3):397–423. http://doi.acm.org/10.1145/1089014.1089021

    Google Scholar 

  12. Kale LV, Krishnan S (1996) Charm++: Parallel programming with message-driven objects. In: Wilson GV, Lu P (eds) Parallel programming using C++, MIT Press, Cambridge, pp. 175–213

    Google Scholar 

  13. Karp RM, Miller RE (1966) Properties of a model for parallel computations: Determinacy, termination, queueing. SIAM J Appl Math 14:1390–1411

    Article  MathSciNet  MATH  Google Scholar 

  14. Katzenelson J (1989) Computational structure of the n-body problem. SIAM J Sci Stat Comput 10:787–815

    Article  MathSciNet  MATH  Google Scholar 

  15. Kulkarni M, Pingali K, Walter B, Ramanarayanan G, Bala K, Chew LP (2007) Optimistic parallelism requires abstractions. SIGPLAN Not. (Proceedings of PLDI) 42(6):211–222. http://doi.acm.org/10.1145/1273442.1250759. http://iss.ices.utexas.edu/Publications/Papers/PLDI2007.pdf

  16. Lublinerman R, Chaudhuri S, Cerny P (2009) Parallel programming with object assemblies. In: International conference on object oriented programming, systems, languages and applications (OOPSLA)

    Google Scholar 

  17. Newton P, Browne JC (1992) The code 2.0 graphical parallel programming language. In: Proceedings of the 6th international conference on supercomputing, ICS ’92, pp 167–177. ACM, New York, NY, USA. doi:10.1145/143369.143405. http://doi.acm.org/10.1145/143369.143405

  18. Nieplocha J, Harrison R, Littlefield R (1996) Global arrays: A nonuniform memory access programming model for high-performance computers. J Supercomput 10:197–220

    Article  Google Scholar 

  19. Poulson J, Marker B, Hammond JR, van de Geijn R Elemental: a new framework for distributed memory dense matrix computations. ACM Trans Math Softw Submitted

    Google Scholar 

  20. Quintana-Ortí G, Quintana-Ortí ES, van de Geijn RA, Van Zee FG, Chan E (2009) Programming matrix algorithms-by-blocks for thread-level parallelism. ACM Trans Math Softw 36(3):14:1–14:26. http://doi.acm.org/10.1145/1527286.1527288

  21. Salmon JK, Warren MS, Winckelmans GS (1986) Fast parallel tree codes for gravitational and fluid dynamical n-body problems. Int J Supercomput Appl 8:129–142

    Article  Google Scholar 

  22. Sussman A, Saltz J, Das R, Gupta S, Mavriplis D, Ponnusamy R (1992) Parti primitives for unstructured and block structured problems

    Google Scholar 

  23. Valiant LG (1990) A bridging model for parallel computation. Commun ACM 33:103–111. doi: http://doi.acm.org/10.1145/79173.79181. http://doi.acm.org/10.1145/79173.79181

    Google Scholar 

  24. YarKhan A, Kurzak J, Dongarra J (2011) QUARK users’ guide: queueing and runtime for kernels. Technical Report ICL-UT-11-02, University of Tennessee Innovative Computing Laboratory

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Victor Eijkhout .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2014 Springer Science+Business Media Dordrecht

About this chapter

Cite this chapter

Eijkhout, V. (2014). A Unifying Framework for Parallel Computing. In: Kim, H., Ao, SI., Amouzegar, M., Rieger, B. (eds) IAENG Transactions on Engineering Technologies. Lecture Notes in Electrical Engineering, vol 247. Springer, Dordrecht. https://doi.org/10.1007/978-94-007-6818-5_29

Download citation

  • DOI: https://doi.org/10.1007/978-94-007-6818-5_29

  • Published:

  • Publisher Name: Springer, Dordrecht

  • Print ISBN: 978-94-007-6817-8

  • Online ISBN: 978-94-007-6818-5

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics