Image-based physics simulations in heterogeneous media at a microscopic scale are a growing trend in various fields within and around Scientific Computing. We consider the scope of Numerical Homogenization, where micro-computed tomography is used to obtain digital models of physical samples, naturally leading to pixel and voxel-based solutions. In this context, the Finite Element Method (FEM) is commonly employed to solve the governing differential equations, via a system of algebraic equations. As image dimensions increase, the memory allocation due to the matrix associated with the FEM quickly becomes unfeasible, even in sparse format. Assembly-free strategies are adopted to reduce memory usage, with the caveat of increased computational cost. The Preconditioned Conjugate Gradient (PCG) method is widely employed to solve this sort of large-scale sparse linear systems , and is fitting to be adapted for assembly-free implementations. This work focuses on a massively parallel PCG solver applied to finite element analyses of heat conduction and linear elasticity on image-based models. Memory-efficiency is one of our main concerns, in an attempt to make feasible the employment of personal-use GPUs for large-scale simulations. The resulting solver is validated with an analytical benchmark, and by comparing the obtained results for a microtomographic model of a cast iron sample against experimental values found in the literature. Time and memory metrics are presented and discussed. It is shown that the developed program allows for homogenization studies of nearly 500 million degrees-of-freedom to be conducted in personal computers equipped with CUDA-enabled devices of 8 GB RAM, taking seconds or a few minutes per system solution with the PCG method. Up to 400× speed-up was observed in comparison to an analogous solver running in a 16-thread CPU. Our GPU implementation makes it possible to conduct, in a matter of minutes, homogenization studies that would take hours, or even days, in personal CPUs.
Read full abstract