Javascript must be enabled to continue!
Accelerated hydrologic modeling: ParFlow GPU implementation
View through CrossRef
<p>&#160; ParFlow is known as a numerical model that simulates the hydrologic cycle from the bedrock to the top of the plant canopy. The original codebase provides an embedded Domain-Specific Language (eDSL) for generic numerical implementations with support for supercomputer environments (distributed memory parallelism), on top of which the hydrologic numerical core has been built.<br>&#160; In ParFlow, the newly developed optional GPU acceleration is built directly into the eDSL headers such that, ideally, parallelizing all loops in a single source file requires only a new header file. This is possible because the eDSL API is used for looping, allocating memory, and accessing data structures. The decision to embed GPU acceleration directly into the eDSL layer resulted in a highly productive and minimally invasive implementation.<br>&#160; This eDSL implementation is based on C host language and the support for GPU acceleration is based on CUDA C++. CUDA C++ has been under intense development during the past years, and features such as Unified Memory and host-device lambdas were extensively leveraged in the ParFlow implementation in order to maximize productivity. Efficient intra- and inter-node data transfer between GPUs rests on a CUDA-aware MPI library and application side GPU-based data packing routines.<br>&#160; The current, moderately optimized ParFlow GPU version runs a representative model up to 20 times faster on a node with 2 Intel Skylake processors and 4 NVIDIA V100 GPUs compared to the original version of ParFlow, where the GPUs are not used. The eDSL approach and ParFlow GPU implementation may serve as a blueprint to tackle the challenges of heterogeneous HPC hardware architectures on the path to exascale.</p>
Title: Accelerated hydrologic modeling: ParFlow GPU implementation
Description:
<p>&#160; ParFlow is known as a numerical model that simulates the hydrologic cycle from the bedrock to the top of the plant canopy.
The original codebase provides an embedded Domain-Specific Language (eDSL) for generic numerical implementations with support for supercomputer environments (distributed memory parallelism), on top of which the hydrologic numerical core has been built.
<br>&#160; In ParFlow, the newly developed optional GPU acceleration is built directly into the eDSL headers such that, ideally, parallelizing all loops in a single source file requires only a new header file.
This is possible because the eDSL API is used for looping, allocating memory, and accessing data structures.
The decision to embed GPU acceleration directly into the eDSL layer resulted in a highly productive and minimally invasive implementation.
<br>&#160; This eDSL implementation is based on C host language and the support for GPU acceleration is based on CUDA C++.
CUDA C++ has been under intense development during the past years, and features such as Unified Memory and host-device lambdas were extensively leveraged in the ParFlow implementation in order to maximize productivity.
Efficient intra- and inter-node data transfer between GPUs rests on a CUDA-aware MPI library and application side GPU-based data packing routines.
<br>&#160; The current, moderately optimized ParFlow GPU version runs a representative model up to 20 times faster on a node with 2 Intel Skylake processors and 4 NVIDIA V100 GPUs compared to the original version of ParFlow, where the GPUs are not used.
The eDSL approach and ParFlow GPU implementation may serve as a blueprint to tackle the challenges of heterogeneous HPC hardware architectures on the path to exascale.
</p>.
Related Results
The ICON-ParFlow coupling: Integrating a continental-scale hydrological model into an Earth system model
The ICON-ParFlow coupling: Integrating a continental-scale hydrological model into an Earth system model
3D prognostic groundwater flow on a global scale is currently lacking in Earth system models. In order to prepare Earth system models for kilometer-scale simulations with integrate...
Multi-order hydrologic position: a high-resolution dataset for the conterminous United States
Multi-order hydrologic position: a high-resolution dataset for the conterminous United States
The location of a point within a stream network can be an important measure in hydrology. Hydrologic position (HP) is defined here by two metrics: lateral position (LP) and distanc...
EGA: An Efficient GPU Accelerated Groupby Aggregation Algorithm
EGA: An Efficient GPU Accelerated Groupby Aggregation Algorithm
With the exponential growth of big data, efficient groupby aggregation (GA) has become critical for real-time analytics across industries. GA is a key method for extracting valuabl...
Vina-GPU 2.1: towards further optimizing docking speed and precision of AutoDock Vina and its derivatives
Vina-GPU 2.1: towards further optimizing docking speed and precision of AutoDock Vina and its derivatives
AbstractAutoDock Vina and its derivatives have established themselves as a prevailing pipeline for virtual screening in contemporary drug discovery. Our Vina-GPU method leverages t...
GPU-I-TASSER: a GPU accelerated I-TASSER protein structure prediction tool
GPU-I-TASSER: a GPU accelerated I-TASSER protein structure prediction tool
Abstract
Motivation
Accurate and efficient predictions of protein structures play an important role in understanding their funct...
Integrating the ParFlow hydrological model into ICON
Integrating the ParFlow hydrological model into ICON
In order to further develop an ICON-based, storm-resolving earth-system model, the ParFlow hydrological model has been coupled to the ICON land component, which is based on the JSB...
Vina-GPU 2.0:further accelerating AutoDock Vina and its derivatives with GPUs
Vina-GPU 2.0:further accelerating AutoDock Vina and its derivatives with GPUs
Modern drug discovery typically faces large virtual screens from huge compound databases where multiple docking tools are involved for meeting various real scenes or improving the ...
Quantifying uncertainty in estimation of hydrologic metrics for ecohydrological studies
Quantifying uncertainty in estimation of hydrologic metrics for ecohydrological studies
AbstractHydrologic metrics have been used extensively in ecology and hydrology to summarize the characteristics of riverine flow regimes at various temporal scales but there has be...


