论文部分内容阅读
等高线是地图的重要组成部分,被设计来近似的表达地形变化特征,成为地质勘探、气象、旅游开发等领域重要的成果表达图件。同时,随着对地观测、激光雷达技术的发展,使得多尺度的DEM数据获取更加灵活、精度提升,从而亦导致数据量的迅猛上涨,然而传统的GIS信息容量小,无法对海量DEM进行等高线的快速、准确生成,迫切需要研发高性能等高线并行生成算法解决当下瓶颈问题。近年来,GPU集群的快速发展为大区域、海量DEM转等高线提供了新的机遇。国内外学者对等高线生成并行算法及GPU架构进行了大量研究,但是对等高线生成并行算法的研究仍存在拼接效率低的问题,未考虑GPU的高效计算能力,遇到明显的效率提升瓶颈;另一方面GPU中对于DEM转等高线算法并行化中的DEM存储结构研究亦不多,导致GPU读取效率提升不明显。鉴于此,本文在分析传统DEM转等高线算法的基础上,研究基于CPU/GPU协同架构下的DEM转等高线并行算法,重点研究栅格数据划分、GPU数据存储映射及GPU内部与CPU节点之间数据块的等高线拼接问题,探讨DEM转等高线并行任务调度及CPU/GPU协同调度模式策略,设计并实现了基于CPU/GPU协同的DEM转等高线并行算法,并对该算法进行了正确性、效率性能上的测试与分析。论文的主要研究内容包括:(1)DEM数据划分。在总结影响数据划分的因素以及常见栅格数据划分方法的基础之上,结合DEM转等高线算法的计算特点以及GPU内存限制的要求,设计基于GPU内存限制的重叠划分方式,减少进程间通信,适应大数据量计算。(2)GPU内部数据的存储映射。结合GPU多线程的体系结构以及DEM的数据存储形式,为加快GPU访问速度,在GPU内存储DEM数据以及等高线结果时对其数据结构进行重新组织,设计合理的数据存储映射方式,方便GPU线程快速读取。(3)GPU内和计算节点之间等高线拼接方法。针对数据划分导致的等高线断裂问题,在分析断裂等高线类型的基础上,针对不同类型设计不同的拼接方法对其进行拼接。其中,等高线的拼接包括GPU内部的等高线拼接以及CPU之间的等高线拼接。(4)CPU/GPU协同调度设计。结合CPU/GPU协同并行模型对DEM转等高线从任务分解、任务调度、任务协同三部分进行分析,重点阐述动态数据分发、GPU内部线程调度以及GPU内与CPU间的文件式并行拼接策略,并最终形成完整的CPU/GPU协同调度模式。(5)并行算法测试与分析。搭建并行化所需的软硬件平台,设计实现DEM转等高线并行算法,选择不同数据对并行算法进行正确性、效率的评估,分析算法的并行时间、加速比值以及与已有CPU并行算法的比较。综上所述,本文提出了 GPU内部与CPU之间的并行拼接策略,解决了等高线并行拼接难的问题,保证了地理要素的完整性;设计了针对DEM转等高线的CPU/GPU协同并行模式,通过DEM的重新存储与调度方式,提高并行效率。实验结果表明,GPU内部与CPU之间的并行拼接策略在保证了等高线的正确性前提下提高了并行效率,CPU/GPU协同的并行模式充分发挥了 GPU高效计算能力和CPU的灵活调度能力,大大减少了执行时间,与传统CPU计算相比,优势明显。