地震炮能量的并行化处理方法及系统技术方案

技术编号:17732810 阅读:37 留言:0更新日期:2018-04-18 10:42
公开了一种地震炮能量的并行化处理方法及系统。该方法包括:创建内存空间和队列II;创建主控线程、读线程和多个计算线程;其中,主控线程为:读取计算总炮数,启动读线程和多个计算线程,归约并保存每一炮能量,以及计算完成后,释放读线程和多个计算线程结束计算;读线程为:往队列II中读入地震炮记录数据中的每道地震炮数据;计算线程为:从队列II中获取每道地震炮数据,并计算每道的地震炮能量且累计到当前计算线程的当前炮能量中。本发明专利技术通过主控线程、读线程和多个计算线程,实现地震炮能量的规约。

The parallel processing method and system of the energy of the seismic gun

A parallel processing method and system for the energy of an earthquake gun is disclosed. The method includes: creating the memory space and II queue; create a master thread, read threads and multiple computational threads; wherein, the main control thread to read: calculate the total number of shot, start reading threads and multiple threads of computation, reduction and save each shot of energy, and the calculation is completed, release and read the thread a calculation of the end of the thread to read: calculation; thread for each seismic data into seismic data recorded in the queue II; computing thread: obtaining each seismic data from the II cohort, and calculate each seismic energy and the cumulative calculation to the current gun thread's current energy cannon. The invention realizes the specification of the energy of the seismic gun by the main control thread, the reader thread and the multiple thread.

【技术实现步骤摘要】
地震炮能量的并行化处理方法及系统
本专利技术涉及地震资料处理
,更具体地,涉及一种地震炮能量的并行化处理方法及系统。
技术介绍
在地震资料处理
,目前的地震炮能量的并行化处理方式都是采用单炮的粗粒度并行化处理方法。并行化处理时,地震炮能量的计算通常依据函数公式为:其中,A为某炮总能量,N为某炮总道数,M为一道的样点数,aij为i道第j个样点的样点值。依据这种方法并行化处理时,单个磁盘上的磁头会不停在多个非连续位置的炮数据直接跳转读取,明显降低了计算与读写的重叠,进而降低了并行化处理效率。因此,有必要开发一种高效的地震炮能量的并行化处理方法及系统。公开于本专利技术
技术介绍
部分的信息仅仅旨在加深对本专利技术的一般
技术介绍
的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域技术人员所公知的现有技术。
技术实现思路
本专利技术提出了一种地震炮能量的并行化处理方法及系统,其能够通过主控线程、读线程和多个计算线程,实现地震炮能量的规约。根据本专利技术的一方面,提出了一种地震炮能量的并行化处理方法。所述方法包括:创建内存空间和队列II;创建主控线程、读线程和多个计算线程;其中,所本文档来自技高网...
地震炮能量的并行化处理方法及系统

【技术保护点】
一种地震炮能量的并行化处理方法,包括:创建内存空间和队列II;创建主控线程、读线程和多个计算线程;其中,所述主控线程为:读取计算总炮数,启动所述读线程和所述多个计算线程,归约并保存每一炮能量,以及计算完成后,释放所述读线程和所述多个计算线程结束计算;所述读线程为:往队列II中读入所述地震炮记录数据中的每道地震炮数据;所述计算线程为:从所述队列II中获取所述每道地震炮数据,并计算每道的地震炮能量且累计到当前计算线程的当前炮能量中。

【技术特征摘要】
1.一种地震炮能量的并行化处理方法,包括:创建内存空间和队列II;创建主控线程、读线程和多个计算线程;其中,所述主控线程为:读取计算总炮数,启动所述读线程和所述多个计算线程,归约并保存每一炮能量,以及计算完成后,释放所述读线程和所述多个计算线程结束计算;所述读线程为:往队列II中读入所述地震炮记录数据中的每道地震炮数据;所述计算线程为:从所述队列II中获取所述每道地震炮数据,并计算每道的地震炮能量且累计到当前计算线程的当前炮能量中。2.根据权利要求1所述的地震炮能量的并行化处理方法,其中,所述主控线程的具体步骤如下:步骤1,基于地震炮记录数据,读取总计算炮数x,并启动读线程和计算线程;步骤2,等待当前地震炮能量计算完成;步骤3,如果当前地震炮能量计算完成,则归约并保存该地震炮能量,如果未完成,跳转到所述主控线程的步骤2;步骤4,判断x-1是否为0,如果x-1=0,则跳转到所述主控线程的步骤5,如果x-1≠0,则跳转到所述主控线程的步骤2;步骤5,完成所有地震炮能量规约,释放所述读线程和所述计算线程。3.根据权利要求1所述的地震炮能量的并行化处理方法,其中,所述读线程的具体步骤如下:步骤1,将所述地震炮记录数据中的每道地震炮数据放入队列II中相应的数据结构体I中;步骤2,判断所述队列II的每道数据是否放入完成,如果完成,则跳转到计算线程的步骤1,如果未完成,则跳转到所述读线程的步骤1;步骤3:等待读线程唤醒,唤醒后,跳转到所述读线程的步骤1。4.根据权利要求1所述的地震炮能量的并行化处理方法,其中,所述计算线程的具体步骤如下:步骤1,判断所述队列II中是否存在需要计算的地震炮数据,如果存在,获取所述队列II中一个数据结构体I,计算该道的地震炮能量,并跳转到所述计算线程的步骤2,如果不存在,跳转到所述读线程的步骤3;步骤2,分别判断当前计算的地震炮数据的炮号与前一道地震炮数据的炮号是否相同,如果相同,累加计算线程内的相应炮号的地震炮的能量,并跳转到计算线程的步骤1,如果不同,则判断“所属炮没有道数据标志”是否为真,如果为真,跳转到所述主控线程的步骤3,如果不为真,跳转到计算线程的步骤1。5.根据权利要求1所述的地震炮能量的并行化处理方法,其中,所述数据结构体I包括道数据指针、道所属炮号以及所属炮没有道数据标志,所述队列II包括所有道的相应的数据结构体I。6.一种地...

【专利技术属性】
技术研发人员:洪承煜杨尚琴陈浩庞世明王昀
申请(专利权)人:中国石油化工股份有限公司中国石油化工股份有限公司石油物探技术研究院
类型:发明
国别省市:北京,11

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

1