[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/2676870.2676876acmotherconferencesArticle/Chapter ViewAbstractPublication PagespgasConference Proceedingsconference-collections
research-article

OpenCoarrays: Open-source Transport Layers Supporting Coarray Fortran Compilers

Published: 06 October 2014 Publication History

Abstract

Coarray Fortran is a set of features of the Fortran 2008 standard that make Fortran a PGAS parallel programming language. Two commercial compilers currently support coarrays: Cray and Intel. Here we present two coarray transport layers provided by the new OpenCoarrays project: one library based on MPI and the other on GASNet. We link the GNU Fortran (GFortran) compiler to either of the two OpenCoarrays implementations and present performance comparisons between executables produced by GFortran and the Cray and Intel compilers. The comparison includes synthetic benchmarks, application prototypes, and an application kernel. In our tests, Intel outperforms GFortran only on intra-node small transfers (in particular, scalars). GFortran outperforms Intel on intra-node array transfers and in all settings that require inter-node transfers. The Cray comparisons are mixed, with either GFortran or Cray being faster depending on the chosen hardware platform, network, and transport layer.

References

[1]
D. Bonachea. GASNet Specification, v. 1.1. Technical Report UCB/CSD-02-1207, U.C. Berkeley, 2002.
[2]
R. Chandra. Parallel programming in OpenMP. Morgan Kaufmann, 2001.
[3]
B. Chapman, T. Curtis, S. Pophale, S. Poole, J. Kuehn, C. Koelbel, and L. Smith. Introducing OpenSHMEM: SHMEM for the PGAS community. In Proc. of 4th Conf. on Partitioned Global Address Space Programming Model, PGAS '10. ACM, 2010.
[4]
I. D. Chivers and J. Sleightholme. Compiler support for the Fortran 2003 and 2008 standards. ACM SIGPLAN Fortran Forum, 33(2), Aug. 2014.
[5]
D. Eachempati, H. J. Jun, and B. Chapman. An open-source compiler and runtime implementation for Coarray Fortran. In Proc. of 4th Conf. on Partitioned Global Address Space Programming Model, PGAS '10. ACM, 2010.
[6]
G. Jin, J. Mellor-Crummey, L. Adhianto, W. N. Scherer III, and C. Yang. Implementation and performance evaluation of the HPC challenge benchmarks in Coarray Fortran 2.0. In Proc. of IEEE Int'l Parallel and Distributed Processing Symposium, IPDPS '11, pages 1089--1100, 2011.
[7]
M. Haveraaen, K. Morris, D. W. I. Rouson, H. Radhakrishnan, and C. Carson. High-performance design patterns for modern Fortran. Scientific Programming, in press.
[8]
D. Henty. A parallel benchmark suite for Fortran Coarrays. In Applications, Tools and Techniques on the Road to Exascale Computing, pages 281--288. IOS Press, 2012.
[9]
J. Nieplocha and B. Carpenter. ARMCI: A portable remote memory copy library for distributed array libraries and compiler run-time systems. In Parallel and Distributed Processing, volume 1586 of LNCS, pages 533--546. Springer Berlin Heidelberg, 1999.
[10]
R. W. Numrich and J. Reid. Co-array Fortran for parallel programming. SIGPLAN Fortran Forum, 17(2):1--31, Aug. 1998.
[11]
R. W. Numrich and J. Reid. Co-arrays in the next Fortran standard. SIGPLAN Fortran Forum, 24(2):4--17, Aug. 2005.
[12]
P. S. Pacheco. Parallel programming with MPI. Morgan Kaufmann, 1997.
[13]
R. S. Rogallo. Numerical experiments in homogeneous turbulence. Technical Report 81315, National Aeronautics and Space Administration, 1981.
[14]
D. Rouson, J. Xia, and X. Xu. Scientific Software Design: The Object-Oriented Way. Cambridge University Press, New York, NY, 2011.
[15]
A. Vaught. The G95 project. http://g95.org, Dec. 2008.

Cited By

View all
  • (2024)Parallel SnowModel (v1.0): a parallel implementation of a distributed snow-evolution modeling system (SnowModel)Geoscientific Model Development10.5194/gmd-17-4135-202417:10(4135-4154)Online publication date: 22-May-2024
  • (2024)Scheduling and Performance of Asynchronous Tasks in Fortran 2018 with FEATSSN Computer Science10.1007/s42979-024-02682-y5:4Online publication date: 28-Mar-2024
  • (2023)Coarray Fortran Parallel Implementation of a Finite Volume Method-Based Aircraft Ice Accretion Simulation CodeInternational Journal of Aeronautical and Space Sciences10.1007/s42405-023-00601-824:4(1124-1135)Online publication date: 26-May-2023
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Other conferences
PGAS '14: Proceedings of the 8th International Conference on Partitioned Global Address Space Programming Models
October 2014
199 pages
ISBN:9781450332477
DOI:10.1145/2676870
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

In-Cooperation

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 06 October 2014

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Coarrays
  2. Fortran
  3. GCC
  4. HPC
  5. PGAS

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Conference

PGAS '14

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)4
  • Downloads (Last 6 weeks)0
Reflects downloads up to 12 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Parallel SnowModel (v1.0): a parallel implementation of a distributed snow-evolution modeling system (SnowModel)Geoscientific Model Development10.5194/gmd-17-4135-202417:10(4135-4154)Online publication date: 22-May-2024
  • (2024)Scheduling and Performance of Asynchronous Tasks in Fortran 2018 with FEATSSN Computer Science10.1007/s42979-024-02682-y5:4Online publication date: 28-Mar-2024
  • (2023)Coarray Fortran Parallel Implementation of a Finite Volume Method-Based Aircraft Ice Accretion Simulation CodeInternational Journal of Aeronautical and Space Sciences10.1007/s42405-023-00601-824:4(1124-1135)Online publication date: 26-May-2023
  • (2023)Framework for Extensible, Asynchronous Task Scheduling (FEATS) in FortranAsynchronous Many-Task Systems and Applications10.1007/978-3-031-32316-4_4(39-51)Online publication date: 11-May-2023
  • (2022)Hybrid Time-Dependent Ginzburg–Landau Simulations of Block Copolymer Nanocomposites: Nanoparticle AnisotropyPolymers10.3390/polym1409191014:9(1910)Online publication date: 7-May-2022
  • (2022)Caffeine: CoArray Fortran Framework of Efficient Interfaces to Network Environments2022 IEEE/ACM Eighth Workshop on the LLVM Compiler Infrastructure in HPC (LLVM-HPC)10.1109/LLVM-HPC56686.2022.00009(34-42)Online publication date: Nov-2022
  • (2022)The elphbolt ab initio solver for the coupled electron-phonon Boltzmann transport equationsnpj Computational Materials10.1038/s41524-022-00710-08:1Online publication date: 7-Feb-2022
  • (2022)OpenSHMEM over MPI as a Performance Contender: Thorough Analysis and OptimizationsOpenSHMEM and Related Technologies. OpenSHMEM in the Era of Exascale and Smart Networks10.1007/978-3-031-04888-3_3(39-60)Online publication date: 20-May-2022
  • (2022)Improving Fortran Performance PortabilityLanguages and Compilers for Parallel Computing10.1007/978-3-030-95953-1_6(74-83)Online publication date: 16-Feb-2022
  • (2021)Fortran Coarray Implementation of Semi-Lagrangian Convected Air Particles within an Atmospheric ModelChemEngineering10.3390/chemengineering50200215:2(21)Online publication date: 6-May-2021
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media