Skip to main content

Automatic Hybrid MPI+OpenMP Code Generation with llc

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 5759))

Abstract

The evolution of the architecture of massively parallel computers is progressing toward systems with a hierarchical hardware design where each node is a shared memory system with several multi-core CPUs. There is consensus in the HPC community about the need to increment the efficiency of the programming paradigms used to exploit massive parallelism, if we are to make a full use of the advantages offered by these new architectures. llc is a language where parallelism is expressed using OpenMP compiler directives. In this paper we focus our attention on the automatic generation of hybrid MPI+OpenMP code from the llc annotated source code.

This work was partially funded by the EC (FEDER) and the Spanish MEC (Plan Nacional de I+D+I, TIN2008-06570-C04-03).

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

Buying options

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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Olukotun, K., Nayfeh, B.A., Hammond, L., Wilson, K., Chang, K.: The case for a single-chip multiprocessor. SIGPLAN Not. 31(9), 2–11 (1996)

    Article  Google Scholar 

  2. Asanovic, K., Bodik, R., Catanzaro, B.C., Gebis, J.J., Husbands, P., Keutzer, K., Patterson, D.A., Plishker, W.L., Shalf, J., Williams, S.W., Yelick, K.A.: The landscape of parallel computing research: A view from Berkeley, Tech. Rep. UCB/EECS-2006-183, EECS Department, University of California, Berkeley (December 2006), http://www.eecs.berkeley.edu/Pubs/TechRpts/2006/EECS-2006-183.html

  3. Dongarra, J., Gannon, D., Fox, G., Kennedy, K.: The impact of multicore on computational science software. CTWatch Quarterly 3(1) (2007)

    Google Scholar 

  4. Borkar, S., Dubey, P., Kahn, K., Kuck, D., Mulder, H., Pawlowski, S., Rattner, J.: Platform 2015: Intel(r) processor and platform evolution for the next decade, Technology@Intel Magazine, http://tbp.berkeley.edu/research/cmp/borkar_015.pdf

  5. Bosilca, G.: The next frontier. In: Lastovetsky, A., Kechadi, T., Dongarra, J. (eds.) EuroPVM/MPI 2008. LNCS, vol. 5205, p. 1. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  6. Dorta, A.J., González, J.A., Rodríguez, C., de Sande, F.: llc: A parallel skeletal language. Parallel Processing Letters 13(3), 437–448 (2003)

    Article  MathSciNet  Google Scholar 

  7. Dorta, A.J., Lopez, P., de Sande, F.: Basic skeletons in llc. Parallel Computing 32(7–8), 491–506 (2006)

    Article  Google Scholar 

  8. Message Passing Interface Forum, MPI: A Message-Passing Interface Standard, University of Tennessee, Knoxville, TN (1995), http://www.mpi-forum.org/

  9. OpenMP Architecture Review Board, OpenMP C/C++ Application Program Interface (March 2002), http://www.openmp.org/specs/mp-documents/cspec20.pdf

  10. Gropp, W.D.: MPI and hybrid programming models for petascale computing. In: Lastovetsky, A., Kechadi, T., Dongarra, J. (eds.) EuroPVM/MPI 2008. LNCS, vol. 5205, pp. 6–7. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  11. Chapman, B.: Managing multicore with openMP (Extended abstract). In: Lastovetsky, A., Kechadi, T., Dongarra, J. (eds.) EuroPVM/MPI 2008. LNCS, vol. 5205, pp. 3–4. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  12. Smith, L., Bull, M.: Development of mixed mode MPI OpenMP applications. Scientific Programming 9(2–3), 83–98 (2001)

    Article  Google Scholar 

  13. Cappello, F., Etiemble, D.: MPI versus MPI+openMP on IBM SP for the NAS benchmarks. In: Proceedings of Supercomputing 2000 (CD-ROM). IEEE and ACM SIGARCH, Dallas (2000)

    Google Scholar 

  14. Rabenseifner, R.: Hybrid parallel programming on hpc platforms. In: Proc. of the Fifth European Workshop on OpenMP (EWOMP 2003), Aachen, Germany, pp. 185–194 (2003)

    Google Scholar 

  15. llc Home Page, http://llc.pcg.ull.es

  16. Cole, M.: Algorithmic Skeletons: structured management of parallel computation, Monograms. Pitman/MIT Press, Cambridge (1989)

    MATH  Google Scholar 

  17. Rabenseifner, R., Hager, G., Jost, G.: Hybrid mpi/openmp parallel programming on clusters of multi-core smp nodes. In: Proc. of the 17th Euromicro Conference on Parallel, Distributed and Network-based Processing (PDP 2009), Weimar, Germany (2009)

    Google Scholar 

  18. Swope, W.C., Andersen, H.C., Berens, P.H., Wilson, K.R.: A computer simulation method for the calculation of equilibrium constants for the formation of physical clusters of molecules: Application to small water clusters. Journal of Chemical Physics 76, 637–649 (1982)

    Article  Google Scholar 

  19. Bailey, D.H., Barszcz, E., Barton, J.T., Browning, D.S., Carter, R.L., Dagum, D., Fatoohi, R.A., Frederickson, P.O., Lasinski, T.A., Schreiber, R.S., Simon, H.D., Venkatakrishnan, V., Weeratunga, S.K.: The NAS parallel benchmarks. The International Journal of Supercomputer Applications 5(3), 63–73 (1991), http://www.nas.nasa.gov/NAS/NPB/

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2009 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Reyes, R., Dorta, A.J., Almeida, F., de Sande, F. (2009). Automatic Hybrid MPI+OpenMP Code Generation with llc . In: Ropo, M., Westerholm, J., Dongarra, J. (eds) Recent Advances in Parallel Virtual Machine and Message Passing Interface. EuroPVM/MPI 2009. Lecture Notes in Computer Science, vol 5759. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-03770-2_25

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-03770-2_25

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-03769-6

  • Online ISBN: 978-3-642-03770-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics