The spectral cell method for wave propagation in heterogeneous materials simulated on multiple GPUs and CPUs
Efficient simulation of wave propagation in heterogeneous materials is still a challenging task. The spectral cell method, representing a combination of spectral elements with the fictitious domain concept, has proven to be an efficient approach for wave propagation analysis in materials with complicated microstructure. In this paper, we report details of parallel implementation of the spectral cell method using multi-core CPUs as well as GPUs. In our CPU implementation, we employ the OpenMP directives to parallelize the loops. On GPUs, however, we use the OpenCL framework to develop single- and multi-GPU versions of the code. In all of our implementations, the core operation is a sparse matrix-vector multiplication (SpMV) kernel. We analyze each implementation to determine its features and bottlenecks. The results show that speedups of up to 128 relative to serial CPU code can be achieved using multi-GPU code. © 2018, Springer-Verlag GmbH Germany, part of Springer Nature.