Reverse time migration parallel computing method based on DCU-CPU hybrid architecture

By adopting a hybrid DCU-CPU architecture in the inverse-time offset algorithm and using HIPCC programming to achieve heterogeneous cluster collaborative acceleration, the problem of low efficiency of inverse-time offset calculation in the prior art is solved, and efficient inverse-time offset calculation is achieved.

CN119781949APending Publication Date: 2025-04-08CHINA PETROLEUM & CHEMICAL CORP +1
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202311291292.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-10-08
Publication Date
2025-04-08

AI Technical Summary

Technical Problem

The existing inverse-time offset algorithm has huge computing volume, and it is difficult to complete the computing task based on the CPU computing power alone. There is a big difference between the hardware parameters of GPU and DCU and the programming language, so it cannot be applied directly.

Method used

Using the anti-time offset parallel computing method based on the DCU-CPU hybrid architecture, the DCU-CPU heterogeneous cluster collaborative acceleration is achieved through HIPCC programming, computing tasks are allocated to multiple DCU nodes, and the CPU reads data and outputs the results.

Benefits of technology

It realizes efficient counter-time offset calculation, shortens the calculation time, makes full use of the advantages of DCU and CPU, and avoids the adaptation problems caused by the hardware differences between GPU and DCU.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119781949A_ABST
    Figure CN119781949A_ABST
Patent Text Reader

Abstract

The invention provides a reverse time migration parallel computing method based on a DCU-CPU hybrid architecture. The reverse time migration parallel computing method based on the DCU-CPU hybrid architecture comprises the following steps: step 1, preparing seismic data; step 2, preparing an offset speed; step 3, carrying out offset calculation; and step 4, outputting a final imaging result. According to the reverse time migration parallel computing method based on the DCU-CPU hybrid architecture, the characteristics of a reverse time migration computing method and input data are analyzed in advance, HIPCC programming is adopted during specific migration computing to achieve DCU-CPU heterogeneous cluster collaborative acceleration, efficient reverse time migration computing can be achieved through the DCU-CPU hybrid architecture, and computing time is shortened.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of petroleum geophysical exploration, and in particular to a reverse time migration parallel computing method based on a DCU-CPU hybrid architecture. Background Art

[0002] The reverse time migration algorithm is currently the most accurate migration imaging method. It uses the two-way wave equation to perform wave field extension calculations. The wave field propagation is not restricted by angles and has unique advantages in solving complex geological structure imaging problems. Although the algorithm has been proposed a long time ago, due to the huge amount of calculation, it is difficult to complete the calculation task with CPU computing power alone. It was not until the development of GPU parallel computing that it was applied in the industry.

[0003] The Deep Computing Unit (DCU) on the Sugon supercomputer is an accelerator card developed for AI and deep learning. It is based on the GPGPU (General-purpose computing on graphics processing units) architecture and can replace traditional GPUs to achieve heterogeneous parallel acceleration. Compared with the CPU, it is more suitable for the calculation of the reverse time migration algorithm and can achieve a higher acceleration ratio. Currently, the mainstream reverse time migration algorithms are all based on the GPU-CPU heterogeneous architecture for parallel acceleration. The CPU is responsible for data reading and writing, node communication and simple calculations, and the hot spots of reverse time migration calculations are accelerated by the GPU in parallel.

[0004] Currently, mainstream reverse time migration algorithms are all based on parallel acceleration based on GPU-CPU heterogeneous architecture. Although GPU and DCU are both based on GPGPU architecture, they are quite different in terms of hardware parameters and programming languages, and cannot be directly applied.

[0005] In the Chinese patent application with application number: CN202210007195.7, a multidimensional function optimization acceleration method based on an artificial bee colony algorithm is involved, and the method includes the following steps: in order to evaluate the performance of the ABC algorithm, four different multidimensional functions for seeking extreme values ​​are used to test the performance of the ABC algorithm, and the CPU+DCU heterogeneous architecture mode is utilized, and the multi-threading technology of the HIP heterogeneous language is used for parallel optimization. On the DCU platform, the computing tasks are divided into different threads; the invention improves the efficiency of the ABC algorithm in seeking the optimal solution for the multidimensional function. Compared with the serial ABC algorithm and the GPU-ABC algorithm, this method can obtain better performance and improve the computational efficiency of multidimensional functions. It can further efficiently process the massive data brought by agricultural and rural development, and will be expanded to multiple computing nodes next. At the same time, vectorized optimization methods can also be performed to more fully discover the parallelism in the algorithm and maximize the execution efficiency of the algorithm.

[0006] In the Chinese patent application with application number: CN202210066814.X, a calculation method for optimizing memory access of sparse matrix-vector multiplication is involved, which is applicable to DCU and GPU architectures. The method includes: dividing the original sparse matrix into several blocks according to a fixed number of rows, each block is calculated by a thread block alone, and a fixed-size space is opened in LDS for each thread block; calculating the number of rounds required for each thread block; in one round of calculation, all threads in each thread block complete several non-zero element calculations and write the results to LDS; one or more threads in each thread block sum the multiplication results of LDS and save the results to registers; after all rounds of calculations are completed, the results in the registers are further calculated and the results are written back to the video memory. This invention is based on the original CSR format, does not require preprocessing, and can make full use of the memory access merging characteristics to achieve higher memory access bandwidth utilization.

[0007] In the Chinese patent application with application number: CN202210649467.3, a file processing method, device, electronic device and storage medium are involved, the method includes: obtaining a binary data file, the binary data file is converted from a dynamic library file, the dynamic library file is used to provide a first function that can be called; introducing the binary data file into a first code file, the first code file includes the source code of a first Delphi program or a first DCU library file written based on Delphi, the first code file is used to call at least one second function, the second function is included in the first function; modifying the function entry address of at least one second function in the first code file to the address of the data corresponding to the at least one second function in the binary data file, respectively, to obtain a second code file; compiling the second code file based on Delphi, to obtain a second Delphi program or a second DCU library file. The above scheme can effectively avoid the problem that the library files cannot be used universally due to different Delphi versions between different users.

[0008] In the Chinese patent application with application number: CN202110053894.0, an edge computing architecture for caching deep learning is involved. The architecture includes a data acquisition module, a cache unit, a deep learning computing unit, a control module and a memory unit, wherein the cache unit is used to store the trained deep learning model; the data acquisition module is used to collect data to be identified; the deep learning computing unit is used to identify the received data to be identified by the deep learning model; the control module is used to manage the address of the data in the cache unit, and control the reading of the deep learning model data of the cache unit, as well as determine the storage or transmission of the target data according to the recognition result of the deep learning model. This application can quickly implement the application of deep learning by adding a GPU or NPU module to the front-end device / edge device, and the module and the data acquisition module share the same cache.

[0009] The above existing technologies are all significantly different from the present invention and fail to solve the technical problem we want to solve. Therefore, we have invented a new parallel calculation method for reverse time migration based on a DCU-CPU hybrid architecture. Summary of the invention

[0010] The purpose of the present invention is to provide a reverse time migration parallel calculation method based on a DCU-CPU hybrid architecture, which can utilize the DCU-CPU hybrid architecture to realize efficient reverse time migration calculation and shorten the calculation time.

[0011] The object of the present invention can be achieved by the following technical measures: a reverse time migration parallel calculation method based on a DCU-CPU hybrid architecture, the reverse time migration parallel calculation method based on a DCU-CPU hybrid architecture comprises:

[0012] Step 1, prepare seismic data;

[0013] Step 2, prepare the offset speed;

[0014] Step 3, perform offset calculation;

[0015] Step 4: Output the final imaging result.

[0016] The purpose of the present invention can also be achieved by the following technical measures:

[0017] In step 1, the seismic data is actual seismic data or forward modeling seismic data that has been preprocessed by denoising, deconvolution, and static correction and sorted according to shot gathers.

[0018] In step 2, the migration velocity is the depth domain layer velocity. The horizontal spatial range of the velocity body must be greater than or equal to the horizontal spatial position of the seismic data shot points and receiver points to be calculated, and the depth of the velocity body must be greater than or equal to the maximum depth of the migration calculation.

[0019] In step 2, based on the underground geological conditions, the depth domain layer velocity most suitable for reverse time migration imaging of seismic data is established; if the seismic data is forward simulation seismic data, the depth domain layer velocity model used in the forward simulation can be used as the migration velocity model.

[0020] Step 3 includes:

[0021] Step 31, start multiple DCU nodes and assign computing tasks to each DCU card;

[0022] Step 32, the CPU reads the single-gun scanning data range;

[0023] Step 33, the CPU reads the speed according to the data range;

[0024] Step 34, the CPU copies the data and speed into the DCU;

[0025] Step 35, DCU performs offset calculation;

[0026] Step 36, the CPU outputs the result.

[0027] In step 32, the CPU reads the seismic data of one shot at a time and counts the ranges of the shot points and the detection points in the shot.

[0028] In step 33, a partial velocity model required for calculation is read in conjunction with calculation parameters.

[0029] In step 34, the CPU copies the gun data and the corresponding velocity model to the DCU.

[0030] In step 35, the DCU calculates the forward wavefield extension using the source wavelet and the migration velocity at a certain time step, and then calculates the reverse wavefield extension using the seismic data and the migration velocity at a certain time step. During the forward and reverse wavefield extension process, the CPU saves the wavefield extension results calculated at each time step; the DCU or CPU calculates the forward and reverse wavefields based on the reverse time migration imaging conditions to obtain the imaging results.

[0031] In step 35, during the calculation process, the shot points and the receiver points need to correspond to the corresponding positions of the offset velocity data according to the elevation and horizontal coordinate positions after static correction and are used for offset calculation.

[0032] In step 35, DCU calculation and DCU and CPU data exchange are implemented through HIPCC programming. When using HIPCC programming, the number of elements calculated by the DCU at one time is as multiple of 64 as possible, corresponding to the hardware feature that the DCU thread warp contains 64 threads, so that hardware resources can be fully utilized to improve computing efficiency.

[0033] In step 36, after the DCU completes the calculation, it transmits the result to the CPU and updates the result to the calculation result temporary file.

[0034] In step 36, the calculation result temporary file includes one or more of common imaging point gathers, angle gathers and stacked imaging results.

[0035] In step 4, after all seismic data are calculated, the CPU merges all temporary calculation result files and outputs the final imaging result; the content of the final imaging result corresponds to the temporary calculation result file, including one or more of common imaging point gathers, angle gathers and stacked imaging results.

[0036] The reverse time migration parallel calculation method based on the DCU-CPU hybrid architecture in the present invention pre-analyzes the reverse time migration calculation method and input data characteristics, and adopts HIPCC programming to realize DCU-CPU heterogeneous cluster collaborative acceleration during the specific migration calculation. The reverse time migration parallel calculation method based on the DCU-CPU hybrid architecture of the present invention can utilize the DCU-CPU hybrid architecture to realize efficient reverse time migration calculation and shorten the calculation time. Currently, the mainstream reverse time migration algorithms are all based on the GPU-CPU heterogeneous architecture for parallel acceleration. Although both GPU and DCU are based on the GPGPU architecture, they are quite different in terms of hardware parameters, programming language, etc., and cannot be directly applied. BRIEF DESCRIPTION OF THE DRAWINGS

[0037] Figure 1 It is a flowchart of a specific embodiment of the reverse time migration parallel computing method based on the DCU-CPU hybrid architecture of the present invention;

[0038] Figure 2 It is a flow chart of implementing the offset core algorithm in a specific embodiment of the present invention;

[0039] Figure 3 It is a schematic diagram of the reverse time migration calculation result based on the DCU-CPU hybrid architecture in a specific embodiment of the present invention;

[0040] Figure 4 A schematic diagram of a reverse time migration calculation result based on a GPU-CPU hybrid architecture in a specific embodiment of the present invention;

[0041] Figure 5 A schematic diagram of a two-dimensional Marmous i velocity model used in forward modeling and reverse time migration calculations in Example 2;

[0042] Figure 6 Schematic diagram of the reverse time migration calculation result based on the DCU-CPU hybrid architecture in Example 2;

[0043] Figure 7 A schematic diagram of a two-dimensional velocity model used in forward modeling and reverse time migration calculations in Example 3;

[0044] Figure 8 In Example 3, Figure 7 A schematic diagram of one of the shot data obtained by forward modeling of the model shown and used for reverse time migration calculation;

[0045] Fig. 9 This is a schematic diagram of the reverse time migration calculation results based on the DCU-CPU hybrid architecture in Example 3. DETAILED DESCRIPTION

[0046] It should be noted that the following detailed descriptions are exemplary and are intended to provide further explanation of the present invention. Unless otherwise specified, all technical and scientific terms used herein have the same meanings as those commonly understood by those skilled in the art to which the present invention belongs.

[0047] It should be noted that the terms used herein are only for describing specific embodiments and are not intended to limit exemplary embodiments according to the present invention. As used herein, unless the context clearly indicates otherwise, the singular form is also intended to include the plural form. In addition, it should be understood that when the terms "comprising" and / or "including" are used in this specification, it indicates the presence of features, steps, operations and / or combinations thereof.

[0048] like Figure 1 As shown, Figure 1 The flowchart of the reverse time migration parallel calculation method based on the DCU-CPU hybrid architecture of the present invention. The reverse time migration parallel calculation method based on the DCU-CPU hybrid architecture includes:

[0049] (1) Prepare seismic data. Seismic data are actual seismic data or simulated seismic data that have been preprocessed by denoising, deconvolution, static correction, etc. and sorted according to shot collection.

[0050] (2) Prepare the migration velocity. The migration velocity is the depth domain layer velocity. The horizontal spatial range of the velocity body must be greater than or equal to the horizontal spatial position of the seismic data shot point and receiver point to be calculated, and the depth of the velocity body must be greater than or equal to the maximum depth of the migration calculation.

[0051] (3) Offset task running. Start multiple DCU nodes and assign computing tasks to each DCU card, such as Figure 2As shown in the figure, the CPU reads the seismic data of one shot at a time, counts the range of the shot points and the receiver points in the shot, and reads the partial velocity model required for the calculation in combination with the calculation parameters, and then copies the shot data and the corresponding velocity model to the DCU, performs the offset calculation on the DCU, and transmits the result to the CPU after the calculation is completed, and updates the result to the temporary file of the calculation result. The temporary file of the calculation result includes one or more of the common imaging point gather, the angle gather and the stacked imaging result. Before or after the result is updated to the temporary file of the calculation result, the value of the partial result can be changed according to the parameter. During the calculation process, the shot points and the receiver points need to correspond to the corresponding positions of the offset velocity data according to the elevation and horizontal coordinate positions after static correction and are used for the offset calculation. The DCU calculation and the data exchange between the DCU and the CPU are implemented by HIPCC programming. When using HIPCC programming, the number of elements calculated by the DCU at one time is as much as possible a multiple of 64, corresponding to the hardware feature that the DCU thread bundle contains 64 threads, so that the hardware resources can be fully utilized to improve the calculation efficiency.

[0052] (4) Output calculation results. After all seismic data are calculated, the CPU merges all calculation result temporary files and outputs the final imaging result. The content of the final imaging result corresponds to the calculation result temporary file, including one or more of the common imaging point gather, angle gather and stacked imaging result.

[0053] The following are several specific embodiments of the present invention.

[0054] Example 1

[0055] In a specific embodiment 1 of the present invention, the reverse time migration parallel computing method based on the DCU-CPU hybrid architecture includes the following steps:

[0056] The velocity model uses a standard three-dimensional salt dome model, which has 676, 676, and 210 sampling points in the x, y, and z directions, and the sampling interval of each sampling point in the x, y, and z directions is 20m. The seismic data is the simulated seismic data obtained by forward modeling using this model, with a sampling time of 4.92s, a sampling interval of 8ms, and a total of 96 shots. The seismic data is preprocessed by denoising, deconvolution, static correction, etc., and sorted according to the shot collection. The velocity model itself is a depth domain layer velocity model, and the horizontal spatial range is larger than the horizontal spatial position of the seismic data shot point and the receiver point, and the depth is greater than the maximum depth of the offset calculation. Start multiple DCU nodes, assign computing tasks to each DCU card, use the CPU to read one shot seismic data at a time, count the range of the shot point and the receiver point in the shot, and read the partial velocity model required for the calculation in combination with the calculation parameters, then copy the shot data and the corresponding velocity model to the DCU, perform the offset calculation on the DCU, and transmit the result to the CPU after the calculation is completed, and update the result to the calculation result temporary file. After all seismic data are calculated, the CPU merges all temporary calculation result files and outputs the final imaging result. Figure 3 As shown in the figure, the results of the reverse time migration algorithm based on the GPU-CPU hybrid architecture are as follows Figure 4 As shown, the two are consistent after comparison.

[0057] Example 2

[0058] Two-dimensional Marmous i model Figure 5 As shown, the maximum depth is 3000 meters and the lateral length is 9200 meters. The model is used for forward simulation to obtain the shot data as the calculation input seismic data. The Marmous i model is used as the offset velocity, and the horizontal spatial range is larger than the horizontal spatial position of the seismic data shot points and detection points, and the depth is larger than the maximum depth of the offset calculation. Start multiple DCU nodes, assign computing tasks to each DCU card, use the CPU to read one shot of seismic data at a time, count the range of the shot points and detection points in the shot, and read part of the velocity model required for the calculation in combination with the calculation parameters, then copy the shot data and the corresponding velocity model to the DCU, perform the offset calculation on the DCU, and after the calculation is completed, transmit the result to the CPU, and update the result to the calculation result temporary file. After all the seismic data are calculated, the CPU merges all the calculation result temporary files and outputs the final imaging result as shown below. Figure 6 shown.

[0059] Example 3

[0060] A two-dimensional model such as Figure 7 As shown in the figure, the maximum depth is 5000 meters and the lateral length is 5000 meters. The forward simulation using this model obtains the shot data, where the data of a certain shot is as follows Figure 8As shown, all forward shot gather data are used as input seismic data for calculation, using Figure 7 The model model is used as the offset velocity, and the horizontal spatial range is larger than the horizontal spatial position of the seismic data shot points and detection points, and the depth is greater than the maximum depth of the offset calculation. Start multiple DCU nodes, assign computing tasks to each DCU card, use the CPU to read one shot of seismic data at a time, count the range of the shot points and detection points in the shot, and read part of the velocity model required for the calculation in combination with the calculation parameters, then copy the shot data and the corresponding velocity model to the DCU, perform the offset calculation on the DCU, and after the calculation is completed, transmit the result to the CPU, and update the result to the temporary file of the calculation result. After all the seismic data are calculated, the CPU merges all the temporary files of the calculation results and outputs the final imaging result as shown below. Fig. 9 shown.

[0061] Finally, it should be noted that the above is only a preferred embodiment of the present invention and is not intended to limit the present invention. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art can still modify the technical solutions recorded in the aforementioned embodiments or replace some of the technical features therein with equivalents. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.

[0062] Except for the technical features described in the specification, all other technical features are known technologies to those skilled in the art.

Claims

1. A parallel computation method for reverse time migration based on a DCU-CPU hybrid architecture, characterized in that: The reverse time migration parallel calculation method based on the DCU-CPU hybrid architecture includes: Step 1, prepare seismic data; Step 2, prepare the offset speed; Step 3, perform offset calculation; Step 4: Output the final imaging result.

2. The reverse time migration parallel computing method based on DCU-CPU hybrid architecture according to claim 1 is characterized in that: In step 1, the seismic data is actual seismic data or forward modeling seismic data that has been preprocessed by denoising, deconvolution, and static correction and sorted according to shot gathers.

3. The reverse time migration parallel computing method based on DCU-CPU hybrid architecture according to claim 1, characterized in that: In step 2, the migration velocity is the depth domain layer velocity. The horizontal spatial range of the velocity body must be greater than or equal to the horizontal spatial position of the seismic data shot points and receiver points to be calculated, and the depth of the velocity body must be greater than or equal to the maximum depth of the migration calculation.

4. The reverse time migration parallel computing method based on DCU-CPU hybrid architecture according to claim 3 is characterized in that: In step 2, based on the underground geological conditions, the depth domain layer velocity most suitable for reverse time migration imaging of seismic data is established; if the seismic data is forward simulation seismic data, the depth domain layer velocity model used in the forward simulation can be used as the migration velocity model.

5. The reverse time migration parallel computing method based on DCU-CPU hybrid architecture according to claim 1, characterized in that: Step 3 includes: Step 31, start multiple DCU nodes and assign computing tasks to each DCU card; Step 32, the CPU reads the single-gun scanning data range; Step 33, the CPU reads the speed according to the data range; Step 34, the CPU copies the data and speed into the DCU; Step 35, DCU performs offset calculation; Step 36, the CPU outputs the result.

6. The reverse time migration parallel computing method based on DCU-CPU hybrid architecture according to claim 5, characterized in that: In step 32, the CPU reads the seismic data of one shot at a time and counts the ranges of the shot points and the detection points in the shot.

7. The reverse time migration parallel computing method based on DCU-CPU hybrid architecture according to claim 6, characterized in that: In step 33, a partial velocity model required for calculation is read in conjunction with calculation parameters.

8. The reverse time migration parallel computing method based on DCU-CPU hybrid architecture according to claim 7, characterized in that: In step 34, the CPU copies the gun data and the corresponding velocity model to the DCU.

9. The reverse time migration parallel computing method based on DCU-CPU hybrid architecture according to claim 8, characterized in that: In step 35, the DCU calculates the forward wavefield extension using the source wavelet and the migration velocity at a certain time step, and then calculates the reverse wavefield extension using the seismic data and the migration velocity at a certain time step. During the forward and reverse wavefield extension process, the CPU saves the wavefield extension results calculated at each time step; the DCU or CPU calculates the forward and reverse wavefields based on the reverse time migration imaging conditions to obtain the imaging results.

10. The reverse time migration parallel computing method based on DCU-CPU hybrid architecture according to claim 9, characterized in that: In step 35, during the calculation process, the shot points and the receiver points need to correspond to the corresponding positions of the offset velocity data according to the elevation and horizontal coordinate positions after static correction and are used for offset calculation.

11. The reverse time migration parallel computing method based on DCU-CPU hybrid architecture according to claim 10, characterized in that: In step 35, DCU calculation and DCU-CPU data exchange are implemented through HIPCC programming. When HIPCC programming is used, the number of elements calculated by a DCU is a multiple of 64, which corresponds to the hardware feature that the DCU thread bundle contains 64 threads, thereby making full use of hardware resources to improve computing efficiency.

12. The reverse time migration parallel computing method based on DCU-CPU hybrid architecture according to claim 11, characterized in that: In step 36, after the DCU completes the calculation, it transmits the result to the CPU and updates the result to the calculation result temporary file.

13. The reverse time migration parallel computing method based on DCU-CPU hybrid architecture according to claim 12, characterized in that: In step 36, the calculation result temporary file includes one or more of common imaging point gathers, angle gathers and stacked imaging results.

14. The reverse time migration parallel computing method based on DCU-CPU hybrid architecture according to claim 1, characterized in that: In step 4, after all seismic data are calculated, the CPU merges all temporary calculation result files and outputs the final imaging result; the content of the final imaging result corresponds to the temporary calculation result file, including one or more of common imaging point gathers, angle gathers and stacked imaging results.

Citation Information

Patent Citations

  • An edge computing architecture for caching deep learning

    CN112732591B

  • Multi-dimensional function optimization acceleration method based on artificial bee colony algorithm

    CN114356526A

  • Calculation method for sparse matrix vector multiplication memory access optimization

    CN114491402A

  • File processing method and device, electronic equipment and storage medium

    CN114895921A