测绘学报 ›› 2014, Vol. 43 ›› Issue (9): 969-975.doi: 10.13485/j.cnki.11-2089.2014.0122

• 学术论文 • 上一篇    下一篇

几何部件缓冲区域合并的Buffer算法及其并行优化方法

范俊甫1,2,3,马廷4,周成虎4,季民5,周玉科4,许涛3,4   

  1. 1. 山东理工大学
    2. 中国科学院 地理科学与资源研究所
    3. 中国科学院大学
    4. 中国科学院地理科学与资源研究所
    5. 山东科技大学
  • 收稿日期:2013-12-06 修回日期:2014-06-23 出版日期:2014-09-20 发布日期:2014-09-25
  • 通讯作者: 范俊甫 E-mail:fanjf@lreis.ac.cn
  • 基金资助:

    国家科技支撑计划项目;国家科技支撑计划项目;中国科学院重点部署项目

Research on a Buffer Algorithm Based on Region-Merging of Buffered Geometry Components and Its Parallel Optimization

FAN Junfu1,2,3,MA Ting1,ZHOU Chenghu1,JI Min4,ZHOU Yuke1,XU Tao1,3   

  1. 1. Institute of Geographic and Nature Resources Research, Chinese Academy of Sciences
    2. Shandong University of Technology
    3. University of Chinese Academy of Sciences
    4. Shan Dong University of Science and Technology
  • Received:2013-12-06 Revised:2014-06-23 Online:2014-09-20 Published:2014-09-25
  • Contact: FAN Junfu E-mail:fanjf@lreis.ac.cn

摘要:

摘 要:本文在介绍一种基于几何部件缓冲区域合并的矢量数据缓冲区生成算法的基础上,采用数据并行思想和MPI编程模型对缓冲区算法的并行化实现和优化方法开展研究。实验结果显示,与ArcGIS Buffer工具相比,(1)当缓冲区结果多边形不合并时,虽然串行缓冲区算法的时间开销较高,但可轻易通过并行方式实现加速。(2)当缓冲区结果合并时,本文算法要明显优于ArcGIS Buffer工具,并且经过优化的并行缓冲区算法表现出了更高的计算效率和更大规模的数据处理能力。因此,基于几何部件缓冲区域合并的Buffer算法具备一定的实用价值,本文提出的按结点数量的任务分解方法和进程间结果“树状”归并策略是对缓冲区算法进行并行优化的有效途径,对GIS中其他矢量分析算法的并行化及相关优化工作也具有一定的借鉴意义。

关键词: 并行算法, 缓冲区, MPI, 任务分解, “树状”归并

Abstract:

Abstract: The double-sided parallel line method and the geometry rasterization-based dilation method have been extensively used for buffer generation in spatial analysis. The former involves a series of complex numerical operations and may not be suitable for parallelized computation; the latter inevitably introduces precision problems and computation complexity. In this paper, we proposed a parallel buffer construction algorithm based on region-merging of buffered geometry components in association with the message passing interface (MPI) parallel programming model. Several optimization strategies were studied for the parallel buffer algorithm. The performances of both serial and parallel buffer algorithms were comparably analyzed. Three performance bottlenecks which significantly impact the algorithm efficiency were identified: area merging operation, task load balance strategy and MPI inter-process results merging methods. Corresponding optimization approaches involving tree-like area and inter-process results merging and the parallel task partition based on vertex number oriented parallel task partition strategy were suggested to overcome these bottlenecks. Several experiments were carried out to examine the performance efficiency of the optimized parallel algorithm. The estimation results suggested that our method could provide high performance and processing ability for buffer construction in a parallel environment. Our method could provide insights into the parallelization of spatial analysis algorithm.

Key words: Parallel Algorithm, Buffer, MPI, Task Partition, Tree-like Merging

中图分类号: