Biological and Environmental Research - Earth and Environmental System Sciences
Earth and Environmental System Modeling

Exploring the Use of Novel Programming Models in Land Surface Models

TitleExploring the Use of Novel Programming Models in Land Surface Models
Publication TypeConference Proceeding
Year of Publication2019
Conference NameSC19 International Conference for High Performance Computing, Networking, Storage and Analysis Workshops
PublisherThe Institute of Electrical and Electronics Engineers
Conference LocationDenver, Colorado
Abstract / Summary

A wide range of programming models are currently under rapid development to meet the needs of application developers looking to work on more complex machines. These models fill a variety of roles. Some look to abstract supercomputer architecture, including both processors and memory, to present a strategy for portable performance across a wide range of machines. Others look to expose concurrency by explicitly constructing task-driven dependency graphs that allow a scheduler to find parallelism. Here we explore the implications for application codes of adopting two such programming models, Kokkos and Legion, one from each class of models. We specifically focus on the software design implications on refactoring existing applications, rather than the performance and performance tuning of these models. We identify a strategy for refactoring the Energy Exascale Earth System Model’s Land Surface Model, an extremely complex code for climate applications, and prototype a series of mini-apps that explore the adoption of Kokkos and Legion. In doing this, we identify commonalities across the models, leading to a series of conclusions about application software design and refactoring for the adoption of novel programming models. Specifically, we find that refactoring efforts to abstract physics algorithms from data structures enable the use of a variety of programming models. With this refactoring done, we find that, at least in the case of Kokkos and Legion, these types of programming models are sufficiently mature for active use by even small application software development teams.

URLhttps://conferences.computer.org/sc19w/2019/#!/toc/15
DOI10.1109/PAW-ATM49560.2019.00006
Original Publication: 
Conference Name: SC19 International Conference for High Performance Computing, Networking, Storage and Analysis Workshops
Year of Publication: 2019
Publication Date: 11/2019

A wide range of programming models are currently under rapid development to meet the needs of application developers looking to work on more complex machines. These models fill a variety of roles. Some look to abstract supercomputer architecture, including both processors and memory, to present a strategy for portable performance across a wide range of machines. Others look to expose concurrency by explicitly constructing task-driven dependency graphs that allow a scheduler to find parallelism. Here we explore the implications for application codes of adopting two such programming models, Kokkos and Legion, one from each class of models. We specifically focus on the software design implications on refactoring existing applications, rather than the performance and performance tuning of these models. We identify a strategy for refactoring the Energy Exascale Earth System Model’s Land Surface Model, an extremely complex code for climate applications, and prototype a series of mini-apps that explore the adoption of Kokkos and Legion. In doing this, we identify commonalities across the models, leading to a series of conclusions about application software design and refactoring for the adoption of novel programming models. Specifically, we find that refactoring efforts to abstract physics algorithms from data structures enable the use of a variety of programming models. With this refactoring done, we find that, at least in the case of Kokkos and Legion, these types of programming models are sufficiently mature for active use by even small application software development teams.

Publisher: The Institute of Electrical and Electronics Engineers
Conference Location: Denver, Colorado
DOI: 10.1109/PAW-ATM49560.2019.00006
Citation:
Coon, ET, WR Elwaisf, H Pillai, PE Thornton, and SL Painter.  2019.  "Exploring the Use of Novel Programming Models in Land Surface Models."  In SC19 International Conference for High Performance Computing, Networking, Storage and Analysis Workshops.  The Institute of Electrical and Electronics Engineers, Denver, Colorado.  https://doi.org/10.1109/PAW-ATM49560.2019.00006.