用于生成地下构造的图像的系统和方法

文档序号:5939558阅读:160来源:国知局
专利名称:用于生成地下构造的图像的系统和方法
技术领域
本发明总体上涉及用于生成代表地下构造的图像的系统和方法,更具体而言,涉及用于执行地震波场数据的逆时迁移以便确定感兴趣地下区域的地下特性的改进系统和方法。
背景技术
常规的迁移和反演方法涉及关联正向和反向传播的波场以获得代表地下特性的图像。此类方法的例子包括逆时迁移、差分外表速度分析和波形反演。这些方法需要以相反的次序访问正向传播的波场,在每个时间步长与伴随的反向传播的波场步调一致。关于逆时迁移,例如,正向和反向传播的波场在每个时间步长同时可用的要求对大数据集提出了显著的计算挑战。这些挑战部分是由于以相反次序访问正向传播的波场,同时以相反次序访问反向传播的波场以与正向传播的波场关联的需要。解决计算挑战策略的常规解决方案包括重复波场的正向传播到第η个时间步长,通过最佳波场存储策略和内插最小化重新计算率,反向传播已经正向传播的源波场。见例如Eric Dussaud等人在2008年美国拉斯维加斯(Las Vegas)举办的美国勘探地球物理学(SEG)的年度会议上所发表的“Computational strategies for reverse-time migration,,及 Symes、William ff.在2007 年 Geophysics 第 5 期第 72 卷 SM213-SM221 上发表的“Reverse Time Migration withOptimal Checkpointing,,。通过存储并随后检索正向波场,当前工作中实现的RTM算法解决了这种要求。数据量而且尤其是产生这种数据的速率(及存储/检索的需求)使用必要的数据压缩技术。适当的数据压缩方案强加了附加的计算负担,因此降低了整个应用的性能。通过把RTM应用的核心计算工作负荷移到协处理器,使CPU资源可用于压缩/解压缩,应用成像条件和磁盘1/0,使这种方案计算有效并且整体上可靠。对于这些限制,尤其是加速器平台上的限制,常规方法常常折衷波场的计算和/或重新计算以及记录的波场数据在存储器层次结构中的存储,包括RAM、本地硬驱和网络连接的存储器。这种折衷既是硬件也是算法考虑的功能。在计算速度优秀的平台上,即,在例如GPU和FPGA的加速器上,代替(慢速)存储引入重新计算从整体上看是一种有利的方法。然而,任何附加的计算都会对应用的整体性能有不利的影响。因此,最佳实现将消除波场存储&检索的性能限制,而不增加计算负荷。伴随状态问题(例如逆时迁移)对大数据集造成严重的计算问题,并且在计算和存储之间的典型折衷当中表现出来。实现特定折衷的算法将会让它们的计算性能受到该特定折衷的限制。例如,在许多算法中,储存器可能是一个限制因素,而且对于给定应用,硬件储存器访问速率可能变成事实上的计算速率。其它算法可被设计成以这样一种方式来平衡计算和存储的折衷,其中系统的计算和存储能力被最佳地加压。为了最好的性能,算法应当适应性地被设计成最佳地使用给定新硬件,例如图形处理单元(GPU)或现场可编程门阵列(FPGA)的计算和存储器结构。如此,存在更有效地处理地震波场数据以便以更加及时和成本有效的方式来生成感兴趣地下区域的图像的需求。特别地,执行所需计算操作的速率还需要被进一步提高。同时,该方法的辅助组件(数据存储/检索、所涉及的组件之间的数据传输)需要相应地优化和改进,以避免造成可能限制应用的整体效率的瓶颈。

发明内容
本发明提供了用于生成地下构造的图像的系统和方法,所述系统和方法在最小化计算内存和波场数据存储器要求的同时提高了计算速度。此外,通过利用协处理器资源,所提议的方法允许实现提高结果地下图像的质量的附加地球物理特征,而不增加执行计算所需的时间帧。与常规的非加速方法相比,该方法提供了性价比的显著改进。根据本发明的一个非限制性方面,一种用于生成关于感兴趣地下区域的图像的系统包括具有地震数据和关于感兴趣地下区域的地球模型的数据存储设备、与该数据存储设备通信的中央处理单元(CPU)以及与该CPU通信的至少一个外部协处理器,其中CPU具有至少一个处理核心和关联的CPU内存,外部协处理器具有直接耦合到相应本地内存的至少一个外部协处理器处理核心。外部协处理器处理核心包括计算机可编程代码,用于利用地球模型以第一时间间隔正向传播源波场;以第二时间间隔把正向传播的源波场传输到CPU以便压缩和外部存储;以第一时间间隔反向传播地震数据以导出反向传播的接收器波场;以及以第二时间间隔把反向传播的接收器波场传输到CPU。CPU处理核心被进一步编程成检索和解压正向传播的源波场数据,以及对解压后的正向传播源波场和反向传播接收器波场应用成像条件,例如以逐点卷积的形式,以构建代表感兴趣地下区域的图像数据。根据本发明的另一个非限制性方面,一种用于生成关于感兴趣地下区域的图像的计算机实现方法包括利用协处理器上的有限差分模拟来执行地震波场的传播、执行主计算机系统和协处理器之间的异步通信方案的代码以及实现逆时迁移算法的双通输入/输出界限实现的并行程序结构。在一种实施方式中,该方法包括:经由中央处理单元(CPU)访问关于感兴趣地下区域的地震数据和地球模型;经由耦合到该CPU的至少一个外部协处理器利用所述地球模型以第一时间间隔正向传播源波场;以第二时间间隔把正向传播的源波场传输到CPU以便压缩和外部存储;经由外部协处理器以第一时间间隔反向传播地震数据以导出反向传播的接收器波场;以及以第二时间间隔把反向传播的接收器波场传输到CPU。该方法还包括:经由CPU检索存储的正向传播源波场;经由CPU解压检索的正向传播源波场;以及对解压后的正向传播源波场和反向传播接收器波场应用成像条件,以构建代表感兴趣地下区域的图像数据。在本发明的另一方面,一种用于传播地震波场的方法包括:经由中央处理单元(CPU)启动耦合到该CPU的至少一个外部协处理器中的多个计算块,用于协调外部协处理器中的关于波场的计算功能;经由中央处理单元(CPU)启动外部协处理器中的多个数据传输块,以协调CPU和外部协处理器之间的关于波场的数据传输功能;经由CPU子线程控制经由中央处理单元(CPU)的波场传播;以及经由对应的流异步地并发执行计算和数据传输功能,而不干扰CPU子线程。所述方法可进一步包括在要由外部协处理器执行的单个计算内核中组合至少两个数值运算符的步骤,而且可以包括执行波传播的有限差分模拟。当参考附图考虑以下描述和所附权利要求时,本发明的这些及其它目标、特征与特性及操作方法和相关结构元件的功能及部件的组合与制造的经济性都将变得更加显而易见,所有附图都构成本说明书的一部分,其中相同的标号在各个图中都指示对应的部分。但是,应当明确地理解,附图仅仅是为了说明和描述而不是要作为本发明限制的定义。如在本说明书和权利要求中所使用的,除非清楚地另外指明,否则单数形式“一个”和“这个”也包括复数形式。


参考以下描述、所附权利要求及附图,本发明的这些与其它目标、特征与特性将变得更加好理解,附图中:图1说明了用于实现本发明实施方式的系统的一个例子;图2说明了本发明的一种实施方式,包括生成关于地下区域的图像的计算机实现的方法;图3说明了计算机实现的方法的示例性并行编程模型;图4说明了本发明的计算机实现的方法的一个特定部分。所示出的是由每个协处理器执行的计算机实现的方法的部分的流程图;以及图5示出了根据本发明的方法与常规方法相比吞吐量的相对增加。
具体实施例方式本发明可以在由计算机执行的系统与计算机方法的通用背景下描述和实现。这种计算机可执行的指令可以包括可以用于执行特定任务并处理抽象数据类型的程序、例程、对象、组件、数据结构及计算机软件技术。为了在各种计算平台和环境中应用,本发明的软件实现可以用不同语言编码。应当认识到,本发明的范围和基本原理不限于任何特定的计算机软件技术。而且,本领域技术人员将认识到,本发明可以利用硬件与软件配置中的任何一种或者其组合来实践,包括但不限于,具有单个和/或多个处理器的计算机处理器系统的系统、手持式设备、可编程消费者电子产品、微型计算机、大型计算机等。本发明还可以在分布式计算环境中实践,其中任务是由通过一个或多个数据通信网络链接的服务器或其它处理设备执行的。在分布式计算环境中,程序模块可以既位于本地计算机存储介质中又位于远端计算机存储介质中,其中本地和远端计算机存储介质都包括内存存储设备。而且,供计算机处理器使用的制造物品,例如⑶、预记录盘或者其它等效设备,可以包括计算机程序存储介质和记录在其上的程序方法,所述程序方法用于指示计算机处理器方便本发明的实现与实践。这种设备与制造物品也在本发明的主旨与范围之内。现在将参考附图描述本发明的实施方式。本发明可以多种方式实现,包括例如作为系统(包括计算机处理系统)、方法(包括计算机实现的方法)、装置、计算机可读介质、计算机程序产品、图形用户接口、门户网站或者有形地固定在计算机可读存储器中的数据结构。以下讨论本发明的几种实施方式。附图仅仅说明了本发明的典型实施方式而且因此不应当看作是对其范围和广度的限制。图1示出了根据本发明的用于生成地下构造的图像的示例性系统I。该图示出了主要的“主机”计算机系统10和一个或多个中央处理单元(CPU) 11 (示出了两个单元)、主内存(例如,RAM) 12以及磁盘存储设备13。经由适当接口 14附连到主计算机系统10的是一个或多个协处理器设备20 (示出了两个),每个协处理器设备20都具有自己的处理单元21和内存22。若干个这些系统I可经由计算机网络接口连接和集群。图2通过流程图的方式说明了本发明的计算机实现的方法1000。该流程图描述了利用本发明的方法创建地下图像时所涉及的步骤,该方法可由例如图1所示的系统来执行。工作流1000以初始化步骤100开始,在该初始化步骤100中,从存储器检索所需数据并且初始化计算和内存资源。工作流1000包括两个功能块,源信号的正向传播200和接收器数据的反向传播300。这些功能块中的每一个都被实现为经多个时间步长的循环,其中时间步长是作为应用的一个参数指定的。当正向部分传播源信号时,后者需要被插入到源波场中201。然后,源波场在时间上被正向传播一个时间步长202,其中这个步骤是由协处理器执行的。对于时间循环的每第k步(k是用户指定的数字,一般在5和10之间),当前波场被从协处理器传输到CPU的内存中203,在那里它被CPU压缩并随后被写到磁盘204。应当指出,步骤203和204是与源信号的传播202并发执行的-多达k个后续传播步骤可在数据被传输、压缩和写的同时被执行。在正向时间循环结束时206,由于相同的计算资源(CPU和协处理器)被用于正向和反向传播,波场被重新初始化208。随后,反向传播300开始。在反向时间循环308的每个步骤中,接收器数据(地震数据)被插入到波场中301,然后该波场以与正向传播期间相同的方式在时间上反向传播一个时间步长302。就像在正向传播中,附加操作303-306对每个第k时间步长执行,同样是与传播并发执行。在反向传播的情况下,这些操作是接收器波场从协处理器到CPU内存的传输303、从磁盘检索和解压对应的波场快照304、应用成像条件305以及累积拍摄图像306。在步骤305中,检索出的当前步骤的源波场和当前步骤的接收器波场被以适当方式卷积,然后累积到拍摄图像中306。在反向传播循环结束时308,所有资源都被释放并且最终的拍摄图像被写到磁盘310。此后,应用清除所使用的资源并终止312,或者返回初始化步骤100去处理下一次拍摄。源信号在时间上的正向传播202和接收器数据在时间上的反向传播302是利用一个或多个协处理器20 (如图1中所示)来执行的。这是通过在协处理器上执行图3中所说明的操作来实现的。CPU(例如,图1中的CPU 11)启动并控制由协处理器20执行的所有操作,步骤420。这些操作包括内存传输411和412以及计算操作431、432和433,并且分组成两个单独的操作流-协处理器流410和420,这两个流可以同时执行。对于每个正向传播202和反向传播302,按次序执行以下步骤:如果使用多个一个的协处理器20,则CPU 11启动协处理器之间的内存传输421 ;随后,CPU 11指不协处理器执行第一内核422,该第一内核422包含组合起来代表波场的传播的第一组数值运算符。例如在图3中的内核431、432和433中所示,这些数值运算符中的一些或全部可被组合到单个计算内核中,以优化协处理器资源的使用和增强这种方案的整体效率。这种数值运算符的组合可取决于例如所使用的数据和要执行的数学运算的重叠。根据本发明,两个步骤421和422被执行,使得实际内存传输411和内核431的执行同时发生。然后,CPU暂停423并等待内存传输411完成。如果对于这个特定时间步长需要波场到CPU内存的传输203,那么就由CPU根据步骤424启动这种内存传输。之后,CPU再发起两个更多内核425和426,包含完成波场传播202的剩余计算操作。再一次,根据步骤412,计算操作432和433的执行与从协处理器20内存到CPUll内存的内存传输同时发生。然后,CPU等待,步骤427,协处理器流410和430中的所有未完成操作的完成,在此之后,对这个时间步长的波场传播完成。在这里给出的本发明的计算机实现采用并行编程模型,该模型在图4中说明。通过最大化诸如协处理器20的各个计算部件的并发性,包含几层并行性的这种编程模型确保了应用的高效率。图4示出了编程模型如何被计算系统100执行,其中计算系统100包括CPU 10和协处理器20。如图4中所示,应用的主要“主”过程500解释由用户指定的程序参数并且关于存储设备501 (或者类似地,如图2中所示的存储设备13)执行所有的磁盘输入和输出操作。主过程500还创建两组单独的子线程510和520,这两组子线程都与主过程500共享内存地址空间。第一组子线程510被用来压缩和解压波场数据快照(例如,分别是图2中的步骤204和304)以及执行用于成像的波场卷积(例如,图2中的步骤305)。在组510中创建的各个子线程511的数量可以是变化的并且取决于所使用的计算机系统中可用的计算资源的量;典型的数量范围是5-20。第二组子线程520被用于控制各个协处理器601 (或者类似地,如图2中所示的协处理器20)。每个子线程521都确切地被分配一个使用的协处理器601,并且随后启动所关联的协处理器上的计算、管理主计算机系统10和协处理器601/20之间的所有数据传输并且维护第二组520中的各个子线程521之间的同步,如图3中所说明的。应当指出,两组子线程510和520执行它们各自的任务,而不直接彼此交互,但是通过主过程500在程序流(图2中的1000)的某些点同步,以确保写到磁盘和从磁盘读取的数据的完整性。根据本发明,RTM应用是通过采用图形处理单元(GPU,图形卡)作为协处理器来加速的。本发明的一个非限制性优点包括显著减少了给定“作业”的处理时间。照此,通过在固定时间量内处理更大量的“作业”或者通过减少周转时间,即,数据到决策的时间,实现了RTM算法的改进性能。本发明还可与其它先进计算应用一起使用,例如地震模拟(从算法来看这是RTM的子集,但是常常被用作单独的工具)。其它应用可以受益于本发明的各个技术元素(代码片段/概念的重用)。本领域技术人员将认识到,本发明的实施方式可以对各种协处理器加速的体系结构实现,例如FPGA、GPU和Cell芯片。本发明还包括利用执行本发明方法的指令编程的装置、通用计算机和/或协处理器,以及编码执行本发明方法的指令的计算机可读介质。图5说明了与常规方法相比本发明对于RTM算法的优点。所示出的是分别利用常规方法和本发明方法的在生产环境中执行的典型RTM计算的吞吐量550和552。对于图5,“吞吐量”被定义为被处理的数据集的尺寸除以执行计算所用的总时间;照此,越高的吞吐量对应于RTM算法越有效的实现和应用,因为处理给定尺寸数据集所需的计算资源和时间的量被减少了。对于相关数据集尺寸使用等量的计算资源,利用本发明获得了 RTM吞吐量的5倍改进552。例如,具有12个核心的单个集群节点与具有12个核心加8个GPU的相同节点进行比较。尽管已经在前面的说明书中关于其某些优选实施方式描述了本发明,但是许多细节的阐述都是为了说明,对本领域技术人员来说,很显然,在不背离本发明基本原理的情况下,本发明易于改变而且在此所述的某些其它细节可以有相当大的变化。
权利要求
1.一种用于生成关于感兴趣地下区域的图像的系统,包括: 数据存储设备,具有关于感兴趣地下区域的地震数据和地球模型; 与数据存储设备通信的至少一个中央处理单元(CPU),该CPU包括至少一个处理核心和相关联的CPU内存; 与CPU通信的至少一个外部协处理器,该外部协处理器包括直接耦合到相应本地内存的至少一个外部协处理器处理核心,而且其中,所述外部协处理器处理核心包括计算机可编程代码,用于:利用地球模型以第 一时间间隔正向传播源波场;以第二时间间隔把正向传播的源波场传输到CPU用于压缩和外部存储;以第一时间间隔反向传播地震数据以导出反向传播的接收器波场;以及以第二时间间隔把反向传播的接收器波场传输到CPU ; 其中,CPU处理核心被编程为检索和解压正向传播的源波场数据,并且对解压后的正向传播源波场和反向传播接收器波场应用成像条件以构建代表感兴趣地下区域的图像数据。
2.如权利要求1所述的系统,进一步包括与CPU通信的显示设备,用于显示代表感兴趣地下区域的图像数据。
3.如权利要求1所述的系统,进一步包括有限差分模拟代码,用于源和接收器波场数据的正向和反向传播。
4.如权利要求1所述的系统,进一步包括异步通信代码,用于CPU和外部协处理器之间的有效数据交换。
5.如权利要求4所述的系统,其中,所述异步通信代码包括幻象点。
6.如权利要求4所述的系统,其中,所述异步通信代码包括波场快照。
7.如权利要求1所述的系统,进一步包括双通输入/输出界限代码,用于实施通过异步数据输入/输出和与协处理器上的计算并发的成像实现的逆时迁移算法。
8.—种生成关于感兴趣地下区域的图像的计算机实现的方法,包括: 经由中央处理单元(CPU)访问关于感兴趣地下区域的地震数据和地球模型; 经由耦合到CPU的至少一个外部协处理器利用地球模型以第一时间间隔正向传播源波场; 以第二时间间隔把正向传播的源波场传输到CPU用于压缩和外部存储; 经由外部协处理器以第一时间间隔反向传播地震数据以导出反向传播的接收器波场; 以第二时间间隔把反向传播的接收器波场传输到CPU ; 检索存储的正向传播源波场; 经由CPU解压检索出的正向传播源波场;以及 经由CPU对解压后的正向传播源波场和反向传播接收器波场应用成像条件,以构建代表感兴趣地下区域的图像数据。
9.如权利要求8所述的方法,进一步包括显示代表感兴趣地下区域的图像数据。
10.如权利要求8所述的方法,其中,正向和反向传播步骤包括源和接收器波场的有限差分模拟。
11.如权利要求8所述的方法,进一步包括在CPU和外部协处理器之间进行异步通信用于数据的有效交换。
12.如权利要求11所述的方法,其中,在CPU和外部协处理器之间进行异步通信的步骤包括使用幻象点。
13.如权利要求11所述的方法,其中,在CPU和外部协处理器之间进行异步通信的步骤包括使用波场快照。
14.如权利要求1所述的方法,进一步包括使用反向传播地震数据之后的源波场的双通正向传播作为逆时迁移算法的一部分,逆时迁移算法是通过异步数据输入/输出和与协处理器上的计算并发的成像来实现的。
15.如权利要求1所述的 方法,进一步包括迭代全波形反演以利用梯度信息来更新地下介质属性。
16.一种用于传播地震波场的方法,包括: 经由中央处理单元(CPU)启动 耦合到CPU的至少一个外部协处理器中的多个计算块,用于协调外部协处理器中的关于波场的计算功能; 经由中央处理单元(CPU)启动外部协处理器中的多个数据传输块,以协调CPU和外部协处理器之间的关于波场的数据传输功能; 经由CPU子线程控制经由中央处理单元(CPU)的波场传播;以及 经由对应的流异步地并发执行所述计算和数据传输功能,而不干扰CPU子线程。
17.如权利要求15所述的方法,进一步包括在要由外部协处理器执行的单个计算内核中组合至少两个数值运算符的步骤。
18.如权利要求15所述的方法,其中,执行计算和数据传输功能的步骤包括关于波传播的有限差分模拟。
全文摘要
提供了用于生成感兴趣地下区域的图像的系统和方法。在一种实施方式中,生成关于感兴趣地下区域的图像的计算机实现的方法包括经由中央处理单元(CPU)访问关于感兴趣地下区域的地震数据和地球模型;经由耦合到CPU的至少一个外部协处理器利用地球模型以第一时间间隔正向传播源波场;以第二时间间隔把正向传播的源波场传输到CPU用于进行压缩和外部存储;经由外部协处理器以第一时间间隔反向传播地震数据以导出反向传播的接收器波场;以及以第二时间间隔把反向传播的接收器波场传输到CPU。该方法进一步包括经由CPU检索存储的正向传播源波场;解压检索出的正向传播源波场;以及对解压后的正向传播源波场和反向传播接收器波场应用成像条件,以构建代表感兴趣地下区域的图像数据。
文档编号G01V1/30GK103119471SQ201180045094
公开日2013年5月22日 申请日期2011年9月9日 优先权日2010年9月20日
发明者A·洛都什, 刘伟 申请人:雪佛龙美国公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1