Many engineering problems that rely on physical laws and relations can be modelled in the form of differential equations. Differential Equations, in general, are either ODEs or PDEs regarding the number of variables. In this thesis work, we are particularly interested in the acceleration of a chemical reaction simulation that relies on a system of stiff ODEs targeting heterogeneous computing systems. We intend to explore Field-Programmable Gate Arrays (FPGAs) and Graphics Processing Units (GPUs) with mixed precision. Our case study is CCATT-BRAMS since our current project is a continuation of the master's thesis research. During the previous project, we used the Rosenbrock method in CCATT-BRAMS, and we implemented the Jacobi algorithm to improve $Ax = b$ linear problem. This research intends to go further by implementing implicit methods for stiff ODEs in OpenCL. In our literature review, we have identified five base algorithms of interest when solving chemical reaction problems using ODEs, namely, Quasi-Steady-State-Approximation, Backward differentiation formulas, Runge-Kutta, Rosenbrock, and Waveform Relaxation. During BEPE project, we are going to use LARA and ANTAREX, both are domain specific languages, for precision tuning of the generated OpenCL kernels. These tools has shown some promising results regarding precision tuning and code refactoring.
News published in Agência FAPESP Newsletter about the scholarship: