Date of Completion

1-14-2019

Embargo Period

1-7-2019

Keywords

SIMD, SIMT, chemical kinetics, reactive-flow, analytical Jacobian

Major Advisor

Chih-jen Sung

Associate Advisor

Baki Cetegen

Associate Advisor

Tianfeng Lu

Associate Advisor

Bryan Weber

Associate Advisor

Xinyu Zhao

Field of Study

Mechanical Engineering

Degree

Doctor of Philosophy

Open Access

Open Access

Abstract

This work details efforts to reduce the cost of using detailed chemical kinetic modeling in realistic reactive-flow simulations, utilizing analytical Jacobian evaluation and vectorized-computing on the central processing unit (CPU), graphics processing unit (GPU) and other hardware-accelerators.

The first part of this thesis investigated GPU-based ordinary differential equation (ODE) methods for stiff chemical kinetics. A fifth-order implicit Runge--Kutta method and two fourth-order exponential integration methods were implemented for the GPU and paired with the analytical chemical kinetic Jacobian software pyJac. The performance of each algorithm was compared with a commonly used CPU-based implicit integrator CVODEs. The implicit Runge--Kutta method running on a single Tesla C2075 GPU was equivalent to CVODEs running on 12-38 CPU cores for integration of hydrogen and methane kinetic models using a smaller global integration time-step, however the performance of the GPU-solver degraded at a larger time-steps due to thread divergence and higher memory traffic.

The second part of this work investigated the performance of vectorized evaluation of constant-pressure/volume thermochemical source-term and sparse/dense chemical kinetic Jacobians using single-instruction, multiple-data (SIMD) and single-instruction, multiple thread (SIMT) paradigms; the developed codes were additionally incorporated into pyJac. A new formulation of the chemical kinetic governing equations was derived and verified, resulting in greatly increased Jacobian sparsities. Significant speedups were found for shallow-vectorized OpenCL source-rate evaluation as compared with a parallel OpenMP code, increasing for sparse and dense chemical kinetic Jacobian evaluation. Further, the developed work was shown to be orders of magnitude faster than a simple first-order finite-difference Jacobian approach.

Finally, several CPU-vectorized linearly-implicit Rosenbrock solvers were adapted for use with pyJac, and validated against CVODEs. The open-source computational fluid dynamics code OpenFOAM was extended to utilize the vectorized solvers, and the eddy dissipation concept combustion model was adapted for their use. The OpenFOAM-coupled vectorized solver was validated over a range of zero-dimensional homogeneous ignition problem against Cantera, before its performance and precision were compared to built-in OpenFOAM solvers for a case modeling the Sandia Flame D; a speedup of 12-15x was found for the vectorized solver.

Share

COinS