论文部分内容阅读
近年来,快速发展的地理信息技术得到了广泛应用,同时空间信息采集技术突飞猛进,地理空间数据与日俱增,尤以栅格空间数据为甚,从而导致GIS栅格数据分析面临巨大的计算压力。多核、众核的新型硬件架构的出现使得并行计算技术不再局限于超级计算机的范畴内,并行计算技术逐渐普及。应用并行计算技术实现海量数据条件下栅格数据分析的并行化处理,能有效提高计算处理效率。 本文面向GIS空间分析中的栅格数据分析,进行并行化方法探索研究。以地形分析中的地形因子分析和区域地形等高线提取两种典型栅格数据分析方法为例,结合数据并行、任务并行、双层并行等若干并行模式,探究多核CPU/众核GPU计算环境下栅格数据分析的并行方法设计与实现,最后通过对比实验分析不同并行方法在不同栅格数据分析方法的应用效率及优缺点,及各自的适用性,为GIS栅格数据分析的并行化提供参考。 本文的主要工作和研究内容如下: (1)基于栅格数据分析并行化方法研究的总目标,以栅格数据分析中两种典型计算问题为例进行不同并行模式的适用性分析研究。 (2)基于多核共享内存模型和Windows多线程技术对典型栅格数据分析方法进行不同并行模式的并行化设计与实现,同时引入生产者—消费者模型和线程池技术对其进行了进一步的并行优化设计。 (3)基于众核流处理器模型和CUDA编程模型对栅格数据分析中具有较高计算独立性的计算问题进行并行化方法研究。根据采用的存储器差异,提出了多种不同的并行方法。 (4)基于不同并行计算环境在解决同种栅格数据分析问题上效率差异对比,进行地形因子分析CPU/GPU异构并行计算方法研究,为栅格数据分析的异构并行化提供参考。 综上所述,本研究是作者将多核/众核等单机环境中多种并行计算技术应用于栅格数据分析方法的一次尝试。研究结果表明,这些并行计算技术具有良好的加速效果,但是不同并行方法对于不同类型栅格数据分析的加速效率差异显著,应根据实际栅格数据分析的特点选择适宜的并行方法,逻辑复杂度较高的栅格数据分析方法更适宜采用多核环境的共享内存模型进行并行化设计,包含大量独立计算过程的栅格数据分析更适宜采用众核环境下的流处理器模型进行并行化设计。此外,异构并行计算方法较传统单一并行环境的并行方法在某些栅格数据分析处理上有着更高的效率,是栅格数据分析进一步发展的重要手段。