A GPU-based seismic data correlation method and device

Through the GPU-based seismic data correlation method, the problem of waste of computing resources caused by huge data volume in seismic exploration is solved, and fast and efficient correlation calculations are achieved on low-configured computers, meeting the needs of real-time large data volume computing.

CN112463401BActive Publication Date: 2025-02-25CHINA NAT PETROLEUM CORP +1
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202011197850.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-10-30
Publication Date
2025-02-25
Estimated Expiration
2040-10-30

AI Technical Summary

Technical Problem

In seismic exploration, when using a controllable source, the original amount of seismic data collected is huge, resulting in the need of professional high-performance computer equipment and cannot be performed in real time in the field, which wastes time and labor costs.

Method used

Using GPU-based seismic data related methods, the original seismic data is read into the GPU through multiple thread arrangements in the thread block, the controllable seismic source signal data is copied into the constant memory block of the GPU, and the shared memory block is defined in the thread block. Perform relevant calculations and determine the relevant seismic data sample point value.

Benefits of technology

Using GPU acceleration, the relevant calculation of seismic data can be quickly realized on computers with lower configurations, and the related algorithms do not occupy CPU resources, meeting the requirements of real-time large data calculation in production.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112463401B_ABST
    Figure CN112463401B_ABST
Patent Text Reader

Abstract

The present invention provides a seismic data correlation method and device based on GPU, the method comprising: arranging multiple threads in a thread block to determine the arranged thread block; copying controllable seismic source force signal data to a constant memory block of a GPU; defining a shared memory block in the thread block, and reading in original seismic data using the arranged thread block; performing relevant calculations using the arranged thread block according to the controllable seismic source force signal data in the constant memory block of the GPU and the original seismic data in the shared memory block, and determining the relevant seismic data sample point value. The embodiment of the present invention utilizes GPU acceleration to quickly realize the relevant calculation of seismic data with a computer of a lower configuration, and the relevant algorithm does not occupy CPU resources, and the CPU resources can be used for other calculation items, meeting the requirements of real-time large data volume calculation in production.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of oil exploration technology, and in particular to a GPU-based seismic data correlation method and device. Background Art

[0002] This section is intended to provide a background or context to embodiments of the invention that are recited in the claims. No description herein is admitted to be prior art by inclusion in this section.

[0003] In seismic exploration, excitation sources include explosives, controllable vibrators, air guns, etc. When using controllable vibrators as excitation sources, it is necessary to perform relevant processing on the seismic data directly received.

[0004] A data in the original data of seismic data is actually a floating point array dataIn[DN], and its array size DN is called the number of sample points; the controllable source force signal is also a floating point array signal[SN]. The so-called correlation processing is to perform correlation operations on the original acquisition channel data and the controllable source force signal data.

[0005] In actual operations, due to the huge amount of original seismic data, professional high-performance computer equipment is needed to perform relevant calculations. However, when the controllable vibrator is used in the field, it is impossible to carry professional high-performance computer equipment at any time. The original seismic data needs to be stored in the hard disk, and the relevant calculations will be concentrated after the controllable vibrator operation is completed, which wastes time and manpower costs.

[0006] Therefore, how to provide a new solution that can solve the above technical problems is a technical problem that needs to be solved urgently in this field. Summary of the invention

[0007] The embodiment of the present invention provides a seismic data correlation method based on a GPU, which can implement seismic data correlation calculation using a computer with a relatively low configuration. The method includes:

[0008] Arrange multiple threads in the thread block and determine the arranged thread block;

[0009] Copy the vibrator force signal data to the constant memory block of the GPU;

[0010] A shared memory block is defined in the thread block, and the original seismic data is read in using the arranged thread block;

[0011] According to the controllable source force signal data in the constant memory block of the GPU and the original seismic data in the shared memory block, the arranged thread block is used to perform relevant calculations to determine the relevant seismic data sample point values.

[0012] The embodiment of the present invention further provides a seismic data correlation device based on a GPU, comprising:

[0013] A thread scheduling module is used to schedule multiple threads in a thread block and determine the scheduled thread block;

[0014] A controllable vibrator force signal data copy module, used for copying the controllable vibrator force signal data to the constant memory block of the GPU;

[0015] The module for reading raw seismic data into a shared memory block is used to define a shared memory block in a thread block, and use the arranged thread block to read raw seismic data;

[0016] The relevant seismic data sample point value determination module is used to determine the relevant seismic data sample point value by performing relevant calculations using the arranged thread blocks according to the controllable source force signal data in the constant memory block of the GPU and the original seismic data in the shared memory block.

[0017] An embodiment of the present invention further provides a computer device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the above-mentioned GPU-based seismic data correlation method when executing the computer program.

[0018] An embodiment of the present invention further provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program for executing the above-mentioned GPU-based seismic data correlation method.

[0019] The embodiment of the present invention provides a method and device for correlating seismic data based on a GPU. First, multiple threads in a thread block are arranged to determine the arranged thread block; then the controllable seismic source force signal data is copied to the constant memory block of the GPU; then a shared memory block is defined in the thread block, and the original seismic data is read in by using the arranged thread block; finally, the arranged thread block is used to perform relevant calculations based on the controllable seismic source force signal data in the constant memory block of the GPU and the original seismic data in the shared memory block to determine the sample point value of the relevant seismic data. The embodiment of the present invention uses GPU acceleration to quickly realize the relevant calculation of seismic data with a computer with a lower configuration, and the relevant algorithm does not occupy CPU resources, and the CPU resources can be used for other calculation items, meeting the requirements of real-time large data volume calculation in production. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the prior art descriptions. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work. In the drawings:

[0021] Figure 1 A schematic diagram of a GPU-based seismic data correlation method according to an embodiment of the present invention.

[0022] Figure 2 A schematic diagram of a GPU-based seismic data correlation method for reading original seismic data using an arranged thread block according to an embodiment of the present invention.

[0023] Figure 3 A schematic diagram of determining relevant seismic data sample point values ​​in a GPU-based seismic data correlation method according to an embodiment of the present invention.

[0024] Figure 4 A schematic diagram of a computer device for running a GPU-based seismic data correlation method implemented in the present invention.

[0025] Figure 5 The figure is a schematic diagram of a GPU-based seismic data correlation device according to an embodiment of the present invention. DETAILED DESCRIPTION

[0026] To make the purpose, technical solution and advantages of the embodiments of the present invention more clear, the embodiments of the present invention are further described in detail below in conjunction with the accompanying drawings. Here, the exemplary embodiments of the present invention and their descriptions are used to explain the present invention, but are not intended to limit the present invention.

[0027] Figure 1 FIG. 1 is a schematic diagram of a GPU-based seismic data correlation method according to an embodiment of the present invention. Figure 1 As shown, an embodiment of the present invention provides a seismic data correlation method based on a GPU, which can implement seismic data correlation calculation using a computer with a relatively low configuration. The method includes:

[0028] Step 101: Arrange multiple threads in a thread block and determine an arranged thread block;

[0029] Step 102: copy the vibrator force signal data to the constant memory block of the GPU;

[0030] Step 103: define a shared memory block in the thread block, and use the arranged thread block to read in the original seismic data;

[0031] Step 104: According to the vibrator force signal data in the constant memory block of the GPU and the original seismic data in the shared memory block, the arranged thread block is used to perform relevant calculations to determine the relevant seismic data sample point values.

[0032] The embodiment of the present invention provides a seismic data correlation method based on GPU, which first arranges multiple threads in a thread block to determine the arranged thread block; then copies the controllable seismic source force signal data to the constant memory block of the GPU; then defines a shared memory block in the thread block, and uses the arranged thread block to read the original seismic data; finally, according to the controllable seismic source force signal data in the constant memory block of the GPU and the original seismic data in the shared memory block, the arranged thread block is used to perform relevant calculations to determine the relevant seismic data sample point values. The embodiment of the present invention uses GPU acceleration to quickly realize the relevant calculation of seismic data with a computer with a lower configuration, and the relevant algorithm does not occupy CPU resources, and the CPU resources can be used for other calculation items, meeting the requirements of real-time large data volume calculation in production.

[0033] An embodiment of the present invention provides a GPU-based seismic data correlation method, which may include:

[0034] Arrange multiple threads in the thread block and determine the arranged thread block;

[0035] Copy the vibrator force signal data to the constant memory block of the GPU;

[0036] A shared memory block is defined in the thread block, and the original seismic data is read in using the arranged thread block;

[0037] According to the controllable source force signal data in the constant memory block of the GPU and the original seismic data in the shared memory block, the arranged thread block is used to perform relevant calculations to determine the relevant seismic data sample point values.

[0038] GPU programming generally requires writing a kernel function, which is executed on the graphics card. GPU programming generally uses the large number of processors on the graphics card to execute this kernel function in parallel. The GPU programming model uses two levels to manage threads. The first level is the grid, and the second level is the thread block. A computing task is equivalent to a grid. The grid can be divided into several blocks, and each block can contain several threads.

[0039] Threads between different blocks are generally independent and do not require synchronization. Threads within a block can cooperate with each other to complete related computing tasks.

[0040] Constant memory: Some data that remain unchanged throughout the calculation process can be placed in constant memory. Compared with the global memory of the graphics card, the access speed of constant memory is much faster.

[0041] Block shared memory (shared memory), each thread in a block can have a shared memory, and threads in the same block can access the same shared memory. Threads accessing shared memory are much faster than accessing the graphics card's global memory.

[0042] When implementing a GPU-based seismic data correlation method provided by an embodiment of the present invention, in one embodiment, the aforementioned arrangement of multiple threads in a thread block includes:

[0043] The same original seismic data is evenly divided into multiple threads in the thread block, and multiple threads are arranged to calculate separately.

[0044] In an embodiment, multiple threads in a thread block are arranged, including: the same original seismic data is evenly distributed to multiple threads in the thread block, and the multiple threads are arranged to perform calculations separately.

[0045] In one computing task, the relevant calculation of TN channel data needs to be completed. Let N be the number of relevant post-channel data samples, and the number of threads in each block is blockDimX=512;

[0046] The number of blocks in each grid is gridDimX=(N-1) / blockDimX+1, gridDimY=TN.

[0047] The number of blocks contained in the grid and the number of threads contained in the block are both expressed in the form of a three-dimensional array (gridDimX, gridDimY, gridDimZ), (blockDimZ, blockDimZ, blockDimX). In this embodiment, the number of blocks in each grid is gridDimX*gridDimY*1, and the number of threads in each block is blockDimX*1*1; wherein the aforementioned * represents a dot product.

[0048] The threads in a block are all used to calculate the same seismic data, and each thread calculates one or several sample points. The calculation of different data is arranged in different blocks. Since there is an upper limit on the number of threads in a block (usually 1024), the calculation of one data can be distributed to several blocks.

[0049] In the embodiment, the force signal data signal[SN] is copied to the constant memory block of the GPU; the force signal data is the same for all data in a computing task, so it is copied to the constant memory block of the GPU, so that accessing the constant memory to retrieve data in subsequent calculations is much faster than retrieving data from the GPU global memory.

[0050] In the embodiment, a shared memory block is defined in the thread block, and a GPU block shared memory block shareData[512+SN-1] is defined to store the original seismic data required to be used in the current block operation.

[0051] Figure 2 FIG. 1 is a schematic diagram of a GPU-based seismic data correlation method for reading original seismic data using an arranged thread block according to an embodiment of the present invention. Figure 2 As shown, when a seismic data correlation method based on a GPU is specifically implemented according to an embodiment of the present invention, in one embodiment, the aforementioned method of reading the original seismic data using the arranged thread block includes:

[0052] Step 201: evenly distribute the original seismic data to multiple threads in a thread block;

[0053] Step 202: Multiple threads in the thread block execute in parallel to read the original seismic data into the shared memory block.

[0054] In an embodiment, the original seismic data is read in using the arranged thread block, including: firstly, the original seismic data is evenly divided into multiple threads in the thread block; then, the multiple threads in the thread block are executed in parallel to read the original seismic data into the shared memory block.

[0055] Use multiple GPU threads to read a piece of related pre-seismic data into the GPU block shared memory in parallel.

[0056] Since many data of the sample points in the same channel are repeatedly used during calculation, if they are all read from the GPU global memory, the performance will be poor and it will cause waiting for computing resources. Therefore, a shared memory block shareData[DN] is defined to store the relevant channel data, and the reading of this channel data is evenly distributed to all threads of the current block for parallel execution to improve the reading speed.

[0057] When implementing a GPU-based seismic data correlation method provided by an embodiment of the present invention, in one embodiment, the aforementioned multiple threads are executed in parallel, the original seismic data is read into a shared memory block, and multi-threaded synchronous operation is adopted.

[0058] Multiple threads execute in parallel to read the original seismic data into the shared memory block. Thread synchronization is required. Subsequent calculations can only be performed after all threads have completed the reading operation and the current original seismic data has been completely read into the GPU's block shared memory.

[0059] In the embodiment, the original data is first copied to the sharedData in the kernel function. This task is evenly divided among the 512 threads. Each thread copies (512+SN-2) / 512+1 sample values. After copying the data, a thread synchronization is added to wait until all threads in the block have finished copying before executing further.

[0060] Figure 3 FIG. 1 is a schematic diagram of determining relevant seismic data sample point values ​​of a seismic data correlation method based on a GPU according to an embodiment of the present invention. Figure 3 As shown, when implementing a seismic data correlation method based on a GPU provided by an embodiment of the present invention, in one embodiment, the aforementioned controllable source force signal data in the constant memory block of the GPU and the original seismic data in the shared memory block are used to perform correlation calculations using the arranged thread blocks to determine the relevant seismic data sample point values, including:

[0061] Step 301: using multiple threads in a thread block to read in parallel the vibrator force signal data in the constant memory block of the GPU and the original seismic data in the shared memory block;

[0062] Step 302: Perform convolution operation on the vibrator force signal data and the original seismic data in parallel using multiple threads to determine the sample point values ​​of the relevant seismic data.

[0063] Each GPU thread is responsible for calculating the value of one or several sample points in a channel. The calculation formula is shown in Formula 1 above. In this way, the threads in one or several blocks are responsible for calculating a channel of data. The relevant original channel data and force signal data are read from the block shared memory and GPU constant memory. The calculation is highly parallelized and the data reading efficiency is extremely high, making the entire related algorithm run very efficiently.

[0064] According to the blockID and threadID, it can be calculated which sample point of which channel the current thread should calculate, and then the formula in formula 1 is used to calculate the corresponding sample point value.

[0065] The trace index is traceIdx=blockIdxY, that is, the index of the block where the current thread is located in the Y dimension (see above, the second dimension size is gridDimY=TN).

[0066] The sample point index is ptIdx=blockDimX*blockIdxX+threadIdxX, where blockDimX is the size of the block in the X dimension, 512, blockIdxX is the index of the block in the X dimension, and threadIdxX is the index of the current thread in the X dimension within the block.

[0067] In the embodiment, the relevant seismic data sample point values ​​are determined as follows:

[0068]

[0069] Among them, dataOut is the sample value of the relevant seismic data; dataIn is the original seismic data; signal is the controllable source force signal; the SN elements starting from the i-th element in the array dataIn are multiplied and accumulated in sequence, and the sample value of the i-th element in dataOut is obtained. The correlated data is dataOut[N] (where N<=DN-SN+1, so DN should be greater than SN), and the correlation algorithm uses the above-mentioned convolution algorithm to calculate the value of each sample point.

[0070] The above-mentioned expressions for determining the sample point values ​​of relevant seismic data are for illustration only. Those skilled in the art will appreciate that, during implementation, the above formulas may be deformed in a certain form and other parameters or data may be added, or other specific formulas may be provided as needed. All of these variations should fall within the scope of protection of the present invention.

[0071] Figure 4 A schematic diagram of a computer device for running a GPU-based seismic data correlation method implemented in the present invention, such as Figure 4 As shown, an embodiment of the present invention further provides a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the above-mentioned GPU-based seismic data correlation method when executing the computer program.

[0072] An embodiment of the present invention further provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program for executing and implementing the above-mentioned GPU-based seismic data correlation method.

[0073] The present invention also provides a GPU-based seismic data correlation device, as described in the following embodiments. Since the principle of solving the problem by the device is similar to that of a GPU-based seismic data correlation method, the implementation of the device can refer to the implementation of a GPU-based seismic data correlation method, and the repeated parts will not be repeated.

[0074] Figure 5FIG. 1 is a schematic diagram of a GPU-based seismic data correlation device according to an embodiment of the present invention. Figure 5 As shown, the embodiment of the present invention further provides a seismic data correlation device based on a GPU, which may include:

[0075] The thread scheduling module 501 is used to schedule multiple threads in a thread block and determine a scheduled thread block;

[0076] A controllable vibrator force signal data copy module 502, used to copy the controllable vibrator force signal data to the constant memory block of the GPU;

[0077] The original seismic data is read into a shared memory block module 503, which is used to define a shared memory block in the thread block, and use the arranged thread block to read in the original seismic data;

[0078] The relevant seismic data sample point value determination module 504 is used to determine the relevant seismic data sample point value by performing relevant calculations using the arranged thread blocks according to the controllable source force signal data in the constant memory block of the GPU and the original seismic data in the shared memory block.

[0079] When implementing a GPU-based seismic data correlation device provided by an embodiment of the present invention, in one embodiment, the aforementioned thread scheduling module is specifically used to:

[0080] The same original seismic data is evenly divided into multiple threads in the thread block, and multiple threads are arranged to calculate separately.

[0081] When implementing a GPU-based seismic data correlation device provided by an embodiment of the present invention, in one embodiment, the aforementioned raw seismic data is read into a shared memory block module, which is specifically used for:

[0082] Evenly distribute the raw seismic data to multiple threads in the thread block;

[0083] Multiple threads within a thread block execute in parallel to read raw seismic data into a shared memory block.

[0084] When implementing a GPU-based seismic data correlation device provided by an embodiment of the present invention, in one embodiment, the aforementioned multiple threads execute in parallel to read the original seismic data into a shared memory block, using multi-threaded synchronous operations.

[0085] When implementing a GPU-based seismic data correlation device provided by an embodiment of the present invention, in one embodiment, the aforementioned related seismic data sample point value determination module is specifically used to:

[0086] Using multiple threads in the thread block, read the vibrator force signal data in the constant memory block of the GPU and the original seismic data in the shared memory block in parallel;

[0087] Multi-threaded parallel execution of the controllable source force signal data and the original seismic data to perform convolution operations and determine the relevant seismic data sample point values.

[0088] In summary, the embodiment of the present invention provides a GPU-based seismic data correlation method and device, which first arranges multiple threads in a thread block to determine the arranged thread block; then copies the controllable seismic source force signal data to the constant memory block of the GPU; then defines a shared memory block in the thread block, and uses the arranged thread block to read in the original seismic data; finally, according to the controllable seismic source force signal data in the constant memory block of the GPU and the original seismic data in the shared memory block, the arranged thread block is used to perform relevant calculations to determine the relevant seismic data sample point values. The embodiment of the present invention uses GPU acceleration to quickly realize the relevant calculation of seismic data with a computer with a lower configuration, and the relevant algorithm does not occupy CPU resources, and the CPU resources can be used for other calculation items, meeting the requirements of real-time large data volume calculation in production.

[0089] Those skilled in the art will appreciate that embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0090] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0091] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1A function specified in one or more boxes.

[0092] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0093] The specific embodiments described above further illustrate the objectives, technical solutions and beneficial effects of the present invention in detail. It should be understood that the above description is only a specific embodiment of the present invention and is not intended to limit the scope of protection of the present invention. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present invention should be included in the scope of protection of the present invention.

Claims

1. A GPU-based seismic data correlation method, characterized in that: include: Arrange multiple threads in the thread block and determine the arranged thread block; Copy the vibrator force signal data to the constant memory block of the GPU; A shared memory block is defined in the thread block, and the original seismic data is read in using the arranged thread block; According to the vibrator force signal data in the constant memory block of the GPU and the original seismic data in the shared memory block, the arranged thread block is used to perform relevant calculations to determine the relevant seismic data sample point values; Arrange multiple threads in a thread block, including: The same original seismic data is evenly divided into multiple threads in the thread block, and multiple threads are arranged to calculate separately; According to the vibrator force signal data in the constant memory block of the GPU and the original seismic data in the shared memory block, the arranged thread block is used to perform relevant calculations to determine the relevant seismic data sample point values, including: Using multiple threads in the thread block, read the vibrator force signal data in the constant memory block of the GPU and the original seismic data in the shared memory block in parallel; Multi-threaded parallel execution of the vibrator force signal data and the original seismic data to perform convolution operations and determine the relevant seismic data sample point values; Determine the relevant seismic data sample point values ​​as follows: Among them, dataOut is the sample value of the related seismic data; dataIn is the original seismic data; signal is the controllable seismic source force signal; the SN elements starting from the i-th element in the array dataIn are multiplied and added in sequence, and the result is the sample value of the i-th element in dataOut; the correlated data is dataOut[N], where N<=DN-SN+1.

2. The method according to claim 1, characterized in that Use the arranged thread blocks to read in the raw seismic data, including: Evenly distribute the raw seismic data to multiple threads in the thread block; Multiple threads within a thread block execute in parallel to read raw seismic data into a shared memory block.

3. The method according to claim 2, characterized in that The multiple threads execute in parallel to read the original seismic data into a shared memory block, using multi-thread synchronization operations.

4. A GPU-based seismic data correlation device, characterized in that: include: A thread scheduling module is used to schedule multiple threads in a thread block and determine the scheduled thread block; A controllable vibrator force signal data copy module, used for copying the controllable vibrator force signal data to the constant memory block of the GPU; The module for reading raw seismic data into a shared memory block is used to define a shared memory block in a thread block, and use the arranged thread block to read raw seismic data; A module for determining the sample point value of relevant seismic data is used to determine the sample point value of relevant seismic data by performing relevant calculations using the arranged thread blocks according to the controllable seismic source force signal data in the constant memory block of the GPU and the original seismic data in the shared memory block; Thread scheduling module, specifically used for: The same original seismic data is evenly divided into multiple threads in the thread block, and multiple threads are arranged to calculate separately; The module for determining the sample value of relevant seismic data is specifically used for: Using multiple threads in the thread block, read the vibrator force signal data in the constant memory block of the GPU and the original seismic data in the shared memory block in parallel; Multi-threaded parallel execution of the vibrator force signal data and the original seismic data to perform convolution operations and determine the relevant seismic data sample point values; Determine the relevant seismic data sample point values ​​as follows: Among them, dataOut is the sample value of the related seismic data; dataIn is the original seismic data; signal is the controllable seismic source force signal; the SN elements starting from the i-th element in the array dataIn are multiplied and added in sequence, and the result is the sample value of the i-th element in dataOut; the correlated data is dataOut[N], where N<=DN-SN+1.

5. The device according to claim 4, characterized in that The raw seismic data is read into the shared memory block module, which is specifically used for: Evenly distribute the raw seismic data to multiple threads in the thread block; Multiple threads within a thread block execute in parallel to read raw seismic data into a shared memory block.

6. The device according to claim 5, characterized in that The multiple threads execute in parallel to read the original seismic data into a shared memory block, using multi-thread synchronization operations.

7. A computer device comprising a memory, a processor and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the method according to any one of claims 1 to 3 is implemented.

8. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 3 is implemented.

Citation Information

Patent Citations

  • Equipment for correlated processing of vibroseis data in GPU / CPU coordinated mode and method thereof

    CN102628956A