An IO-efficient parallel implementation of an R2 viewshed algorithm for large terrain maps on a CUDA GPU

A rapid and flexible parallel approach for viewshed computation on large digital elevation models is presented. Our work is focused on the implementation of a derivate of the R2 viewshed algorithm. Emphasis has been placed on input/output (IO) efficiency that can be achieved by memory segmentation and coalesced memory access. An implementation of the parallel viewshed algorithm on the Compute Unified Device Architecture (CUDA), which exploits the high parallelism of the graphics processing unit, is presented. This version is referred to as r.cuda.visibility. The accuracy of our algorithm is compared to the r.los R3 algorithm (integrated into the open-source Geographic Resources Analysis Support System geographic information system environment) and other IO-efficient algorithms. Our results demonstrate that the proposed implementation of the R2 algorithm is faster and more IO efficient than previously presented IO-efficient algorithms, and that it achieves moderate calculation precision compared to the R3 algorithm. Thus, to the best of our knowledge, the algorithm presented here is the most efficient viewshed approach, in terms of computational speed, for large data sets.

[1]  M. J. van Kreveld,et al.  Variations on sweep algorithms: efficient computation of extended viewsheds and class intervals , 1996 .

[2]  Andrej Osterman,et al.  Implementation of the r . cuda . los module in the open source GRASS GIS by using parallel computation on the NVIDIA CUDA graphic cards , 2012 .

[3]  Salles V. G. Magalhães,et al.  Multiple Observer Siting in Huge Terrains Stored in External Memory , 2011 .

[4]  Tsuyoshi Hamada,et al.  A GRASS GIS parallel module for radio-propagation predictions , 2014, Int. J. Geogr. Inf. Sci..

[5]  Mark Lake,et al.  Tailoring GIS Software for Archaeological Applications: An example concerning Viewshed Analysis , 1998 .

[6]  Mark Lake,et al.  Visibility Studies in Archaeology: A Review and Case Study , 2003 .

[7]  Damjan Strnad,et al.  Parallel terrain visibility calculation on the graphics processing unit , 2011, Concurr. Comput. Pract. Exp..

[8]  David Izraelevitz,et al.  A Fast Algorithm for Approximate Viewshed Computation , 2003 .

[9]  Howard Mannin Dodd The Validity of Using a Geographic Information System's Viewshed Function as a Predictor for the Reception of Line-of-Sight Radio Waves , 2001 .

[10]  Li Kuang,et al.  Accelerating geospatial analysis on GPUs using CUDA , 2011, Journal of Zhejiang University SCIENCE C.

[11]  Kristofor Lee Kvarfordt Planning for closure of the Logan City/Cache County landfill and surrounding landscape. , 2011 .

[12]  Shaowen Wang,et al.  A parallel computing approach to viewshed analysis of large terrain data using graphics processing units , 2013, Int. J. Geogr. Inf. Sci..

[13]  Jack W. Davidson,et al.  Memory access coalescing: a technique for eliminating redundant memory accesses , 1994, PLDI '94.

[14]  Salles V. G. Magalhães,et al.  More efficient terrain viewshed computation on massive datasets using external memory , 2012, SIGSPATIAL/GIS.

[15]  A. Kukushkin,et al.  Radio wave propagation in the marine boundary layer , 2004 .

[16]  John Amanatides,et al.  A Fast Voxel Traversal Algorithm for Ray Tracing , 1987, Eurographics.

[17]  Emilio L. Zapata,et al.  Simultaneous computation of total viewshed on large high resolution grids , 2013, Int. J. Geogr. Inf. Sci..

[18]  Yu Liu,et al.  Optimization for viewshed analysis on GPU , 2011, 2011 19th International Conference on Geoinformatics.

[19]  Andrej Hrovat,et al.  An open-source radio coverage prediction tool , 2010, ICC 2010.

[20]  Laura Toma,et al.  Viewsheds on terrains in external memory , 2012, SIGSPACIAL.

[21]  A. Kukushkin,et al.  Radio Wave Propagation in the Marine Boundary Layer: KUKUSHKIN:RADIO WAVE O-BK , 2004 .

[22]  W. Randolph Franklin,et al.  Tradeoffs when Multiple Observer Siting on Large Terrain Cells , 2006 .

[23]  W. Randolph Franklin Higher isn ’ t Necessarily Better : Visibility Algorithms and Experiments , 1994 .