Ordinary differential equations (ODEs) are a widespread formalism for the mathematical modeling of natural and engineering systems, whose analysis is generally performed by means of numerical integration methods. However, real-world models are often characterized by stiffness, a circumstance that can lead to prohibitive execution times. In such cases, the practical viability of many computational tools—e.g., sensitivity analysis—is hampered by the necessity to carry out a large number of simulations. In this work, we present ginSODA, a general-purpose black-box numerical integrator that distributes the calculations on graphics processing units, and allows to run massive numbers of numerical integrations of ODE systems characterized by stiffness. By leveraging symbolic differentiation, meta-programming techniques, and source code hashing, ginSODA automatically builds highly optimized binaries for the CUDA architecture, preventing code re-compilation and allowing to speed up the computation with respect to the sequential execution. ginSODA also provides a simplified Python interface, which allows to define a system of ODEs and the test to be performed in a few lines of code. According to our results, ginSODA provides up to a 25 × speedup with respect to the sequential execution.

(2019). ginSODA: massive parallel integration of stiff ODE systems on GPUs [journal article - articolo]. In THE JOURNAL OF SUPERCOMPUTING. Retrieved from http://hdl.handle.net/10446/131185

ginSODA: massive parallel integration of stiff ODE systems on GPUs

Cazzaniga, Paolo;Mauri, Giancarlo
2019-01-01

Abstract

Ordinary differential equations (ODEs) are a widespread formalism for the mathematical modeling of natural and engineering systems, whose analysis is generally performed by means of numerical integration methods. However, real-world models are often characterized by stiffness, a circumstance that can lead to prohibitive execution times. In such cases, the practical viability of many computational tools—e.g., sensitivity analysis—is hampered by the necessity to carry out a large number of simulations. In this work, we present ginSODA, a general-purpose black-box numerical integrator that distributes the calculations on graphics processing units, and allows to run massive numbers of numerical integrations of ODE systems characterized by stiffness. By leveraging symbolic differentiation, meta-programming techniques, and source code hashing, ginSODA automatically builds highly optimized binaries for the CUDA architecture, preventing code re-compilation and allowing to speed up the computation with respect to the sequential execution. ginSODA also provides a simplified Python interface, which allows to define a system of ODEs and the test to be performed in a few lines of code. According to our results, ginSODA provides up to a 25 × speedup with respect to the sequential execution.
articolo
2019
Nobile, Marco S.; Cazzaniga, Paolo; Besozzi, Daniela; Mauri, Giancarlo
(2019). ginSODA: massive parallel integration of stiff ODE systems on GPUs [journal article - articolo]. In THE JOURNAL OF SUPERCOMPUTING. Retrieved from http://hdl.handle.net/10446/131185
File allegato/i alla scheda:
File Dimensione del file Formato  
Nobile2019_Article_GinSODAMassiveParallelIntegrat.pdf

Solo gestori di archivio

Versione: publisher's version - versione editoriale
Licenza: Licenza default Aisberg
Dimensione del file 1.02 MB
Formato Adobe PDF
1.02 MB Adobe PDF   Visualizza/Apri
Pubblicazioni consigliate

Aisberg ©2008 Servizi bibliotecari, Università degli studi di Bergamo | Terms of use/Condizioni di utilizzo

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10446/131185
Citazioni
  • Scopus 4
  • ???jsp.display-item.citation.isi??? 4
social impact