高性能计算加速石油勘探进程
解决方案
石油在现代工业中扮演着相当重要的角色,它具有不可再生和短期内难以被其他资源取代的特点,这促使石油企业将找到更多石油储藏视为首要任务。寻找石油储藏也被称为石油勘探或石油物理勘探(简称石油物探),这项业务主要由石油企业旗下的石油勘探部门完成,石油勘探的目标,就是要在地表数千米以下的地层中找到油田的位置。石油勘探的效率和投资回报率的提升,往往需要强大的技术支持,而性能不断跃升、成本持续下降的高性能计算 (HPC,High Performance Computing)系统,是石油勘探部门所需技术中必不可少的组成部分。
石油勘探信息化需要HPC
在很多人的印象中,石油勘探就是要先勘测出一片地下可能储有石油的区域,然后再在这个区域内打许多口井,查看到底哪口井能够出油。其实,传统认识中的这种石油勘探作业方式在今天早已过时,这种勘探方式使用的是传统的地质学方法和地球化学方法来勘测石油,勘测结果很不精确。由于油田在地下并不是以所谓“油海”的形式存在,而是由一个个彼此隔离的“葡萄串”组成的,因此在不够精准的勘测结果面前,人们只能多钻井进行尝试,而且只有将油井钻到一个储有石油的“葡萄”顶部,才算是大功告成。然而,钻井的费用是非常高昂的,每打一口油井,其花费往往都会达到数千万元甚至是上亿元。为提高石油勘探能力和效率并降低勘探成本,石油企业很快就开始在勘探中采用更为先进的地球物理方法,尤其是地震波法。
所谓地震波法,简而言之就是用炸药爆炸在地面激起人工地震波,这种地震波可传入地下深处,并在碰到不同形态的岩层时形成不同的反射波,这些反射波经地面的检波器收集,转变成电子信号后存储为数据,通过对这些数据进行计算处理,人们就能清晰地模拟出勘测区域的地下地质构造,并找到那些储有石油或天然气的岩层的精确位置。采用地震波法勘探收集的数据量太大,通常都以TB或PB(1TB=1024GB,1PB=1024TB)计,如何分析处理这些数据,并得出精确的结论,就成为石油勘探中急需解决的问题。对这些数据的计算处理结果将成为确定油田钻井井位的重要依据,一旦定错一个井位,不但达不到开采的目的,而且钻井费用的损失将十分惨重。
为了解决超大量数据的处理问题,过去我国曾采用主机带阵列机、向量计算机,上世纪90年代多采用的是大规模并行计算机。如今国内使用的系统一般包括IBM、HP、SUN、联想、曙光等并行机以及Unix工作站集群(IBM、DEC、SGI、SUN等品牌)和Linux PC图形工作站群等多种平台。不过,据中石油集团东方地球物理勘探公司研究院副总工程师赖能和介绍,目前国内石油企业所采用的Unix并行机严重老化,处理器主频低、处理能力严重不足,如果完全依赖它们来完成数据处理任务,已经很难解决数据处理过程中出现的问题,包括数据处理周期长、数据量越来越大和数据资料所在地区地质构造越来越复杂等实际问题。目前随着地质结构越来越复杂,叠前偏移工作量越来越大,大量的叠前偏移处理任务需要花费越来越多的CPU运行时间。此外,随着国内外石油地震物理勘探高新技术的快速发展,对数据处理技术也提出了新要求,需要采用更多CPU的模块来处理。
于是石油勘探行业把目光投向了高性能计算,高性能计算的基础是PC集群并行计算技术。赖能和表示,继续选择基于Unix的超级计算机进行系统的改造耗资巨大,而PC集群高性能并行机的性价比比Unix超级计算机更具优势。PC集群并行计算技术在地震数据常规处理和深度域处理中已经应用成功,可以为解决复杂区域地震成像问题提供有效的计算环境。从投资来看,在相同运算能力下,PC集群并行计算投资需要的资金大约是Unix超级计算机的1/10,而计算速度可提高3倍以上。而且目前PC集群并行计算技术具有很强的可用性、可扩展性和可管理性,用它来完成Unix超级计算机的密集算法,不失为一种明智的选择。
为了尽可能开采地下的石油,就需要更加精确地掌握石油在地层的分布,以往是依靠石油工人的经验,如今借助高性能计算机,判断更加准确,石油勘探的效率更高。因此,高性能计算对于石油勘探具有十分重要的意义。目前国外的石油企业已经普遍采用高性能计算解决方案来缩短地震数据的处理时间,并帮助工程师解决石油供应中遇到的难题。


HPC在石油行业面临新挑战
石油行业用户对计算能力的要求是无止境的,越高的计算能力意味着越低的投入和越高的产出。为了花更少的代价找到更多的石油,石油行业用户对HPC计算模型和运算方式向更精细化的方向发展,比如随着石油勘探的地震成像和建模算法的不断进步,石油波动方程计算模型正在从二维向三维方向推进,计算量也在不断增大,这些更精细的计算模型必然导致计算强度和数据量的急剧上升。传统上,石油行业的高性能计算主要涉及地震成像和油藏模拟两部分,前者最关注HPC系统的浮点计算性能,后者更侧重对大内存的需求,而逐渐兴起的计算可视化浪潮则对GPU(图形处理器)等新型计算单元的应用起到积极的推进作用。因此石油行业用户对高性能计算有更高的需求,要求不断提高浮点运算性能、I/O性能、内存容量和带宽等。
为了提高HPC的浮点运算性能,增加处理器的核心数量已经逐渐成为提高浮点运算能力最主要的方式,而在一些特定场合,采用GPU等浮点单元处理器也是很有竞争力的可选方案。GPU的引入对高性能计算可能有两方面的影响:一是采用多核、多流水线的GPU作为浮点运算单元,可提高整个系统的浮点运算能力;二是GPU可以作为可视化计算的最后呈现手段,对中间数据进行实时解释。不过这实际上是将GPU作为一种专用加速器使用,由于这种专用加速器采用了与CPU不同的指令集,在目前业界流行的集群体系架构下,可能会给系统应用性能的调优工作带来巨大的不确定性。
而提高HPC的I/O能力包括两方面的含义:一方面,要求磁盘I/O性能不断提高,固态存储(SSD)由于具有功耗低、输入输出能力出众的特点,有望逐渐替代传统硬盘,虽然目前受成本等因素制约比较明显,但它在节点机系统中的应用已经是不可阻挡的趋势。另一方面,中间数据的传输和并行处理,对网络I/O性能也提出了很高的要求,网络I/O能力成为制约高性能计算系统效率发挥的另一个“瓶颈”。
可视化计算的最终目的是不断提高实时分析决策能力。要做到实时分析决策,对数据的精确性、直观性和实时性都有很高的要求,因而计算可视化在技术方面具有一些新的特点,包括对巨量内存的支持、远程访问、协作和大容量渲染,以及多显示等功能,这些都需要GPU的支持,对HPC系统的I/O性能和内存带宽也都提出了很高的要求。
总之,根据石油勘探企业对高性能计算应用的特点来看,适用于这一领域的高性能计算解决方案必须要具备以下几个特性:具有强大的性能,特别是浮点计算性能、并行计算性能、磁盘子系统性能和内存子系统性能;拥有出色的能效表现和性价比;配备优秀的软件开发和调优工具;符合开放标准,软硬件层面都有广泛的合作伙伴支持。
延伸阅读:助力石油勘探 HPC应用软件知多少
采用地震波法进行石油勘探的生产工作基本上可分为野外工作、室内数据资料处理以及地震数据资料解释三个环节。从记录地面震动情况的数据出发,得到地震剖面图和地震波速度资料,进而绘制出反映某些主要地层完整起伏状态的构造图,这样的处理过程需要对大量数据进行快速处理,尤其是地震数据叠前时间和深度偏移时的海量数据计算。这就需要利用高性能计算方案,对获得的原始数据资料进行不同规模的计算。
高性能计算方案包括处理软件和硬件系统等,其中与地震波法石油勘探相关的高性能计算应用软件,按计算性质可分为地震资料处理(Seismic Processing)和油藏模拟(Reservoir Simulation)两大类,另外业内人士还将计算可视化(Computation Visualization)作为单独的一类。
目前为石油勘探行业广泛应用的地震资料处理软件有Paradigm的Geodepth和Focus、Western Geco的Omega、CGG的GeoCluster,这些应用软件均为支持大规模集群运算的并行版本。地震资料处理是典型的浮点计算密集型应用,以求解数据密集的波动方程为主要计算模式,因此对处理器的浮点计算能力要求较高,对内存带宽的占用中等,对大量数据的处理需要良好的多核扩展性。目前国内自主开发的这类软件主要是采用PSTM叠前时间偏移和PSDM叠前深度偏移的算法,如中国石油东方地球物理公司(BGP)自主开发的GeoEast、中国石化南京石油物探研究所开发的iCluster等。在计算精度和复杂度上,国外厂商Western Geco等已开始将RTM逆时偏移等消耗CPU资源更多、精度更高的偏移算法投入生产。国内的中国石油东方地球物理公司等企业也开始尝试Paradigm公司的CRAM共反射角偏移模块。
在油藏模拟类的应用软件方面,目前在全球范围内较为知名的有Landmark的VIP/Nexus和Schlumberger的Eclipse,国内企业自主开发的相关产品主要有大庆油田研究院的PRBS并行黑油模拟。不同于在算法上以频谱计算为核心的地震资料处理软件,油藏模拟对计算平台的要求是需要支持稀疏矩阵方程的迭代求解,对内存带宽的要求非常高,并需要大缓存支持,因此这类软件可归纳为对内存带宽高度敏感的计算密集应用。

对话:石油勘探离不开高性能计算系统

电脑报:信息化技术正在增强石油勘探的能力,在石油勘探信息化发展过程中,你认为需要加强哪些方面的建设?
赵改善:石油勘探越来越离不开信息化技术,我个人觉得在石油勘探技术发展与应用中,需要进一步加强的信息化技术包括:以较低的投资获得更强的计算能力(千万亿次计算能力),应用软件能够更加充分地发挥硬件的计算性能,地球物理技术能够更加方便和快速地转化成软件产品(特别是研究出更加方便的并行计算软件开发方法和工具),IT资源运行管理效率的提高和维护成本的降低,信息资源的进一步整合和共享等。
电脑报:高性能计算为石油勘探带来了什么改变?
赵改善:高性能计算技术的发展,为石油勘探技术的发展与应用提供了坚实的支撑,特别是为地震成像技术的发展与应用提供了可能。高性能计算让算法精度和适应能力快速提高,数据处理与分析周期日渐缩短,使得勘探精度、预测准确性不断提高,勘探风险和成本不断下降。
电脑报:对高性能计算集群系统的组建,石油、石化行业用户要考虑些什么问题?
赵改善:高性能计算集群系统已成为石油勘探行业的主流计算机系统平台,对集群系统的组建,我们更加注重以下问题:大型系统的能耗问题与管理问题、异构系统问题、大规模系统的并行计算软件开发与计算效率问题。
电脑报:GPU的引入,会给高性能计算带来什么改变?未来会有什么发展趋势?
赵改善:GPU能够提高高性能计算集群系统的浮点计算能力,对石油勘探具有很强的促进性,会大大提高高性能计算系统的性能价格比,不过目前面向GPU的软件开发是制约其应用的主要瓶颈。我们认为:异构集群系统会成为未来一段时间内集群技术发展的一个重要方向,但具体形式是CPU+GPU还是直接在处理器中集成大核和小核,需要看方案提供商的具体实施方案,原则上客户会选择性价比更高的方案,也需要根据方案商所提供的软件开发工具而定。
电脑报:请问你怎么看待高性能计算的绿色环保问题?
赵改善:高性能计算的绿色环保问题不是一个口号,而是一个实际问题。这不仅是企业发展中应尽的社会责任问题,也是企业效益的一个实际指标。数据中心建设和应用系统建设中应考虑绿色环保问题,这样不但可以有效降低系统的运行维护成本,而且能提高系统的应用规模和利用效率,从而提高IT投资的回报率。