Reverse Time Migration (RTM) is a powerful seismic imaging approach, widely used for migrating areas of complex structures of steep-dips and subsalt regions, despite its high computational cost. Advancing wave-field in time represents the main cost of the RTM as it is usually done by using Finite Difference (FD) to solve the wave-equation. Accuracy of the solution is subject to the approximation of the FD in both time and space.
Theoretically, waves propagate their extends to infinity or continue until vanishing. Unfortunately, this is not applicable in modelling a particular region since we truncate model to a computational grid modelling a region of interest. Absorbing all incoming energy at the boundaries of the computational grid mimics a real-life infinite media. Many approaches attempt to mimic different kinds of absorbing boundary conditions (ABC) e.g. Sponge, PML, random boundaries, etc. The objective of this study is to find the best compromise between geophysical and computational standpoint, and find the best quality of the attenuation with a minimum number of additional grid points.
We review 2 RTM implementations; the first one is using the standard approach (2 propagation with in-memory snapshots of the full wave-field with IPP compression) covering Sponge and CPML boundary conditions, while the second implementation uses random velocity boundaries that almost avoids IO but involves an extra propagation. Thereof we can balance the number of grid points in the damping area to find the best combination with respect to the computational efficiency of the RTM kernels.
Boundary Conditions for Seismic Imaging: Computational and Geophysical Points of View
1. Essam Algizawy, Amr Nasr, Ingy Mounir, Khaled Elamrawi, Brightskies Technologies
P. Thierry, Intel Corporation.
Saudi HPC conference
April 3nd , 2019
Boundary Conditions for Seismic Imaging: The Computer and
Geophysical Points of View
2. Agenda
⢠Seismic imaging (real) quick introduction
⢠Boundary condition
⢠Geophysical point of view
⢠Computer point of view
⢠Conclusion.
Seismic acquisition
Depthkm.
Distance km.
Seismic Imaging
3. 3
Previously in âSeismic Imaging @ Brightskiesâ
3 propagations without IO (random boundaries) is the fastest but Fast local storage as 3D
NAND with compression is competitive, especially compared to large memory solutions.
Kernels
4. 4
Objectives of this boundary conditions analysis
Find the best compromise between Geophysical and Computational standpoints :
⢠Quality of the attenuation with a minimum number of additional grid points
⢠Efficiency of the chosen algorithm (% of peak) compared to inner part
Here we consider both
⢠âphysical attenuationâ as dispersion in Random velocity boundaries
⢠âartificial attenuationâ as damping in Absorbing boundaries or Perfectly matching layer
We will be using both a homogeneous velocity model and the BP model (Billette et al. 98).
All calculations are done on Intel 2-socket server (Skylake micro-u, 40 cores @ 2.5 GHz). Intel compiler 2019u3.
2D RTM implementation solving the acoustic isotropic 2nd order wave equation by finite differences
(16th in space, 2nd in time)
5. 5
Our 2 models
Homogeneous model:
dx,dy = 12.5 meters dt=0.6ms nx, ny = 5455, 1931 (42 MB)
BP 2004 model:
dx,dy = 12.5 meters dt=0.6ms nx, ny = 5455, 1931 (42 MB)
Stacking Area to push the effect of
the boundaries.
(800 grid points with 100 Receivers)
2500m/s
4700m/s
Homogeneous model to validate the implementations and BP model to face more realistic phenomena
6. Agenda
⢠Seismic imaging (real) quick introduction.
⢠The boundary condition
⢠Geophysical point of view
⢠Computer point of view
⢠Conclusion.
7. 7
What do we call boundary condition
Video 2 with
boundaries
Video 1 without
boundaries
Seismic imaging using RTM is based on wave propagation (cross correlation of a forward
simulated Source wavefield and of a back propagated Seismic data)
Because Computer memory is limited the subsurface model has artificial boundaries
which generate unwanted wave reflection. We (just) need to cancel those artificial
reflections !
8. 8
Absorbing boundary conditions
⢠Many formulations for Sponges
⢠Damping energy exponentially
⢠Not very efficient in suppressing the edge reflection (a lot of tuning required)
⢠Random boundaries
⢠Simple but highly depend on the randomization of velocities
⢠Ideally, no constructive summation of reflected waves
⢠PML (Perfectly Matching Layer) for Maxwell's equations in electromagnetism
⢠Boundary layer placed at the edges of model having a particular value of damping coefficient
⢠Due to the damping, as a wave enters PML, starts to attenuate and decay exponentially
⢠Wave amplitude will become infinitely small as it reaches back to the grid after reflecting from the boundary
⢠PML Capable of handling waves with grazing incidence
9. How far could we reasonably go
- 2 socket server. Skylake micro architecture
- 40 cores. No turbo, No hyper threading
Interesting relation between number of points, cost and attenuation. (going after 20+ points is non sense)
10. 10
Wave attenuations with 20 points ABC - No AGC applied
Those slides are mostly to show that it works without bug
Add Random if you have it => 3 figures
Sponge Random CPML
This movie illustrates the quality of the methods but NOT their respective speeds !
11. Agenda
⢠Seismic waves (real) quick introduction.
⢠The boundary condition
⢠Geophysical point of view
⢠Computer point of view
⢠Conclusion.
12. Energy damping CPML and BP model
Norm of the wavefield in the inner part as the function of the propagation time steps.
After 16 points in the boundary zone , adding more points does not improve the wave attenuation
13. Energy damping Comparison (after 6800 time steps)
Sponge Random CPML
Clear advantage for CPML starting very early. Choosing the best Random velocities remains tricky.
Sponges do an average job and would need much more points
BP model
14. Energy damping comparison (16 boundary points)
Closer view at energy attenuation using 16 boundaries points for the 3 implementations
BP model
15. Agenda
⢠Seismic waves (real) quick introduction.
⢠The boundary condition
⢠Geophysical point of view
⢠Computer point of view
⢠Conclusion.
16. 16
Results
Best configuration for Sponges (20 boundary points)
For/Backward timing include 2nd order boundary propagation
Total migration time includes IO time.
Faster with Sponges as CPML has auxiliary arrays that
negatively affect caches.
Backward + Reverse times
(one more propagation
with random boundaries)
No IO nor boundary overhead
when using Random velocities
18. 18
Conclusion
⢠CPML is the best for geophysical standpoint even if there is a cost to pay
⢠Careful implementation must be done to avoid killing vectorization
⢠Over 16 boundary points adds significant computation time (might reach prop time)
⢠Sponge is probably the easiest but would need a lot of point to be geophysical acceptable
⢠Large boundaries ď reasonable results at negligible computation cost
⢠>100 boundary points is not far from <8 boundary points CPML
⢠Random is tricky to tune but is the only one âphysicalâ attenuating the wave compare to the 2
others
⢠Accuracy of the randomization determine the dispersion
⢠All remain valid for 3D propagation (acoustic isotropic)
22. 22
Wave attenuations with 20 points ABC - AGC applied
Those slides are mostly to show that it works without bug
Add Random if you have it => 3 figures
Sponge Random CPML
23. 23
Wave attenuations with 20 points ABC - AGC applied
Those slides are mostly to show that it works without bug
Add Random if you have it => 3 figures
Sponge Random CPML
24. 24
Absorbing boundary conditions(cont.)
⢠In 1994 Berenger published his work introducing PML ABC for Maxwell's equations in
electromagnetism
⢠Boundary layer placed at edges of model having a particular damping coefficient
⢠Due to the damping, as a wave enters PML, starts to attenuate and decay exponentially
⢠Wave amplitude will become infinitely small as it reaches back to the grid after reflecting
from the boundary
⢠A lot of work based on this work; (local/global) splitting PML (SPML) , non-split PML
(NSPML), non-split convolutional PML (CPML)
⢠PML Capable of handling waves with grazing incidence
⢠In our implementation, we considered the CMPL ď complex frequency-shifted stretching
function
25. 25
CPML for acoustic wavefields
⢠Non-split convolutional field PML (CPML)
⢠Using the stretched coordinates, we can transform any equation to our stretched
equation which will apply PML
26. 26
Results
Best configuration for Sponges (20 boundary points)
For/Backward timing include 2nd order boundary portion propagation
Total migration time includes IO time.
Sponge shot time can be much better compared CPML
since data allocated for auxiliary variables negatively
affect cachesBackward + Reverse times
(one more propagation
with random boundaries) No IO nor boundary overhead
when using Random velocities
Editor's Notes
The quick message here is to state what code we have and that we already worked on snapshots, compression, etc ..
Essam: I could not understand what do you mean by âThere is not reason FOR Forward and back ward to be so HIGH
â?
Phil : you change the timing . Previously the Froward or backward were clearly including IO.
Now the sum looks okay
This one is to show that we can not use infinite number of points
At least in term of computing !
But this was interesting to see if extending the number of point really helps or not
Even if this is stupid
Note that when presenting you have to explain why there is a Bump before 8K
Note that you may underline it when you show the video
I change the horizontal axis label on this one. This is time steps . Not [msec] TO CHANGE ON THE NEXT 2 figs
I added the video to see the attenuation , but I m not sure the video is going up to 20 000 time steps
Essam: for 13k timesteps only
At 16 points for the 3 implementation: you may show
the elapsed time partition
The total Gpts /sec
A roofline
Or redo this one with also the ratio âinner point / boundary point)
And the efficiency for each and the average wave attenuation
At 16 points for the 3 implementation: you may show
the elapsed time partition
The total Gpts /sec
A roofline
Or redo this one with also the ratio âinner point / boundary point)
And the efficiency for each and the average wave attenuation