[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to main content

Improving Fortran Performance Portability

  • Conference paper
  • First Online:
Languages and Compilers for Parallel Computing (LCPC 2020)

Abstract

We present a new Fortran source-to-source tool that helps to bridge the gap in the current Fortran tooling ecosystem. The goal of this tool is to translate standard Fortran code to various parallel programming languages in Fortran and C/C++ to enable running on a wide variety of GPUs and CPUs. The translation is performed using the full syntax parsing capabilities of the LFortran compiler, a research compiler currently in development. Using the Abstract Semantic Representation intermediate output of the compiler in this new work has made the translation simpler to accomplish. We also develop a map of the needed parallel constructs for a complete parallel language and begin to identify possible extensions to the existing Fortran language.

Work was performed under U.S. Government contract 89233218CNA000001, managed by Triad National Security, LLC.; LA-UR-20-26284.

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

Access this chapter

Subscribe and save

Springer+ Basic
£29.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
GBP 19.95
Price includes VAT (United Kingdom)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
GBP 43.99
Price includes VAT (United Kingdom)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
GBP 54.99
Price includes VAT (United Kingdom)
  • 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

Similar content being viewed by others

References

  1. Bowers, K., Albright, B., Bergen, B., Yin, L., Barker, K., Kerbyson, D.: 0.374 Pflop/s trillion-particle kinetic modeling of laser plasma interaction on Roadrunner. In: 2008 SC - International Conference for High Performance Computing, Networking, Storage and Analysis, SC 2008, pp. 1–11, November 2008. https://doi.org/10.1109/SC.2008.5222734. Paper 63

  2. Edwards, H.C., Trott, C.R., Sunderland, D.: Kokkos: enabling manycore performance portability through polymorphic memory access patterns. J. Parallel Distrib. Comput. 74(12), 3202–3216 (2014)

    Article  Google Scholar 

  3. Fanfarillo, A., Burnus, T., Cardellini, V., Filippone, S., Nagle, D., Rouson, D.: OpenCoarrays: open-source transport layers supporting coarray Fortran compilers. In: Proceedings of the 8th International Conference on Partitioned Global Address Space Programming Models, 6 October 2014, pp. 1–11 (2014). https://doi.org/10.1145/2676870.2676876

  4. Garain, S., Balsara, D.S., Reid, J.: Comparing Coarray Fortran (CAF) with MPI for several structured mesh PDE applications. J. Comput. Phys. 297, 237–253 (2015). https://doi.org/10.1016/j.jcp.2015.05.020

    Article  MathSciNet  MATH  Google Scholar 

  5. Harrell, S.L., et al.: Effective performance portability. In: 2018 IEEE/ACM International Workshop on Performance, Portability and Productivity in HPC (P3HPC), pp. 24–36. IEEE (2018). https://doi.org/10.1109/P3HPC.2018.00006

  6. Hsu, A., Asanza, D.N., Schoonover, J.A., Jibben, Z., Carlson, N.N., Robey, R.: Performance portability challenges for Fortran applications. In: 2018 IEEE/ACM International Workshop on Performance, Portability and Productivity in HPC (P3HPC), pp. 47–58. IEEE (2018). https://doi.org/10.1109/P3HPC.2018.00008

  7. IEC/ISO JTC1/SC22/WG5: ISO/IEC 1539 Fortran 2018 Standard (2018)

    Google Scholar 

  8. Marks, J., Medwedeff, E., Čertík, O., Bird, R., Robey, R.: Making Fortran performance portable. Technical report LA-UR-20-25755, Los Alamos National Laboratory (2020)

    Google Scholar 

  9. Numrich, R.W., Reid, J.: Co-array Fortran for parallel programming. In: ACM SIGPLAN Fortran Forum, vol. 17, pp. 1–31. ACM New York (1998). https://doi.org/10.1145/289918.289920

  10. Numrich, R.W., Reid, J.: Co-arrays in the next Fortran standard. In: ACM SIGPLAN Fortran Forum, vol. 24, pp. 4–17. ACM New York (2005). https://doi.org/10.1145/1080399.1080400

  11. Rasmussen, C.E., Squyres, J.M.: A case for new MPI Fortran bindings. In: Di Martino, B., Kranzlmüller, D., Dongarra, J. (eds.) EuroPVM/MPI 2005. LNCS, vol. 3666, pp. 183–190. Springer, Heidelberg (2005). https://doi.org/10.1007/11557265_26

    Chapter  Google Scholar 

  12. Rasmussen, C.E., Sottile, M.J., Shende, S.S., Malony, A.D.: Bridging the language gap in scientific computing: the Chasm approach. Concurr. Comput.: Pract. Exp. 18(2), 151–162 (2006). https://doi.org/10.1002/cpe.909

    Article  Google Scholar 

  13. Rouson, D.: Hybrid coarrays: a PGAS feature for many-core architectures. Parallel Comput.: Road Exascale 27, 175 (2016). https://doi.org/10.3233/978-1-61499-621-7-175

    Article  Google Scholar 

  14. Willard, C.G., Snell, A., Segervall, L.: HPC user site census: systems. Intersect360 Reports, 9 March 2015

    Google Scholar 

  15. Čertík, O., et al.: LFortran: modern Fortran compiler and interpreter. Los Alamos National Laboratory (2020). https://lfortran.org

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Robert W. Robey .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2022 This is a U.S. government work and not under copyright protection in the U.S.; foreign copyright protection may apply

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Marks, J., Medwedeff, E., Čertík, O., Bird, R., Robey, R.W. (2022). Improving Fortran Performance Portability. In: Chapman, B., Moreira, J. (eds) Languages and Compilers for Parallel Computing. LCPC 2020. Lecture Notes in Computer Science(), vol 13149. Springer, Cham. https://doi.org/10.1007/978-3-030-95953-1_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-95953-1_6

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-95952-4

  • Online ISBN: 978-3-030-95953-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics