3.3 Using New Programming Models to Improve the Scalability and Performance of Near Real-time High Resolution Coastal Modeling

Thursday, 14 January 2016: 2:00 PM
Room 344 ( New Orleans Ernest N. Morial Convention Center)
Hartmut Kaiser, Louisiana State University, Baton Rouge, LA

With the adoption of the new C++11 Standard the community sees a revival of interest in the language. This interest is also driven by the increasing demands that new computer architectures and technologies are exerting on application developers and domain scientists. Especially the need for highly runtime adaptive algorithms and applications puts a great strain on our ability to efficiently write code which performs well and which scales satisfactory, as multi-core and multi-threading is the new modality of computation. We argue that new programming models have to be developed if we are to gain continued scalability of computations as we increase the size of our systems. These are programming models which work equally well for inter-node as well for intra-node use.

With the degree of complexity and size increasing in new hardware architectures, applications are more and more hindered by the main bottlenecks in computation, namely starvation, latency, overheads, and waiting for contention resolution, energy limitations and increasing needs for resilient operation. We present HPX, which is a general purpose parallel C++ runtime system implementing a new model of computation ParalleX, that attempts to address those challenges.

We show results from using HPX for leveraging and managing asynchrony, overlapping different phases of computation and communication, suggesting ways to seamlessly expose it to programmers in an easy to use way. Our main use case presented relates to ADCIRC and DGSWEM, two toolkits widely used in coastal modeling for addressing the effects and interactions of natural processes such as winds, tides, waves and currents on hydrodynamic interfaces using the two-dimensional (vertically-integrated) and three-dimensional versions of the Shallow Water Equations.

- Indicates paper has been withdrawn from meeting
- Indicates an Award Winner