GPU-Based Parallel Integration of Large Numbers of Independent ODE Systems

11/06/2016
by   Kyle E Niemeyer, et al.
0

The task of integrating a large number of independent ODE systems arises in various scientific and engineering areas. For nonstiff systems, common explicit integration algorithms can be used on GPUs, where individual GPU threads concurrently integrate independent ODEs with different initial conditions or parameters. One example is the fifth-order adaptive Runge-Kutta-Cash-Karp (RKCK) algorithm. In the case of stiff ODEs, standard explicit algorithms require impractically small time-step sizes for stability reasons, and implicit algorithms are therefore commonly used instead to allow larger time steps and reduce the computational expense. However, typical high-order implicit algorithms based on backwards differentiation formulae (e.g., VODE, LSODE) involve complex logical flow that causes severe thread divergence when implemented on GPUs, limiting the performance. Therefore, alternate algorithms are needed. A GPU-based Runge-Kutta-Chebyshev (RKC) algorithm can handle moderate levels of stiffness and performs significantly faster than not only an equivalent CPU version but also a CPU-based implicit algorithm (VODE) based on results shown in the literature. In this chapter, we present the mathematical background, implementation details, and source code for the RKCK and RKC algorithms for use integrating large numbers of independent systems of ODEs on GPUs. In addition, brief performance comparisons are shown for each algorithm, demonstrating the potential benefit of moving to GPU-based ODE integrators.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
02/01/2021

Quinpi: integrating conservation laws with CWENO implicit methods

Many interesting applications of hyperbolic systems of equations are sti...
research
09/08/2021

Strong Scaling of OpenACC enabled Nek5000 on several GPU based HPC systems

We present new results on the strong parallel scaling for the OpenACC-ac...
research
02/13/2018

A High Performance Implementation of Spectral Clustering on CPU-GPU Platforms

Spectral clustering is one of the most popular graph clustering algorith...
research
08/02/2020

P-Cloth: Interactive Complex Cloth Simulation on Multi-GPU Systems using Dynamic Matrix Assembly and Pipelined Implicit Integrators

We present a novel parallel algorithm for cloth simulation that exploits...
research
05/14/2019

Optimizing the Linear Fascicle Evaluation Algorithm for Multi-Core and Many-Core Systems

Sparse matrix-vector multiplication (SpMV) operations are commonly used ...
research
10/06/2021

Reconsidering Optimistic Algorithms for Relational DBMS

At DBKDA 2019, we demonstrated that StrongDBMS with simple but rigorous ...
research
08/18/2022

An Improved Multi-Stage Preconditioner on GPUs for Compositional Reservoir Simulation

The compositional model is often used to describe multicomponent multiph...

Please sign up or login with your details

Forgot password? Click here to reset