  This paper focuses on the design and implementing of GPU-accelerated Adaptive
Inverse Distance Weighting (AIDW) interpolation algorithm. The AIDW is an
improved version of the standard IDW, which can adaptively determine the power
parameter according to the spatial points distribution pattern and achieve more
accurate predictions than those by IDW. In this paper, we first present two
versions of the GPU accelerated AIDW, the naive version without profiting from
shared memory and the tiled version taking advantage of shared memory. We also
implement the naive version and the tiled version using the data layouts,
Structure of Arrays (AoS) and Array of aligned Structures (AoaS), on single and
double precision. We then evaluate the performance of the GPU-accelerated AIDW
by comparing it with its original CPU version. Experimental results show that:
on single precision the naive version and the tiled version can achieve the
speedups of approximately 270 and 400, respectively. In addition, on single
precision the implementations using the layout SoA are always slightly faster
than those using layout AoaS. However, on double precision, the speedup is only
about 8; and we have also observed that: (1) there are no performance gains
obtained from the tiled version against the naive version; and (2) the use of
SoA and AoaS does not lead to significant differences in computational
efficiency.
