Graphics processing unit (GPU) computing architectures provide opportunities for massive parallelization at a low cost. We present our work on GPU parallelized integral equation frequency domain and micromagnetic time domain solvers. We show that efficiently implementing these solvers requires addressing the GPU memory use, efficient data structure handling, and using the GPU shared memory. We present several approaches computing integral and differential operators in Electromagnetics and Micromagnetics. In iterative integral equation methods and in Micromagnetics, one needs to evaluate superposition integrals and sparse matrix – vector products for differential operators. For evaluating the superposition integrals, we use two methods: non-uniform grid interpolation method (NGIM) and adaptive integral method (AIM). NGIM uses local interpolations and phase/amplitude compensation operations. AIM uses interpolations and FFTs. These methods are parallelized on GPUs. We demonstrate high parallelization efficiency with GPU-CPU speed-ups of 100-300 times. Use of GPU accelerated methods in electromagnetic integral equation and Micromagnetic solvers is demonstrated, including simulations of complex magnetic materials and devices.
We also introduce an approach of using GPUs for simulating ensembles (or streams) of solution realizations. In this approach, a solution for a large set of realizations is obtained within the same simulation. This approach allows reducing various computational overheads and opens new dimensions for parallelization. Solving for realization streams addresses a class of problems in which many simulations are required with only one or a few parameters modified. An example is the problem of simulating thermal effects in magnetic memories, in which many realization of a random thermal noise process are required for ensemble.