采用GPU(Graphic Processing Unit:图形处理器)与CPU协同并行处理技术,在配有显卡的PC机上设计大规模三维地震数据的体绘制算法,利用此算法实现大规模三维地震数据的实时显示。同时结合可见性测试、遮挡测试和模板测试等技术对体绘制算法进行优化,提高算法的实时绘制效率。本课题的研究目标是充分利用GPU强大的并行计算能力,在普通PC机上实现大规模三维地震数据的实时显示,该问题的解决将使研究人员在PC机上就可以进行油气勘探与开发的研究,因此具有广泛的运用前景和商业价值。
系统的原理如下:
(1) GPU与CPU协同并行计算机框架
为了实现大规模三维地震数据的实时显示,我们设计了GPU与CPU协同并行计算机框架,其中我们采用GeForce GTX480的显卡作为我们并行处理器,该卡有计算核心480个和1.5GB显存,可以满足我们进行并行处理的需要。同时再CUDA编程环境下,结合VC2005和OpenGl进行项目软件的开发。
(2) 三维地震数据的可见性测试算法
可见性测试可以大大减少三维显示需要处理的数据量,很好的剔除了三维地震数据中的空子块和被遮挡的子块。首先根据大规模三维地震数据的空间分布特征,对其进行三维空间分解。分解完成后,开始可见性测试。
(3) 基于GPU的并行可视化算法
首先我们对原始的三维地震数据进行自适应分解,以便分解后的数据可以装载到内存和显存,对显存中的数据,我们根据GPU的并行处理能力,即GPU中内核数量,对显存中的数据做自适应的二次分解。并将分解后的数据分配给内核,同时进行并行计算。将计算结果进行融合,就得到三维地震数据最后的显示结果。
图1 地震数据分解示意图
图2 基于GPU的海量地震数据并行可视化系统