High-performance parallel implementations of flow accumulation algorithms for multicore architectures

Abstract The calculation of flow accumulation is one of the tasks in digital terrain analysis that is not easy to parallelize. The aim of this work was to develop new, faster ways to calculate flow accumulation and achieve shorter execution times than popular software tools for this purpose. We prepared six implementations of algorithms based on both top-down and bottom-up approaches and compared their performance using 118 different data sets (including 59 subcatchments and 59 full frames) of various sizes but the same area and resolution. Our results clearly show that the parallel top-down algorithm (without the use of OpenMP tasks) is the most suitable implementation for flow accumulation calculations of all we have tested. The mean and median execution times of this algorithm are the shortest in all cases studied. The implementation is characterized by high speedups. The execution times of the parallel top-down implementation are two orders of magnitude shorter compared to the Flow Accumulation tool from ArcGIS Desktop. This is important, considering the performance of popular GIS platforms, where it takes hours to perform the same kind of operations with the use of similar equipment.

[1]  A-Xing Zhu,et al.  Review on algorithms of dealing with depressions in grid DEM , 2019, Ann. GIS.

[2]  Barbara Chapman,et al.  Using OpenMP - portable shared memory parallel programming , 2007, Scientific and engineering computation.

[3]  J. Coe,et al.  The influence of vegetation on debris-flow initiation during extreme rainfall in the northern Colorado Front Range , 2016 .

[4]  Richard Gloaguen,et al.  TecDEM: A MATLAB based toolbox for tectonic geomorphology, Part 1: Drainage network preprocessing and stream profile analysis , 2011, Comput. Geosci..

[5]  Przemyslaw Stpiczynski,et al.  Language-based vectorization and parallelization using intrinsics, OpenMP, TBB and Cilk Plus , 2018, The Journal of Supercomputing.

[6]  Lawrence W. Martz,et al.  Numerical definition of drainage network and subcatchment areas from digital elevation models , 1992 .

[7]  S. Gruber,et al.  Land-Surface parameters and objects in hydrology , 2008 .

[8]  K. Beven,et al.  A physically based, variable contributing area model of basin hydrology , 1979 .

[9]  Assessing the Impact of Urban Growth on Flooding with an Integrated Curve Number-Flow Accumulation Approach , 2001 .

[10]  Guiyun Zhou,et al.  A fast and simple algorithm for calculating flow accumulation matrices from raster digital elevation , 2019, Frontiers of Earth Science.

[11]  L. Martz,et al.  The assignment of drainage direction over flat surfaces in raster digital elevation models , 1997 .

[12]  T. G. Freeman,et al.  Calculating catchment area with divergent flow based on a regular grid , 1991 .

[13]  Pierre Soille,et al.  An Efficient Algorithm for Drainage Network Extraction on DEMs , 1994, J. Vis. Commun. Image Represent..

[14]  Jan Westerholm,et al.  Parallel flow accumulation algorithms for graphical processing units with application to RUSLE model , 2016, Comput. Geosci..

[15]  James Reinders,et al.  Intel Xeon Phi Coprocessor High Performance Programming , 2013 .

[16]  L. Jankowski,et al.  Analysis of reworked sediments as a basis of the Palaeogene-Neogene palaeogeography reinterpretation: Case study of the Roztocze region (SE Poland) , 2017 .

[17]  Ralf Gruber,et al.  HPC@Green IT: Green High Performance Computing Methods , 2010 .

[18]  Feng Ma,et al.  Drainage network extraction from a high-resolution DEM using parallel programming in the .NET Framework , 2017 .

[19]  Neil S. Arnold,et al.  A new approach for dealing with depressions in digital elevation models when calculating flow accumulation values , 2010 .

[20]  Guiyun Zhou,et al.  An efficient variant of the Priority-Flood algorithm for filling depressions in raster digital elevation models , 2016, Comput. Geosci..

[21]  Caspar J. M. Hewett,et al.  Modelling and managing critical source areas of diffuse pollution from agricultural land using flow connectivity simulation , 2005 .

[22]  Serge Massicotte,et al.  Determination of the drainage structure of a watershed using a digital elevation model and a digital river and lake network , 2001 .

[23]  Christian Terboven,et al.  Using OpenMP - The Next Step: Affinity, Accelerators, Tasking, and SIMD , 2017, Using OpenMP - The Next Step.

[24]  S. Gruber,et al.  Chapter 7 Land-Surface Parameters and Objects in Hydrology , 2009 .

[25]  Janusz S. Kowalik,et al.  Using OpenCL - Programming Massively Parallel Computers , 2012, Advances in Parallel Computing.

[26]  John B. Lindsay,et al.  Efficient hybrid breaching‐filling sink removal methods for flow path enforcement in digital elevation models , 2016 .

[27]  S. Domisch,et al.  Descriptor : A high-resolution stream fl ow and hydrological metrics dataset for ecological modeling using a regression model , 2018 .

[28]  S. K. Jenson,et al.  Extracting topographic structure from digital elevation data for geographic information-system analysis , 1988 .

[29]  Antonio J. Rueda Ruiz,et al.  A flooding algorithm for extracting drainage networks from unprocessed digital elevation models , 2013, Comput. Geosci..

[30]  J. Rodzik,et al.  Physico-geographical mesoregions of Poland: Verification and adjustment of boundaries on the basis of contemporary spatial data , 2018 .

[31]  Lawrence W. Martz,et al.  Automated channel ordering and node indexing for Raster channel networks , 1997 .

[32]  Richard R. Jones,et al.  Algorithms for using a DEM for mapping catchment areas of stream sediment samples , 2002 .

[33]  Richard Barnes,et al.  An efficient assignment of drainage direction over flat surfaces in raster digital elevation models , 2015, Comput. Geosci..

[34]  Sébastien Limet,et al.  Parallel Computing Flow Accumulation in Large Digital Elevation Models , 2011, ICCS.

[35]  I. Chaubey,et al.  Delineating floodplain and upland areas for hydrologic models: a comparison of methods , 2016 .

[36]  R. Bras,et al.  A physically-based method for removing pits in digital elevation models , 2007 .

[37]  S. Uhlenbrook,et al.  Modeling spatial patterns of saturated areas: An evaluation of different terrain indices , 2004 .

[38]  F. Rengers,et al.  Controls on debris‐flow initiation on burned and unburned hillslopes during an exceptional rainstorm in southern New Mexico, USA , 2019, Earth Surface Processes and Landforms.

[39]  D. Tarboton A new method for the determination of flow directions and upslope areas in grid digital elevation models , 1997 .

[40]  Max Grossman,et al.  Professional CUDA C Programming , 2014 .

[41]  Antonio J. Rueda Ruiz,et al.  A comparison of native GPU computing versus OpenACC for implementing flow-routing algorithms in hydrological applications , 2016, Comput. Geosci..

[42]  Sunita Chandrasekaran,et al.  OpenACC for Programmers: Concepts and Strategies , 2017 .

[43]  Oswald Marinoni,et al.  A GIS-based method to calculate flow accumulation by considering dams and their specific operation time , 2008, Comput. Geosci..

[44]  Chengzhi Qin,et al.  Parallelizing flow-accumulation calculations on graphics processing units - From iterative DEM preprocessing algorithm to recursive multiple-flow-direction algorithm , 2012, Comput. Geosci..

[45]  Jeffrey Scott Vitter,et al.  Efficient Flow Computation on Massive Grid Terrain Datasets , 2003, GeoInformatica.

[46]  David A. Patterson,et al.  Computer Organization and Design, Fifth Edition: The Hardware/Software Interface , 2013 .

[47]  David G. Tarboton,et al.  Parallel Flow-Direction and Contributing Area Calculation for Hydrology Analysis in Digital Elevation Models , 2009, PDPTA.

[48]  Richard Barnes,et al.  Parallel non-divergent flow accumulation for trillion cell digital elevation models on desktops or clusters , 2016, Environ. Model. Softw..

[49]  M. López‐Vicente,et al.  Computing structural and functional flow and sediment connectivity with a new aggregated index: A case study in a large Mediterranean catchment. , 2019, The Science of the total environment.

[50]  T. Brzezińska-Wójcik,et al.  Zastosowanie ArcNEO do oceny przejawów neotektoniki na przykładzie zlewni górnego Wieprza (Roztocze, środkowo-wschodnia Polska) , 2014 .

[51]  John F. O'Callaghan,et al.  The extraction of drainage networks from digital elevation data , 1984, Comput. Vis. Graph. Image Process..

[52]  Yosoon Choi,et al.  A new algorithm to calculate weighted flow-accumulation from a DEM by considering surface and underground stormwater infrastructure , 2012, Environ. Model. Softw..

[53]  Lian P. Rampi,et al.  Comparison of Flow Direction Algorithms in the Application of the CTI for Mapping Wetlands in Minnesota , 2014, Wetlands.

[54]  Pin‐Chun Huang Analysis of Hydrograph Shape Affected by Flow-Direction Assumptions in Rainfall-Runoff Models , 2020, Water.

[55]  N. P. Griebeler,et al.  Flow accumulation based method for the identification of erosion risk points in unpaved roads , 2019, Environmental Monitoring and Assessment.

[56]  Tim Burt,et al.  Topographic controls of soil moisture distributions , 1985 .

[57]  Salles V. G. Magalhães,et al.  A New Method for Computing the Drainage Network Based on Raising the Level of an Ocean Surrounding the Terrain , 2012, AGILE Conf..

[58]  Antonio J. Rueda Ruiz,et al.  Parallel drainage network computation on CUDA , 2010, Comput. Geosci..

[59]  L. Martz,et al.  An outlet breaching algorithm for the treatment of closed depressions in a raster DEM , 1999 .

[60]  M. López-Vicente,et al.  Runoff simulation with eight different flow accumulation algorithms: Recommendations using a spatially distributed and open-source model , 2014, Environ. Model. Softw..

[61]  Shadrack Mwakalila,et al.  Estimation of stream flows of ungauged catchments for river basin management , 2003 .

[62]  Guangqian Wang,et al.  An efficient and comprehensive method for drainage network extraction from DEM with billions of pixels using a size-balanced binary search tree , 2015 .

[63]  Helena Mitasova,et al.  Efficient extraction of drainage networks from massive, radar-based elevation models with least cost path search , 2011 .