Towards Exascale Programming Models and Runtime Systems
When: Monday, April 10, 2017
Where: PGH 232
Time: 11:00 AM – Noon
Speaker: Dr. Zoran Budimlic, Rice University
Host: Dr. Edgar Gabriel
As the computer architecture community strives for exascale performance over the next decade, it is making many compromises to achieve that goal. Heterogeneous computing resources, non-uniform memory access speeds, varying and non-uniform communication subsystems, high number of lowerer-powered and simpler processors, lower overall system reliability, limits to the power that can be supplied to parts of the system and limits to the heat that can be dissipated are all a necessity to make exascale systems possible.
These hardware contraints place a very heavy burden on existing runtime systems as well as programming and execution models, compilers and other software tools that need to manage these systems and deliver application performance at large scale. A paradigm shift from the traditional SPMD-style programming models and systems towards more dynamic, asynchronous, event-driven, heterogeneous, irregular, adaptable and decentralized systems is not only necessary, but absolutely critical in enabling delivery of exascale applications for exascale machines.
This talk will begin with a high-level overview of Habanero, a set of portable parallel abstractions and their implementations that enable lightweight task creation and termination, synchronization, event-driven and data-driven task execution, locality control, mutual exclusion and isolation. These abstractions can be combined with the current systems and programming languages to add dynamism and asynchrony to legacy systems, as well as enable creation of new, fully dynamic and asynchronous applications for future hardware systems.
The talk will also include a deep dive into the Habanero technologies for task isolation using a novel concept of "delegation". Delegation extends past work on software transactional memory by enabling high-performance deadlock-free and livelock-free mutual exclusion of parallel tasks, which can be used for implementation of highly irregular and dynamic applications, an increasingly significant category of applications aimed at the future hardware.
Technologies developed in the Habanero project support the necessary paradigm shift towards dynamic software systems. This work opens the door to many thrilling and challenging problems in communication, synchronization, resilience, programming models and languages, runtime systems, memory and locality management, compilers, debuggers, performance analysis tools and others. The future is exciting; bring it on!
Zoran Budimlić is a Senior Research Scientist and Lecturer at Rice University. He obtained his Ph.D. from Rice University under the direction of Ken Kennedy. He is the leading scientist in the Habanero Extreme Scale Software Research Project at Rice University. His research interests are in high-level programming models and languages for future hardware systems, runtime systems for enabling efficient heterogeneous, distributed and adaptive program execution on such systems, and compiler technologies for connecting those programming models and runtimes. He has authored over 40 research papers in these areas.