[发明专利]一种利用CPU/MIC协同计算加速地震叠前时间偏移的方法有效
申请号: | 201210475876.2 | 申请日: | 2012-11-22 |
公开(公告)号: | CN103018776A | 公开(公告)日: | 2013-04-03 |
发明(设计)人: | 张清;张广勇 | 申请(专利权)人: | 浪潮电子信息产业股份有限公司 |
主分类号: | G01V1/28 | 分类号: | G01V1/28;G01V1/30 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 250014 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 利用 cpu mic 协同 计算 加速 地震 时间 偏移 方法 | ||
技术领域
本发明涉及计算机高性能计算领域、石油地震勘探领域,具体地说是一种利用CPU/MIC协同计算加速地震叠前时间偏移的方法。
背景技术
地震叠前时间偏移(简称PSTM)已进行了多年研究,上世纪九十年代初期开始初步应用,中后期在不少探区的地震勘探中发挥了重要作用,进入本世纪后开始了较为广泛的应用,目前部分处理公司和计算中心已把该技术作为常规软件加入到常规处理流程中,成为获取保幅信息实现属性分析、AVO/AVA/AVP反演和其它参数反演的重要步骤和依据。
PSTM是复杂构造成像最有效的方法之一,能适应纵横向速度变化较大的情况,适用于大倾角的偏移成像。PSTM每输出一个地震道,就是一次海量运算。以1毫秒采样,6秒数据为例,一个地震道的输出需要至少1000万道甚至更多(偏移孔径决定)的输入道,每一个点要做两次均方根运算以及两次加法运算,振幅补偿两次乘法运算。如此计算下来,实现一道偏移需要1000000×6000×2×(平方+加法+乘法)次数学运算,计算量和需要处理的数据量都极其巨大!
目前,人们往往使用大规模的服务器集群来进行叠前偏移处理,其原理是将数据先分配到各个CPU核上,然后由各个CPU核单独进行计算,最后将结果汇总输出。这种做法消耗了大量的时间、电力和维护费用。而且,随着人们对石油勘探地震资料处理的周期要求越来越短,精度要求越来越高,服务器集群的规模越做越大,在系统构建成本、数据中心机房空间、内存和I/O带宽、功耗散热和电力限制、可管理性、编程简易性、扩展性、管理维护费用等方面都面临着巨大的挑战。
MIC是Intel公司开发的,用于高性能并行计算的众核芯片,具有超高计算性能。MIC在计算机体系中,并非欲取代CPU,而是作为协处理器存在的。MIC芯片通常有50个以上精简的x86核心,每个core支持4个硬件线程,可并行执行的任务数达到200以上,提供高度并行的计算能力,其双精峰值性能达到1TFlops。
发明内容
本发明鉴于现有地震叠前时间偏移(简称PSTM)在应用中存在的问题,及MIC高性能并行计算的特点,提供一种利用CPU/MIC协同计算加速地震叠前时间偏移的方法。
本发明是以PSTM的计算划分、PSTM的性能瓶颈及PSTM计算部分串行算法的并行分析为基础进行提出的,下面对这三点加以说明:
a) PSTM的计算划分:分析PSTM程序,按照功能把PSTM划分为FFT计算部分和PSTM计算部分;
b) PSTM的性能瓶颈:PSTM计算占整个PSTM程序运行的绝大部分时间,PSTM计算部分是整个PSTM的性能瓶颈部分;
c) PSTM计算部分串行算法的并行分析:通过分析PSTM计算部分串行算法,地
震道数据之间可以并行处理,而每一地震道数据内,它所要处理L_NUM条侧线与每条侧线对应的CMP_NUM个CMP点,即所要处理的CMP点数为L_NUM*CMP_NUM,每个点可以实现并行。
本发明所提出的加速地震叠前时间偏移的方法,是按如下方式解决所述技术问题的:该方法采用CPU与MIC异构架构,其中CPU负责FFT计算、读地震道数据、进程控制与调度,还参与PSTM计算,而MIC只做PSTM计算,同时计算之间采用异步并行思想及动态负载均衡方式,实现CPU与MIC协同计算与共同计算,达到加速PSTM的目的;该方法整体设计包含三个方面:PSTM计算部分串行算法的并行设计、PSTM整体逻辑结构设计及CPU与MIC的异步计算设计。
下面对该方法整体设计的各个方面进行说明:
(1)PSTM计算部分串行算法的并行设计
不同的地震道放在CPU或者MIC设备,实现设备间的并行,同时达到动态负载均衡,对于每一道数据而言,CMP点按照每个设备所起的线程数进行并行;
(2)PSTM整体逻辑结构设计
该CPU/MIC异构系统包含2个MIC卡和2块CPU,CPU端负责进程调度、FFT计算,并参与PSTM计算;MIC端只负责PSTM计算,CPU与MIC实现协同计算与共同计算;CPU端起3个计算进程:计算进程1负责控制MIC1的计算,计算进程2负责控制MIC2的计算,计算进程3负责控制2块CPU的计算;
(3)CPU与MIC的异步计算设计
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮电子信息产业股份有限公司,未经浪潮电子信息产业股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210475876.2/2.html,转载请声明来源钻瓜专利网。