EPSRC logo

Details of Grant 

EPSRC Reference: EP/V027484/1
Title: Towards Performance Portability in HPC applications for GPUs: An Autonomous Approach
Principal Investigator: Reano, Dr C
Other Investigators:
Researcher Co-Investigators:
Project Partners:
AnyVision (N.I.) Limited Numerical Algorithms Group Ltd PrecisionLife Ltd
Department: Sch of Electronics, Elec Eng & Comp Sci
Organisation: Queen's University of Belfast
Scheme: New Investigator Award
Starts: 01 September 2021 Ends: 31 August 2023 Value (£): 177,818
EPSRC Research Topic Classifications:
Fundamentals of Computing Software Engineering
EPSRC Industrial Sector Classifications:
Information Technologies
Related Grants:
Panel History:
Panel DatePanel NameOutcome
23 Mar 2021 EPSRC ICT Prioritisation Panel March 2021 Announced
Summary on Grant Application Form
Almost all general purpose architectures are now heterogeneous, and the trend is gathering pace with increasing numbers of accelerators being added with different capabilities and ways of executing source code. That increases the difficulty of developing, maintaining, and running applications efficiently across different hardware. This problem is present in almost every computing paradigm: Cloud Computing, the Internet of Things (IoT), embedded systems, Exascale systems, etc. Taking as an example the latter, Exascale computing systems (i.e. computing systems capable of at least 10^18 calculations per second) are currently limited by the power consumption they require. One way to circumvent this limitation in power consumption is the use of heterogeneous systems. Thus, HPC platforms are increasingly moving towards heterogeneity, and different kind of devices with different processing capabilities and features are incorporated in those systems. These devices include specialised hardware accelerators, such as graphics processing units (GPUs), power-efficient processors based on the ARM architecture, etc. This heterogeneity translates not only into performance gain, but also into energy efficiency. The problem of this approach is that heterogeneous systems evolve very fast. In addition, they present very different architectures. All this translates into high costs for re-engineering applications and scientific computing software. Notice that this is a broad problem and similar concerns can also be encountered in other computing paradigms.

The UK has a prolific electronics and circuits industry and must sustain leadership in languages and software for heterogeneous architectures. Although EPSRC invests significantly in research software engineers (e.g. Research Software Engineer Fellowships 2020, £4.5m) to maintain and extend key scientific software packages, it is not feasible to constantly re-write algorithms for new hardware. Research centres and companies such as our project partners cannot afford the human costs of re-optimising existing applications and port them to many different targets. This situation is exacerbated in the context of HPC platforms, with very expensive supercomputers consuming large amounts of energy.

The challenge that the HPC and other communities are facing is to run applications efficiently across different platforms and hardware. This is usually referred to as performance portability. Current approaches addressing performance portability require manually compiling, modifying and/or rewriting the applications source code. What we propose is dynamically optimising GPU applications on the fly, in response to changing GPU architectures and inputs/parameters of the code. The main advantage over existing approaches is that a middleware transparently intercepts calls to the GPUs and dynamically replace existing code with better one, performing runtime optimisation at the assembly level. This level is the closest one to the real hardware, therefore offering highest potential for fine-tuning. We will design strategies for optimising applications depending on the underlying system in which they are being run. In addition, we will explore methods of addressing all this in an autonomous way, automatically adapting to new platforms and hardware. To focus the effort, we will use HPC applications accelerated by GPUs. However, the outcomes of this research could also be applied to other platforms and hardware, as well as other computing paradigms.
Key Findings
This information can now be found on Gateway to Research (GtR) http://gtr.rcuk.ac.uk
Potential use in non-academic contexts
This information can now be found on Gateway to Research (GtR) http://gtr.rcuk.ac.uk
Description This information can now be found on Gateway to Research (GtR) http://gtr.rcuk.ac.uk
Date Materialised
Sectors submitted by the Researcher
This information can now be found on Gateway to Research (GtR) http://gtr.rcuk.ac.uk
Project URL:  
Further Information:  
Organisation Website: http://www.qub.ac.uk