论文部分内容阅读
在科学计算可视化领域中,体绘制技术为人们提供了观察和分析数据的方法。体绘制能够将晦涩的数据可视化成形象的图形表示,并且可以通过对数据的交互操作,方便地分析数据内部和隐含的信息。但是当数据规模太大时,单一处理器无法高效完成绘制工作。为了能够对大规模数据集进行实时绘制,本文主要研究了多GPU环境下,对大数据的并行体绘制问题,目标是利用多处理器的优势,在高分辨率下完成对大规模数据集的实时绘制问题。并行体绘制技术通过在集群节点的每一个处理器之间动态分布数据集来完成大规模数据的可视化问题。本文使用基于CUDA的Sort-last并行计算方法,将大规模数据用KD树分割为小数据块,之后再为每一个GPU分配一个或者多个分块数据绘制任务,每一个数据分块在计算后将得到一张结果子图像,再使用CPU或者GPU方法,将图像按照体绘制光线模型,在对比像素深度后合成最终图像。本文对并行体绘制流程中各个环节,包括子图像计算时间,图像数据拷贝时间与合成时间作了仔细分析。由于处理器之间的负载平衡会对绘制性能产生影响,所以本文使用KD树分割数据并动态分配分块数据解决计算时间的平衡问题。针对数据拷贝时间太长的问题,本文通过将数据拷贝与计算异步并行加速了整体绘制效率。对于图像合成方法,本文使用了GPU并行合成算法提高了图像合成效率。在上述工作的基础上,本文将并行体绘制方法集成到我们开发的体数据可视化平台Voxer中。Voxer (Volume Explorer)是我们开发的通用体数据可视化平台,基于该平台能够构建针对医学、地质、气象等领域的可视化分析工具。为拓展Voxer的通用性,将其绘制能力拓展至大规模数据集,本文在实现原型系统时为Voxer的数据管理与流程管理模块加入了大数据支持。通过对多个大数据集的测试,验证了本算法能高效地对大数据进行实时绘制,并且进一步拓展的了通用体绘制平台的应用范围。