Hardware in various environments such as High Performance Computing, the Internet of Things and Embedded Systems has become heterogeneous in order to improve computational performance. Customising the hardware for particular application domains as well as the use of accelerators such as GPUs, TPUs, DSPs, FPGAs is attractive as it can lead to performance improvements of up to three orders of magnitude compared to general-purpose processors. Recent technological developments and paradigms in compilers, profilers, and run-time systems are creating new opportunities for heterogeneous computing. However, these are also posing several new challenges and creating the need for new approaches and research strategies, as well as the re-evaluation of the models that were developed to address issues such as application models, programming models, middleware, scalability, security and sustainability. The proposed paper identifies the major open challenges in heterogeneous computing, emerging trends, and impact areas. It then offers a future research agenda, thus helping in the realisation of Future Generation Heterogeneous Computing.

Date: 
Tuesday, June 30, 2020