Exascale machines require new programming paradigms and runtimes

28Citations
Citations of this article
35Readers
Mendeley users who have this article in their library.

Abstract

Extreme scale parallel computing systems will have tens of thousands of optionally accelerator-equipped nodes with hundreds of cores each, as well as deep memory hierarchies and complex interconnect topologies. Such exascale systems will provide hardware parallelism at multiple levels and will be energy constrained. Their extreme scale and the rapidly deteriorating reliability of their hardware components means that exascale systems will exhibit low mean-time-betweenfailure values. Furthermore, existing programming models already require heroic programming and optimization efforts to achieve high efficiency on current supercomputers. Invariably, these efforts are platform-specific and non-portable. In this article, we explore the shortcomings of existing programming models and runtimes for large-scale computing systems. We propose and discuss important features of programming paradigms and runtimes to deal with exascale computing systems with a special focus on data-intensive applications and resilience. Finally, we discuss code sustainability issues and propose several software metrics that are of paramount importance for code development for ultrascale computing systems.

Cite

CITATION STYLE

APA

Costa, G. D., Fahringer, T., Rico-Gallego, J. A., Grasso, I., Hristov, A., Karatza, H. D., … Astsatryan, H. (2015). Exascale machines require new programming paradigms and runtimes. Supercomputing Frontiers and Innovations, 2(2), 6–27. https://doi.org/10.14529/jsfi150201

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free