Dynamic Adaptation Techniques and Opportunities to Improve HPC Runtimes
Mohammad Alaul Haque Monil
Committee: Allen D. Malony (chair), Hank Childs, Boyana Norris
Area Exam(Mar 2021)
Keywords: Dynamic Adaptation, Runtime System, High Performance Computing

Exascale, a new era of computing, is knocking at the door. Leaving behind the days of high frequency, single-core processors, the new paradigm of multicore/manycore processors in complex heterogeneous systems dominates today's HPC landscape.

With the advent of accelerators and special-purpose processors alongside general processors, the role of high performance computing (HPC) runtime systems has become crucial to support different computing paradigms under one umbrella. On one hand, modern HPC runtime systems have introduced a rich set of abstractions for supporting different technologies and hiding details from the HPC application developers. On the other hand, the underlying runtime layer has been equipped with techniques to efficiently synchronize, communicate, and map work to compute resources. Modern runtime layers can also dynamically adapt to achieve better performance and reduce energy consumption. However, the capabilities of runtime systems vary widely. In this study, the spectrum of HPC runtime systems is explored and evolution, common and dynamic features, and open problems are discussed.