论文部分内容阅读
并行可视化是将并行处理技术与可视化技术相结合的可视化研究方向,是提高可视化效能的有效技术途径,已成为科学可视化技术领域的研究热点,在科学计算和工程分析中占据着非常重要的地位。并行可视化技术虽然具有很大发展潜力和广阔应用前景,但是,至今大规模科学数据并行可视化仍面临着诸如数据预处理时间长、并行绘制效率不高等问题,要实现大规模数据的实时并行可视化仍然面临严峻挑战。随着计算机硬件技术不断发展,尤其是GPU技术的不断革新,高性能GPU集群的可视化能力得到了突飞猛进的发展,这为并行可视化的发展带来了新的契机,为实现大规模数据的高效、实时和高分辨率可视化提供了新的平台。本文以提高大规模数据并行可视化效率为目标,重点对大规模数据的组织划分、并行绘制及并行图像合成等关键技术问题进行了深入研究。取得的主要创新性研究成果包括如下几个方面:(1)针对目前二叉区间树结构存在构造时间长、数据预处理时间无法控制等问题,本文提出一种基于栅格划分的二叉区间树节点构造方法,能够加速构建等值面提取索引结构。该算法降低了预处理过程中区间排序计算的规模,通过理论分析与实验,证明了栅格构造算法与传统最优算法具有相近的有效单元搜索效率,并能有效的将预处理时间缩短50%左右,大大缩短了整个大规模数据可视化过程,对具有实时性要求的可视化应用具有实际应用价值。(2)目前多GPU系统依然沿用传统的并行绘制模式,这使得多GPU共享内存的优势难以充分发挥。针对这一问题,本文提出一种多GPU异步并行体绘制方法,该方法首先采用混合数据空间与图像空间的任务划分方式,将体绘制任务分配到各GPU上,之后利用GPU上的DMA硬件,实现了体绘制过程中的GPU间异步通信,从而使绘制计算时间与图像传输时间能够很好的重叠,有效降低了图像合成开销。实验表明,在单机节点内配置4个GPU且分辨率设置为3072x3072的情况下,对10GB规模的数据进行高透明度体绘制的帧率能够达到10帧/秒以上,明显优于已有的同步绘制方法。(3)受PCIe总线带宽的限制,GPU对非本地显存的访问依然严重影响并行绘制过程中图像合成的性能。为了尽量避免发生总线冲突,同时尽可能提高总线占用率,本文深入分析了现代多GPU系统中,NUMA体系结构对并行绘制及图像合成技术的影响,并通过定量化的理论分析和证明,找到了多GPU系统上的最优图像合成算法;提出了GPU-pair的图像合成开销模型,该模型建立了GPU间读写性能差异的数学关系,为进一步减少合成通信开销奠定了理论基础。实验表明,在4个GPU的系统上且分辨率为2048x2048的情况下,本文实现的图像合成过程耗时仅需5ms,比传统消息传递合成方法性能提高1倍以上。(4)针对现有图像压缩编码方法不能充分发挥GPU并行效率的问题,本文提出一种GPU实现的高度并行化图像编码压缩方法,该方法基于像素的起始索引编码,与现有的RLE及ROI方法相比,该方法的线程同步开销更少,GPU线程能够最大程度的并行剔除无效像素,实验表明,本文方法的压缩时间平均约为RLE方法的55%,平均约为ROI方法的64%。(5)现有的Direct Send合成方式以平权的方式实现图像合成过程,没有考虑到有效像素数对合成开销的影响。针对不同有效像素分布的图像合成问题,本文提出一种贪心算法,该算法能够快速找到节点间Direct Send合成算法的近似最优实现策略,极大程度的减少节点间的图像数据传输量。实验表明,当绘制节点数大于20时,使用贪心算法确定的Direct Send合成模式较传统的固定模式性能平均提高近40%。