Abstract

Programming upcoming exascale computing systems is expected to be a major challenge. New programming models are required to improve programmability, by hiding the complexity of these systems from application developers. The EXA2PRO programming framework aims at improving developers’ productivity for applications that target heterogeneous computing systems. It is based on advanced programming models and abstractions that encapsulate low-level platform-specific optimizations and it is supported by a runtime that handles application deployment on heterogeneous nodes. It supports a wide variety of platforms and accelerators (CPU, GPU, FPGA-based Data-Flow Engines), allowing developers to efficiently exploit heterogeneous computing systems, thus enabling more HPC applications to reach exascale computing. The EXA2PRO framework was evaluated using four HPC applications from different domains. By applying the EXA2PRO framework, the applications were automatically deployed and evaluated on a variety of computing architectures, enabling developers to obtain performance results on accelerators, test scalability on MPI clusters and productively investigate the degree by which each application can efficiently use different types of hardware resources.

Highlights

  • THE building of exascale computing systems is a huge investment both financially and in terms of scientific effort

  • We present the EXA2PRO framework, which enables the evaluation of applications in heterogeneous exascale computing systems

  • We demonstrate the use of EXA2PRO in a variety of applications, which target the transition to exascale computing systems and show how the multi-backend feature of EXA2PRO can improve the development productivity

Read more

Summary

Introduction

THE building of exascale computing systems is a huge investment both financially and in terms of scientific effort. It is beneficial to enable more applications to access these systems, or at least, promote their transition towards the exascale computing direction. Towards this end, advanced programming models and environments are needed that will assist developers in addressing critical. Manuscript received 24 Feb. 2021; revised 13 July 2021; accepted 13 July 2021. Date of publication 11 Aug. 2021; date of current version 15 Oct. 2021. (Corresponding author: Lazaros Papadopoulos.) Recommended for acceptance by S.

Objectives
Results
Discussion
Conclusion

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.