GPU software development
GPU acceleration provides new and innovative possibilities for computing intensive software. We use GPU acceleration in out rolling mill software to make it fit for usage in process automations. We have developed a compact and powerful toolkit for GPU-based FEM and FVM applications which we also offer for client software projects.
As a relatively simple example of a finite-volume (FV-) computation we use a tube cooling simulation to highlight the possible gain of a GPU-accelerated approach. We compare the numerical solution of the transient thermal conduction equation with different methods, both on a CPU (AMD Ryzen 5 3600, single thread) and a GPU (Nvidia RTX 2080 Ti). You can switch through the images of the temperature distribution results in the gallery on the right, starting with 1200°C after 0 seconds, in steps of 10 seconds.
The problem is solved using explicit and implicit time stepping, the latter with direct or iterative system matrix inverting. The resolution and thus, the number of unknowns in the system is varied to study the impact of the problem size. For more than 200000 unknowns we see an acceleration factor as high as ~45 of the GPU being faster than the CPU. When the problem get smaller, the CPU Cache somewhat helps to close this gap.
The heat treatment of plate stacks in a flat bed furnace has been simulated to optimize the process and the controlling automation. A highlight is the face-to-face contact algorithm which allows arbitrary positioning of plate stacks in the tub. The figure shows the temperature distribution at the end of the heating process.