一种用于地震勘探资料处理流程控制的方法技术

技术编号:6000516 阅读:428 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种用于地震勘探资料处理流程控制的方法,涉及地震勘探资料处理流程控制技术领域,包括如下步骤:1)规范功能模块开发方案和接口;2)改进功能模块的开发结构,在功能模块中实现多线程;3)作业流程控制:通过对作业描述文件中的模块及其拓扑结构进行解析,装载功能模块对象并控制其执行,完成作业流程的数据处理。本发明专利技术通过对作业描述文件中的模块及其拓扑结构进行解析,装载功能模块对象并控制其执行,完成作业流程的数据处理,充分地利用了计算资源,缩短了作业运行时间,提高了地震数据处理生产效率以及软件的可扩展性。

【技术实现步骤摘要】

本专利技术涉及地震勘探资料处理流程控制
,确切地说涉及一种适用于 集群计算系统的地震资料处理作业运行时的流程控制方法。
技术介绍
在现代的地震勘探资料处理过程中,通过野外勘探采集得到的地震资料数据 需要经过静校正、去噪、反褶积、动较正和叠加等一系列的处理过程,最终才能得到满足生 产需要的数据内容供解释人员使用。并且各个阶段的处理过程涉及到多种实现技术,每种 技术需要软件实现一个功能模块供软件系统调用。实际的资料处理生产过程中,通常是生 成一个定义流程拓扑结构的处理作业描述文件,该流程由上述功能模块构成。在对作业描 述文件进行解析后,将其中的功能模块描述装载为功能模块对象,并根据作业描述文件中 的拓扑结构解释执行所述功能模块对象,从而得到经过一系列处理过程后的数据结果。当代计算机硬件技术发展迅速,近几年来,计算机处理器厂商为提高计算机处理 速度进行了多项研究,其中多CPU多核成为了集群计算节点提高处理速度的主流发展方 向。但是,传统的软件开发方式并不能充分发挥计算节点多CPU多核的特性,为了适应硬件 的发展,软件开发方案也需要随之调整。如上所述,在一个处理作业描述文件中包含了多 个处理模块,这些模块都需要对地震数据中的每一道进行处理,对于实际生产中动辄几十G 的数据来说,作业消费的时间会显得很长,带来的结果是不仅长时间的占用了计算资源,而 且影响了生产效率。如公开号为101630018,公开日为2010年01月20日的中国专利文献公开了一种控制全声波方程反演过程的地震勘探数据处理方法,采集理论模型地震数据,获得深度域 体积模量和密度初始模型;用伪谱法模拟声学介质中地震波场;计算理论模型与初始模型 模拟数据的差;给定δ =1. O e — 6,计算误差能量Ε,当E彡δ,停止反演,输出反演结 果,如果E > δ,继续下列步骤;计算残差数据;计算体积模量和密度模型的共轭修改量; 计算修改步长,获得梯度;对初始模型进行修改;将修改后的模型数据作为新的初始模型, 通过对反演过程进行自动控制,使声波方程反演稳定、快速收敛,反演收敛速度比常规方法 提高了近5倍。,但上述现有技术仍然没有使软件结构具有多线程的特征,仍然没有解决 “对于实际生产中动辄几十G的数据来说,作业消费的时间长,长时间的占用计算资源,影响 生产效率”的技术问题。
技术实现思路
为解决上述技术问题,本专利技术提出了一种通过改进功能模块开发结构,使之与现 代集群计算节点多CPU多核的特性相适应的用于地震勘探资料处理流程控制的方法,本 专利技术通过对作业描述文件中的模块及其拓扑结构进行解析,装载功能模块对象并控制其执行,完成作业流程的数据处理,充分地利用了计算资源,缩短了作业运行时间,提高了地震 数据处理生产效率以及软件的可扩展性。本专利技术是通过采用下述技术方案实现的,其特征在于包括如下步骤 1)规范功能模块开发方案和接口 ;2)改进功能模块的开发结构,在功能模块中实现多线程;3)作业流程控制通过对作业描述文件中的模块及其拓扑结构进行解析,装载功能模 块对象并控制其执行,完成作业流程的数据处理。所述的规范功能模块开发方案接口可以采用现有技术,也可以以功能模块基 类开发结构为例采用如下方式功能模块基类开发结构向外暴露构造函数、初始化函数 Initialize ()、参数检查函数CheckPara ()、预处理函数PreRun ()、数据处理函数Run ()、 后期处理函数PostRim ()和析构函数七个成员函数供目标程序调用,具体的功能模块类继 承这个功能模块基类开发结构并重载这七个成员函数以完成其具体要实现的功能。所述的改进功能模块的开发结构,在功能模块中实现多线程可以采用现有技术, 也可以具体采用如下方式在功能模块基类的数据处理函数Run ()接口中实现了多线程的 代码开发工作,当目标程序调用数据处理函数Run ()接口函数时,该函数将自动创建一个 线程,并在线程中调用功能模块的MainLoop ()成员函数进行数据处理。所述的MainLoop ()的功能是进行地震数据的处理,是功能模块的核心部分,是受 保护的成员函数,不被暴露给外部的调用程序,但用于被子类继承后修改其具体实现的功 能。所述的作业流程控制可以采用现有技术,也可以具体为目标程序对作业流程中 的功能模块及其拓扑结构进行解析后,生成并装载功能模块以及端口对象和拓扑连接对 象;然后在执行控制主线程中调用功能模块的初始化函数^Iitialize ()、参数检查函数 CheckPara ()和预处理函数I^reRim ()接口,完成作业运行前的预备工作;接下来由执行 控制主线程调用功能模块的数据处理函数Run ()接口,启动各功能模块的数据处理线程从 而完成地震数据处理;在所有功能模块的数据处理工作完成以后,执行控制主线程调用后 期处理函数PostRim ()接口,完成资源释放工作;最后在执行控制主线程中调用各功能模 块的析构函数,完成功能模块的卸载功能。在所述3)后还有共享内存数据交互步骤共享内存是建立在功能模块的输出端 口之上的,每一个输出端口及其连接的输入端口对应一块共享内存区,输入输出端口所属 的功能模块通过对这块共享内存的读写实现功能模块间的数据传递。与现有技术相比,本专利技术所达到的技术效果如下1、采用本专利技术所述的1)、2)和3)步骤进行处理,并依次处理后形成的技术方案,即使 步骤1)、2)和3)都采用常规处理方式,但将这三个步骤有机的结合起来形成的技术方案, 就能实现了通过改进功能模块开发结构,使之在软件结构上具有线程的特征,从而使之与 现代集群计算节点多CPU多核的特性相适应,充分地利用了计算资源,缩短了作业运行时 间,提高了地震数据处理生产效率以及软件的可扩展性。2、采用如本专利技术所述的区别于现有技术的1)、2)和3)的具体步骤形成的技术方 案,利用计算机软件开发中的多线程技术改造功能模块,使之具有线程的特征,并在此基础上应用作业流程控制执行的多线程解决方案“通过对作业描述文件中的模块及其拓扑结 构进行解析,装载功能模块对象并控制其执行,完成作业流程的数据处理”能够得到更优的 技术效果进一步缩短作业运行时间,进一步提高地震数据处理生产效率以及软件的可扩 展性。附图说明下面将结合说明书附图和具体实施方式对本专利技术作进一步的详细说明,其中 图1为功能模块基类结构图图2为作业流程控制系统结构图 图3为执行控制主线程对功能模块的调用流程图 图4为执行控制主线程工作流程图 图5为功能模块拓扑图 图6为功能模块共享内存结构示意图。具体实施例方式实施例1作为本专利技术一较佳实施方式,本专利技术提出了一种用于地震勘探资料处理流程控制的方 法,按照计算机软件理论,在软件开发中应用多线程技术可以提高目标程序在多CPU多核 处理器中的处理速度,因此,本专利技术构思的出发点就是在作业控制执行时使用多线程技术, 将作业流程中的功能模块作为进程中的不同线程来执行,为了实现这个构思方案,需要改 进功能模块的开发结构,使之在软件结构上具有线程的特征,具体可以采用以下三个步骤 1)规范功能模块开发方案和接口,可以采用现有技术中的常规方法实现;2)改进功能模 块的开发结构,在功能模块中实现多线程,可以采用现有技术中的常规方本文档来自技高网
...

【技术保护点】
一种用于地震勘探资料处理流程控制的方法,其特征在于:包括如下步骤:1)规范功能模块开发方案和接口;2)改进功能模块的开发结构,在功能模块中实现多线程;3)作业流程控制:通过对作业描述文件中的模块及其拓扑结构进行解析,装载功能模块对象并控制其执行,完成作业流程的数据处理。

【技术特征摘要】

【专利技术属性】
技术研发人员:李磊胡光岷何光明
申请(专利权)人:中国石油集团川庆钻探工程有限公司
类型:发明
国别省市:90

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1