skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: The Ongoing Evolution of OpenMP

Abstract

Here, this paper presents an overview of the past, present and future of the OpenMP application programming interface (API). While the API originally specified a small set of directives that guided shared memory fork-join parallelization of loops and program sections, OpenMP now provides a richer set of directives that capture a wide range of parallelization strategies that are not strictly limited to shared memory. As we look toward the future of OpenMP, we immediately see further evolution of the support for that range of parallelization strategies and the addition of direct support for debugging and performance analysis tools. Looking beyond the next major release of the specification of the OpenMP API, we expect the specification eventually to include support for more parallelization strategies and to embrace closer integration into its Fortran, C and, in particular, C++ base languages, which will likely require the API to adopt additional programming abstractions.

Authors:
 [1];  [1];  [2];  [3];  [4];  [5];  [6];  [7]
  1. Lawrence Livermore National Lab. (LLNL), Livermore, CA (United States)
  2. Intel Corp., Madrid (Spain)
  3. Intel Deutschland GmbH, Feldkirchen (Germany)
  4. Barcelona Supercomputing Center, Barcelona (Spain)
  5. Sandia National Lab. (SNL-NM), Albuquerque, NM (United States)
  6. RWTH Aachen Univ., Aachen (Germany)
  7. Intel, Hillsboro, OR (United States)
Publication Date:
Research Org.:
Sandia National Lab. (SNL-NM), Albuquerque, NM (United States)
Sponsoring Org.:
USDOE National Nuclear Security Administration (NNSA)
OSTI Identifier:
1465188
Report Number(s):
SAND-2018-7212J
Journal ID: ISSN 0018-9219; 665399
Grant/Contract Number:  
AC04-94AL85000
Resource Type:
Journal Article: Accepted Manuscript
Journal Name:
Proceedings of the IEEE
Additional Journal Information:
Journal Volume: 106; Journal Issue: 11; Journal ID: ISSN 0018-9219
Publisher:
Institute of Electrical and Electronics Engineers
Country of Publication:
United States
Language:
English
Subject:
97 MATHEMATICS AND COMPUTING; accelerator architectures; computer architecture; computer science; computers and information processing; memory management; multicore processing; multithreading; parallel architectures; parallel processing; parallel programming; programming

Citation Formats

de Supinski, Bronis R., Scotland, Thomas R. W., Duran, Alejandro, Klemm, Michael, Bellido, Sergi Mateo, Olivier, Stephen Lecler, Terboven, Christian, and Mattson, Timothy G. The Ongoing Evolution of OpenMP. United States: N. p., 2018. Web. doi:10.1109/JPROC.2018.2853600.
de Supinski, Bronis R., Scotland, Thomas R. W., Duran, Alejandro, Klemm, Michael, Bellido, Sergi Mateo, Olivier, Stephen Lecler, Terboven, Christian, & Mattson, Timothy G. The Ongoing Evolution of OpenMP. United States. doi:10.1109/JPROC.2018.2853600.
de Supinski, Bronis R., Scotland, Thomas R. W., Duran, Alejandro, Klemm, Michael, Bellido, Sergi Mateo, Olivier, Stephen Lecler, Terboven, Christian, and Mattson, Timothy G. Mon . "The Ongoing Evolution of OpenMP". United States. doi:10.1109/JPROC.2018.2853600. https://www.osti.gov/servlets/purl/1465188.
@article{osti_1465188,
title = {The Ongoing Evolution of OpenMP},
author = {de Supinski, Bronis R. and Scotland, Thomas R. W. and Duran, Alejandro and Klemm, Michael and Bellido, Sergi Mateo and Olivier, Stephen Lecler and Terboven, Christian and Mattson, Timothy G.},
abstractNote = {Here, this paper presents an overview of the past, present and future of the OpenMP application programming interface (API). While the API originally specified a small set of directives that guided shared memory fork-join parallelization of loops and program sections, OpenMP now provides a richer set of directives that capture a wide range of parallelization strategies that are not strictly limited to shared memory. As we look toward the future of OpenMP, we immediately see further evolution of the support for that range of parallelization strategies and the addition of direct support for debugging and performance analysis tools. Looking beyond the next major release of the specification of the OpenMP API, we expect the specification eventually to include support for more parallelization strategies and to embrace closer integration into its Fortran, C and, in particular, C++ base languages, which will likely require the API to adopt additional programming abstractions.},
doi = {10.1109/JPROC.2018.2853600},
journal = {Proceedings of the IEEE},
issn = {0018-9219},
number = 11,
volume = 106,
place = {United States},
year = {2018},
month = {8}
}

Journal Article:
Free Publicly Available Full Text
Publisher's Version of Record

Save / Share: