Article ID | Journal | Published Year | Pages | File Type |
---|---|---|---|---|
507020 | Computers & Geosciences | 2013 | 6 Pages |
Kriging algorithms are a group of important interpolation methods, which are very useful in many geological applications. However, the algorithm based on traditional general purpose processors can be computationally expensive, especially when the problem scale expands. Inspired by the current trend in graphics processing technology, we proposed an efficient parallel scheme to accelerate the universal Kriging algorithm on the NVIDIA CUDA platform. Some high-performance mathematical functions have been introduced to calculate the compute-intensive steps in the Kriging algorithm, such as matrix–vector multiplication and matrix–matrix multiplication. To further optimize performance, we reduced the memory transfer overhead by reconstructing the time-consuming loops, specifically for the execution on GPU. In the numerical experiment, we compared the performances among different multi-core CPU and GPU implementations to interpolate a geological site. The improved CUDA implementation shows a nearly 18× speedup with respect to the sequential program and is 6.32 times faster compared to the OpenMP-based version running on Intel Xeon E5320 quad-cores CPU and scales well with the size of the system.
► The compute-intensive part in the universal Kriging algorithm is examined and re-implemented. ► Memory transfer overhead on GPU is largely reduced by reconstructing time-consuming loops. ► The improved CUDA program shows salient advantages over traditional CPU implementations.