论文部分内容阅读
遥感技术、通讯技术及计算机技术的快速发展,尤其随着高分辨率对地观测时代的到来,带来了对地观测数据的爆炸性增长和广泛应用。通过机载和星载传感器等不同途径获取的遥感数据正以每日TB级的速度增长。海量的遥感数据有待及时、有效的快速处理。与此同时,全球变化等复杂遥感应用则更多地结合大区域甚至覆盖全球的多时相、多平台、多波段、多空间分辨率的遥感图像进行处理。而且突发性应急遥感应用通常具有很高的处理时效性要求,需在几小时甚至几十分钟内完成大量的高精度遥感图像处理运算。因此,如何快速、自动地在短时间内进行高度密集的数据处理,是遥感图像处理及对地观测应用领域进一步发展面临的一个重要课题。 面向计算密集的高性能集群平台的各个系统层次都显然已经不能适应遥感数据处理中高度密集的数据吞吐压力,遥感图像处理在算法并行编程、处理速度和处理规模等多个方面均面临着挑战。为此,本文的研究将针对数据密集型遥感图像并行处理平台构建中面临的上述难题,开展数据密集型遥感图像处理并行编程模型、分布式遥感图像数据高速缓存管理模型、面向大规模遥感图像处理的遥感并行文件系统及任务树调度机制等关键技术研究,并试图建立高效、灵活的针对遥感数据处理算法的并行编程模型及相应的数据密集型遥感图像并行处理平台。 论文主要贡献和创新点如下: 1.提出了遥感数据处理中”数据密集型计算”问题的量化评价模型。在该量化指标模型中,采用遥感数据密集计算指数DIRS对遥感图像处理中的“数据密集型计算”问题进行量化表示与评价,即表示其数据密集程度。目前,对于遥感图像处理中的数据密集计算问题尚没有明确的定义和分析方法。而在本文中的遥感数据密集指数模型的提出,将为遥感数据处理应用的数据密集处理问题提供量化的指标表示与评价方法。 2.构建了面向数据密集的骨架式遥感并行编程模型。针对遥感数据并行处理中程序开发的难题,本文拟将骨架式并行编程和泛型编程引入遥感数据处理算法的并行开发中,提出一种面向数据密集型遥感图像处理的骨架式并行编程模型。该并行编程模型,通过提高并行编程的抽象层次,为同类遥感应用算法的并行求解提供了并行算法框架Skeleton及并行编程范式支持,只需简单的数据块操作定义和泛型编程模板参数实例化,便可隐式地实现算法并行化而无需关心系统相关并行实现细节,从而解决并行编程困难问题。借助数据预取、计算与I/O重叠等优化技术,以提高并行算法的数据吞吐性能及扩展能力。 3.建立了基于分布式内存的全局遥感图像数据模型。本文提出了可在跨节点的分布式内存空间进行自动分布的遥感图像数据模型。模型定义了多维遥感数据的在分布式内存中的数据组织结构、划分策略、跨节点内存数据布局与传输机制。借助于MPI单边通信和数据序列化以提供全局数据视图以及透明高效的跨节点传输,并通过跨节点内存数据布局优化提高数据局部性和访问效率。该模型突破单节点的内存大小限制,解决了大幅遥感图像数据的内存载入与跨节点传输问题。 4.提出了基于有向无环图(DAG)的大规模遥感图像处理任务树调度方法。本文提出基于DAG和状态队列的动态任务树调度方法,对处理任务进行高效调度,将任务间数据依赖关系与并行算法的控制逻辑解耦,解决由大量任务间数据依赖关系带来的遥感算法并行控制逻辑复杂、处理规模和处理性能难以扩展等问题。 基于上述成果,本文以全国范围ETM+(15m)遥感图像镶嵌及PIPS-X并行遥感图像处理系统的构建作为应用实例,对数据密集型遥感图像并行处理平台及其关键技术进行实验验证和处理性能分析。由实验结果可知,基于RS-DPCF遥感并行计算框架的数据密集型遥感图像并行处理平台具有高效、友好的并行可编程性,且基于该处理平台的典型应用实例也展现了非常好的数据吞吐性能和吞吐能力、计算节点扩展能力及数据处理规模扩展能力。