OpenCL parallel integration of ordinary differential equations: Applications in computational dynamics

Abstract In many physical problems the use of numerical simulations presents the only path to obtain insight into the behavior and evolution of the system of interest. GPU, CPU and MIC technologies are frequently employed for simulations on computational dynamics and we present results comparing different schemes for the numerical integration of ordinary differential systems (ODEs) in these architectures. The use of adapted methods with low memory storage (Low storage Runge–Kutta methods) gives good results for low precision studies, whereas the Taylor series method provides a powerful technique for high precision. We show how the computation of several dynamics indicators, such as a fast chaos indicator (FLI) or a phase shift indicator in small neuron networks (Central Pattern Generators), can be efficiently computed on these architectures by means of the numerical ODE methods executed through OpenCL. This high computational time reduction allows real-time simulations or generating video media. Program summary Program title: OCL-TIDES, OCL-RK Catalogue identifier: AEVW_v1_0 Program summary URL: http://cpc.cs.qub.ac.uk/summaries/AEVW_v1_0.html Program obtainable from: CPC Program Library, Queen’s University, Belfast, N. Ireland Licensing provisions: Standard CPC licence, http://cpc.cs.qub.ac.uk/licence/licence.html No. of lines in distributed program, including test data, etc.: 1836 No. of bytes in distributed program, including test data, etc.: 10,617 Distribution format: tar.gz Programming language: C and OpenCL. Computer: Any computer with a CPU or a GPU or a Xeon Phi. Operating system: Linux, MacOS, Windows. Has the code been vectorized or parallelized?: Yes, using the parallelization methods from OpenCL. RAM: Problem dependent Supplementary material: A video with a Fast Lyapunov indicator simulation is available (see Appendix A ). Classification: 4.3, 6.5. External routines: OpenCL version 1.2 Nature of problem: Solution of ODE problems in generic OpenCL environment oriented to large scale independent sets of initial conditions. Solution method: OpenCL parallel integrator based in Runge–Kutta or Taylor Series Method suitable for large sets of independent sets of initial conditions. Both are able to run either on CPU or in a GPU, using the parallelization methods from OpenCL. Running time: Problem dependent, sample tests take less than a minute to run.

[1]  Andrey Shilnikov,et al.  Complete dynamical analysis of a neuron model , 2012 .

[2]  Colin Tudge,et al.  Planet , 1999 .

[3]  George E. Karniadakis,et al.  Accelerating dissipative particle dynamics simulations on GPUs: Algorithms, numerics and applications , 2013, Comput. Phys. Commun..

[4]  Charalampos Skokos,et al.  The Lyapunov Characteristic Exponents and Their Computation , 2008, 0811.0882.

[5]  E. Hairer,et al.  Solving Ordinary Differential Equations II: Stiff and Differential-Algebraic Problems , 2010 .

[6]  B. M. Fulk MATH , 1992 .

[7]  A. Hodgkin,et al.  A quantitative description of membrane current and its application to conduction and excitation in nerve , 1952, The Journal of physiology.

[8]  G. Corliss,et al.  ATOMFT: solving ODEs and DAEs using Taylor series , 1994 .

[9]  Timothy A. Davis,et al.  Algorithm 930: FACTORIZE: An object-oriented linear system solver for MATLAB , 2013, TOMS.

[10]  J. Dormand,et al.  A family of embedded Runge-Kutta formulae , 1980 .

[11]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[12]  Adrian Doicu,et al.  Multi-core-CPU and GPU-accelerated radiative transfer models based on the discrete ordinate method , 2014, Comput. Phys. Commun..

[13]  Ananth Grama,et al.  PuReMD-GPU: A reactive molecular dynamics simulation package for GPUs , 2014, J. Comput. Phys..

[14]  Luke S. Smith,et al.  Towards a generalised GPU/CPU shallow-flow modelling tool , 2013 .

[15]  Roberto Barrio,et al.  Algorithm 924: TIDES, a Taylor Series Integrator for Differential EquationS , 2012, TOMS.

[16]  Lawrence M. Murray,et al.  GPU Acceleration of Runge-Kutta Integrators , 2012, IEEE Transactions on Parallel and Distributed Systems.

[17]  P. Cochat,et al.  Et al , 2008, Archives de pediatrie : organe officiel de la Societe francaise de pediatrie.

[18]  P ? ? ? ? ? ? ? % ? ? ? ? , 1991 .

[19]  Elena Lega,et al.  On the Relationship Between Fast Lyapunov Indicator and Periodic Orbits for Continuous Flows , 2002 .

[20]  Bruno Lévy,et al.  GPU‐accelerated atom and dynamic bond visualization using hyperballs: A unified algorithm for balls, sticks, and hyperboloids , 2011, J. Comput. Chem..

[21]  Clifford Hall,et al.  The Metropolis Monte Carlo method with CUDA enabled Graphic Processing Units , 2014, J. Comput. Phys..

[22]  E. Marder,et al.  Principles of rhythmic motor pattern generation. , 1996, Physiological reviews.

[23]  Roberto Barrio,et al.  Breaking the limits: The Taylor series method , 2011, Appl. Math. Comput..

[24]  R. Lewis,et al.  Low-storage, Explicit Runge-Kutta Schemes for the Compressible Navier-Stokes Equations , 2000 .

[25]  A. Abad,et al.  Computing derivatives of a gravity potential by using automatic differentiation , 2013 .

[26]  Elena Lega,et al.  THE FAST LYAPUNOV INDICATOR: A SIMPLE TOOL TO DETECT WEAK CHAOS. APPLICATION TO THE STRUCTURE OF THE MAIN ASTEROIDAL BELT , 1997 .

[27]  M. Hénon,et al.  The applicability of the third integral of motion: Some numerical experiments , 1964 .

[28]  J. Butcher Coefficients for the study of Runge-Kutta integration processes , 1963, Journal of the Australian Mathematical Society.

[29]  Fernando Blesa,et al.  TIDES tutorial : Integrating ODEs by using the Taylor Series Method , 2011 .

[30]  Andrew G. Glen,et al.  APPL , 2001 .

[31]  A Seibert,et al.  Mapping the Arnold web with a graphic processing unit. , 2011, Chaos.

[32]  Wen-mei W. Hwu,et al.  GPU Computing Gems Emerald Edition , 2011 .

[33]  Diego Rossinelli,et al.  GPU and APU computations of Finite Time Lyapunov Exponent fields , 2012, J. Comput. Phys..

[34]  Roberto Barrio,et al.  Reducing rounding errors and achieving Brouwer's law with Taylor Series Method , 2012 .

[35]  L. A. Darriba,et al.  Comparative Study of variational Chaos indicators and ODEs' numerical integrators , 2012, Int. J. Bifurc. Chaos.

[36]  Andrey Shilnikov,et al.  Order parameter for bursting polyrhythms in multifunctional central pattern generators. , 2011, Physical review. E, Statistical, nonlinear, and soft matter physics.

[37]  Aaftab Munshi,et al.  The OpenCL specification , 2009, 2009 IEEE Hot Chips 21 Symposium (HCS).

[38]  Louis B. Rall,et al.  An introduction to automatic differentiation , 1996 .

[39]  Ian J. Grimstead,et al.  GPU‐accelerated molecular mechanics computations , 2013, J. Comput. Chem..

[40]  K. C. Park,et al.  Construction of Integration Formulas For Initial Value Problems , 2012 .

[41]  R. Clewley,et al.  Key Bifurcations of Bursting Polyrhythms in 3-Cell Central Pattern Generators , 2013, PloS one.